ansible软件安装部署

(一)a ansible软件自动化环境架构规划(服务端:yum install -y ansible 客户端:无需任何安装操作)
  管理主机1台:
  10.0.0.61   m01
  受控主机3台:
  10.0.0.41   backup
  10.0.0.31   nfs01
  10.0.0.7    web01
  Linux系统 6.9
b ansible软件自动化部署条件
  建议基于ssh密钥方式建立远程连接
  a ssh密钥对创建(管理主机)
    ssh-keygen -t dsa
    影响免交互创建密钥对创建因素:
    1)需要指定私钥存放路径
       -f /root/.ssh/id_dsa
    2)需要进行私钥文件密码设定
       -N/-P  
       -N ""/-P ""

    免交互创建密钥对方法
sh-keygen -t dsa -f /root/.ssh/id_dsa -N ""
(二)分发公钥文件(管理主机进行分发)
    ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.31
    影响免交互批量分发密钥因素
    1)需要有确认连接过程,需要输入yes/no
       -o StrictHostKeyChecking=no(不要再进行询问我了)
        ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 172.16.1.31"

    2)需要解决密码问题
       sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub 172.16.1.31     注意:sshpass需要yum安装

        免交互发送公钥给客户端
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 172.16.1.31"       

    免交互批量分发公钥脚本:
    #!/bin/bash
    rm /root/.ssh/id_dsa
    ssh-keygen -t dsa -f /root/.ssh/id_dsa -N ""

    for ip in 31 41 7
    do
    sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no 172.16.1.$ip"
    done

(三) 检查是否可以进行基于密钥远程管理
ssh 172.16.1.31 uptime
免交互批量检查测试脚本
#!/bin/bash
for ip in 31 41 7
do
ssh 172.16.1.$ip uptime
done

  基于ssh口令方式建立远程连接(也可以)
  vim /etc/ansible/hosts
  [oldboy]
  172.16.1.7
  172.16.1.31 ansible_user=root ansible_password=123456
  172.16.1.41

  ansible 172.16.1.31 -m command -a "hostname" -k     --- 实现口令交互式远程管理
  SSH password: 
  172.16.1.31 | SUCCESS | rc=0 >>
  nfs01

ansible软件下载安装
  ansible管理主机软件安装:
  yum install -y ansible
  ansible受控主机软件安装:(可选)
  yum install -y libselinux-python

ansible软件受控主机添加配置
  cat /etc/ansible/hosts
  [oldboy]
  172.16.1.7
  172.16.1.31
  172.16.1.41

猜你喜欢

转载自blog.51cto.com/tangyong/2126839