Ansible配置100個新IP節點該怎麼辦?

場景:Ansible配置100個IP節點該怎麼辦?

Ansible服務器:192.168.31.10
新節點:192.168.31.11-192.168.31.110

批量推送節點公鑰

1.生成公鑰

shh-keygen  #全默認 無密碼

2.使用ssh-copy-id 以及sshpass工具

只要解決兩個問題:輸入yes以及密碼

vim ~/.ssh/config  

      StrictHostKeyChecking=no
      UserKnownHostsFile=/dev/null
yum -y install sshpass

接下來就能通過一下命令推送公鑰了~

[root@qian1 .ssh]# sshpass -p '123456' ssh-copy-id root@192.168.31.20

3.運行下面的腳本就能批量的將公鑰複製到遠程主機中

#用戶名密碼相同時腳本
  1 #!/bin/bash
  2 for i in `seq 11 110`
  3 do
  4  sshpass -p'123456' ssh-copy-id root@192.168.31.$i
  5 done
~          
#密碼不同時
1.vim remote-hosts #記錄hosts 服務器名 密碼 ip
server1  192.168.31.20  123456
server2  192.168.31.21  02468x

2.編寫腳本


  1 #!/bin/bash
  2 # push public key to remote hosts
  3 # creat a file(remote-hosts) for writing node's information
  4 #
  5 for i in `seq 2 100`
  6  do
  7 ip=$(awk -v va=$i 'NR==va{print $2}' /root/remote-hosts)
  8 password=$(awk -v va=$i 'NR==va{print $3}' /root/remote-hosts)
  9 echo $ip
 10 sshpass -p$password ssh-copy-id -i root@$ip
 11 done
~         

配置hosts文件

vim /etc/ansible/hosts
#添加
[test]
192.168.31.[011:110]

3.驗證
ansible -m ping all

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章