码迷,mamicode.com
首页 > 其他好文 > 详细

ansible的安装

时间:2018-06-23 15:43:51      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:x86   节点   gen   python版本   public   shell   source   开始   sshpass   

一、安装ansible

  1、 python版本需要2.6以上,不过通过centos7都会默认安装上python2.7.5,查看方法:python -V

  2、 添加yum 源

    a、 vim /etc/yum.repos.d/ansible

    b、 添加如下内容:

      [epel]

      name = all source for ansible

      baseurl = https://mirrors.aliyun.com/epel/7/x86_64/

      enabled = 1

      gpgcheck = 0

 

      [ansible]

      name = all source for ansible

      baseurl = http://mirrors.aliyun.com/centos/7.3.1611/os/x86_64/

      enabled = 1

      gpgcheck = 0

  3、 yum clean all

  4、 安装ansible:yum install ansible -y

二、配置ansible

  1、 使用ansible前需实现ansible服务器对另外两台机的ssh无密码访问,操作如下:

    a、 输入命令:ssh-keygen,一直按回车,直至完成操作;

    b、 命令:ssh-copy-id root@10.0.0.21 ,然后输入连接密码即可实现无密码访问,另外一台机的设置方式一样,不再赘述。

  2、 添加ansible客户机组,命令:vim /etc/ansible/hosts,在最后面添加如下内容:

    [group1]

    192.168.1.10

    192.168.1.23

出现如下问题:

在ansible安装完毕后一般需要以SSH的方式连接到需要进行管理的目标主机,一开始遇到了如下问题:

192.168.1.10 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).\r\n",
    "unreachable": true
}
192.168.1.23 | UNREACHABLE! => {
    "changed": false,
    "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).\r\n",
    "unreachable": true

 

1:管理节点生成SSH-KEY

#ssh-keygen

成功后在~/.ssh/路径下将生成ssh密钥文件:id_rsa及id_rsa.pub

2:添加目标节点的SSH认证信息

#ssh-copy-id root@目标节点IP

这里root是在目标节点上登录的用户,@符号后面接目标节点IP即可,之后会提示输入目标节点root用户密码,输入即可。

添加认证信息后,目标节点主机的~/.ssh/目录下将会出现一个authorized_keys文件,里面包含了ansible管理节点的公钥信息,可以检查一下是否存在。

3:在确定目标主机的SSH认证信息都已正确添加且目标主机的~/.ssh/目录都存在管理节点的公钥信息后,再执行之前出错的ansible ping指令:

对之前未连接的主机进行连结时报错如下:

[root@puppet ~]# ansible webservers -m command -a ‘ls ~‘ -k
SSH password:
120.76.25.191 | FAILED | rc=0 >>
Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this.  Please add this host‘s fingerprint to your known_hosts file to manage this host.

解决步骤:

修改ansible.cfg文件

vi /etc/ansible/ansible.cfg

找到以下行,让host_key_checking=False这行生效

# uncomment this to disable SSH key host checking
host_key_checking = False

三、使用ansible

  1、 在另外两台机上执行ping命令:ansible group1 -m ping

  2、 复制本机文件到组group1:ansible group1 -m copy -a “src=/etc/hosts dest=/etc/”

  3、 帮group1安装软件:ansible group1 -m shell -a “yum install wget -y”

ansible的安装

标签:x86   节点   gen   python版本   public   shell   source   开始   sshpass   

原文地址:https://www.cnblogs.com/Robi-9662/p/9217190.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!