搜索

3.9. 为 Ansible 启用免密码 SSH

download PDF

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

注意

如果使用基于 Cockpit Web 的界面安装 Red Hat Ceph Storage,则不需要这个过程。这是因为 Cockpit Ceph 安装程序会生成自己的 SSH 密钥。有关将 Cockpit SSH 密钥复制到集群中的所有节点的说明,请参见使用 Cockpit Web 界面安装 Red Hat Ceph Storage 一章。

先决条件

流程

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

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

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

      示例

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

  3. 创建用户的 SSH config 文件 :

    [ansible@admin ~]$ touch ~/.ssh/config
  4. 打开并编辑 config 文件。为存储集群中每个节点的 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

      重要

      通过配置 ~/.ssh/config 文件,您不必在每次执行 ansible-playbook 命令时指定 -u USER_NAME 选项。

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

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

其它资源

返回要求清单

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.