解决ansible批量加入新IP涉及known_hosts报错的问题

我们把一批新的IP加入到ansible的hosts文件,比如/etc/ansible/hosts,往往会有这样的提示,

因为本机的~/.ssh/known_hosts文件中并有fingerprint key串,使用ssh连接目标主机时,一般会提示是否将key字符串加入到~/.ssh/known_hosts文件中,若输入yes,则本机以后再次使用ssh连接目标主机时,不会弹出确认。于是,我们得一个个ssh目标主机,输入一个个yes,非常繁琐,这里提供一个批量操作的脚本。

bash 复制代码
yum -y install expect

vim group.exp

bash 复制代码
#!/usr/bin/expect
set timeout 2
spawn ssh -p 22 user@[lindex $argv 0]
expect {
  "sure" { send "yes\r"; exp_continue }
  "*#" { send "\r" }
}

然后 chmod a+x group.exp

bash 复制代码
for ip in `cat iplist`;do ./group.exp $ip;done

就可以了

相关推荐
ylmzfun2 小时前
基于Ansible的自动化运维实战:从入门到企业级应用
运维·架构·ansible
码界奇点10 小时前
基于Django与Ansible的智能运维管理系统设计与实现
运维·python·django·毕业设计·ansible·源代码管理
乾元2 天前
AI + Jinja2/Ansible:从自然语义到可执行 Playbook 的完整流水线(工程级深度)
运维·网络·人工智能·网络协议·华为·自动化·ansible
聊天QQ:688238864 天前
光伏MPPT仿真:布谷鸟算法的奇妙结合
ansible
weixin_46685 天前
Ansible Playbook应用
网络·ansible
孪生质数-15 天前
Ansible基础入门
服务器·自动化·ansible·openstack
Empty_77715 天前
Ansible变量
服务器·github·ansible
哲Zheᗜe༘15 天前
学习Ansible Playbook 核心语法
网络·学习·ansible
凤凰战士芭比Q16 天前
Ansible剧本、变量、判断、循环
ansible
凤凰战士芭比Q16 天前
Ansible(安装、配置文件、命令行、常用模块)
linux·ansible