ansible第一条命令中的疑难问题

没有接触过ansible,看的ansible中文教程,第一次看很多地方都不是很明白,整理一下第一条命令的配置过程。

  1. 安装ansible是在笔记本中安装的ubuntu16.04系统(物理机)设定为controller节点,可以完全参考安装教程,使用pip 或者apt-get install 进行安装,这一部分基本没有什么问题。
  2. 安装完成在新手上路章节配置是个重点:|
    教程中第一句话:
    现在你已经安装了Ansible,是时候从一些基本知识开始了.
     编辑(或创建)/etc/ansible/hosts 并在其中加入一个或多个远程系统.
    你的public SSH key必须在这些系统的``authorized_keys``中:

    其中节点设置文件就是/etc/ansible/下的  hosts文件,配置这个文件,将虚机的的ip添加到文件末尾

    其中[slave]是自己起的名称(就是一会ansible要管理的主机,可以随便取),下面的IP是另一台虚机(VM 起的ubunt系统,设定为slave节点)的IP地址,注意要在一个局域网内,能ping通。
  3. authorized_keys的生成
    首先在controller节点执行
    ssh-keygen

    会在~/.ssh/下生成公钥和私钥,然后将公钥id_rsa.pub拷贝到slave机器的root目录下面,执行如下命令:

    ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

    这个地方可能会失败,报没有权限的问题。这个时候需要先连接到slave节点,配置该节点允许ssh 远程root用户登录:

    cd /etc/ssh
    vim sshd_config
    将如下字段修改为yes,之前应该是with-out passw之类的
    PermitRootLogin yes
    
    然后service ssh reatart
    
    如果没有配置过root的密码,执行:
    sudo passwd root  
    输入root密码,习惯输入为root  root

    然后再执行: ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]。根据提示输入密码

  4. 拷贝完成后,可以连接到slave节点进行查看,在~/.ssh/目录下就会出现authorized_keys 文件(如果用户名用的user,那么在对应的目录下面也会有该文件)

  5. 到这,再去执行ansible slave -m ping 就可以出现如下结果:

  6. 后记
    其实报错不可以怕,错误粘贴出来,多搜索几次,总能找到答案。

猜你喜欢

转载自blog.csdn.net/q1138266752/article/details/83926549
今日推荐