搜索

2.11. 为 Ansible 启用无密码 SSH

download PDF

在 Ansible 管理节点上生成 SSH 密钥对,并将公钥分发到存储集群中的每个节点,以便 Ansible 可以在不提示输入密码的情况下访问节点。

先决条件

流程

从 Ansible 管理节点,并以 Ansible 用户身份执行下列步骤。

  1. 生成 SSH 密钥对,接受默认文件名并将密语留空:

    [user@admin ~]$ ssh-keygen
  2. 将公钥复制到存储集群中的所有节点:

    ssh-copy-id $USER_NAME@$HOST_NAME
    替换
    • $USER_NAME,它具有 Ansible 用户的新用户名。
    • $HOST_NAME,其主机名为 Ceph 节点。

    示例

    [user@admin ~]$ ssh-copy-id admin@ceph-mon01

  3. 创建并编辑 ~/.ssh/config 文件。

    重要

    通过创建并编辑 ~/.ssh/config 文件,您不必在每次执行 ansible-playbook 命令时指定 -u $USER_NAME 选项。

    1. 创建 SSH 配置文件

      [user@admin ~]$ touch ~/.ssh/config
    2. 打开 配置文件 进行编辑。为存储集群中的每个节点设置 HostnameUser 选项:

      Host node1
         Hostname $HOST_NAME
         User $USER_NAME
      Host node2
         Hostname $HOST_NAME
         User $USER_NAME
      ...
      替换
      • $HOST_NAME,其主机名为 Ceph 节点。
      • $USER_NAME,它具有 Ansible 用户的新用户名。

      示例

      Host node1
         Hostname monitor
         User admin
      Host node2
         Hostname osd
         User admin
      Host node3
         Hostname gateway
         User admin

  4. ~/.ssh/config 文件设置正确的文件权限:

    [admin@admin ~]$ chmod 600 ~/.ssh/config

其它资源

  • ssh_config(5) 手册页
  • Red Hat Enterprise Linux 7 系统管理员指南中的 OpenSSH 章节

返回要求清单

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.