本次安装基于CentOS7系统环境、Python2.7.5、root用户

ansible server: 192.168.1.64
host-1: 192.168.1.118

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

1. 临时关闭selinux
  setenforce 0 // 临时关闭selinux
  sed -i 's/\(SELINUX=\).*/\1disabled/' /etc/selinux/config //永久关闭

2. 安装
  yum -y install epel-release ansible

3. 添加管理主机
  /etc/ansible/hosts //IP地址追加到文件中,每行一个IP
  为方便管理,最好是分类,比如:
  [web]
  192.168.1.118

  [db]
  192.168.1.x

4. 配置免密码SSH登陆
  1. 在主控server上生成ssh密钥对:
    ssh-keygen -t rsa //一路回车即可,完成后会在$HOME/.ssh目录下生成id_rsa和id_rsa.pub私钥和公钥两个文件


    如果在生成密钥的时候设置了密码,ansible每次执行命令的时候,都会提示输入密钥密码,可通过下面的命令记住密码:
    ssh-agent bsh
    ssh-add ~/.ssh/id_rsa

  2. 将公钥拷贝到 host-1 的 .ssh/authorized_keys文件中
    ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.118
    // ssh-copy-id 命令会自动将id_rsa.pub文件的内容追加到远程主机root用户下.ssh/authorized_keys文件中

    如果服务器比较多,可以通过sshpass 命令避免输入密码操作(yum -y install sshpass):
    sshpass -p '密码' ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@192.168.1.x
    sshpass -p '密码' ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@192.168.1.x
    sshpass -p '密码' ssh-copy-id -i ~/.ssh/id_rsa.pub -o StrictHostKeyChecking=no root@192.168.1.x

5. ansible配置
  /etc/ansible/ansible.cfg
  1. 禁用每次执行ansbile命令检查ssh key host
    host_key_checking = False
  2. 开启日志记录
    log_path = /var/log/ansible.log
  3. ansible连接加速配置
    accelerate_port = 10000
    accelerate_multi_key = yes
  4. 禁掉友情提示
    deprecation_warnings = False
6. 测试
  ansible web -m command -a 'df -lh'

至此安装配置完成!

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄