解决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

就可以了

相关推荐
焄塰5 小时前
Ansible 管理变量和事实
学习·centos·ansible
IT成长日记6 小时前
【自动化运维神器Ansible】Playbook中的when条件判断:精细化控制任务执行
运维·自动化·ansible·playbook·when·条件判断
key_Go9 小时前
4.Ansible自动化之-部署文件到主机
ansible
key_Go20 小时前
7.Ansible自动化之-实施任务控制
python·ansible·numpy
yuxb733 天前
Ansible 基础到实操笔记
linux·笔记·ansible
IT成长日记4 天前
【自动化运维神器Ansible】playbook命令行变量定义全流程解析
运维·自动化·ansible·变量·命令行·playbook
vivo互联网技术5 天前
vivo Pulsar 万亿级消息处理实践(4)-Ansible运维部署
大数据·ansible·自动化运维·pulsar·消息处理·分布式消息中间件
朱小弟cs65 天前
Orange的运维学习日记--41.Ansible基础入门
linux·运维·学习·ci/cd·自动化·ansible·devops
IT成长日记5 天前
【自动化运维神器Ansible】playbook案例解析:Tags组件实现任务选择性执行
运维·自动化·ansible·playbook·tags