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

就可以了

相关推荐
likeyou~coucou1 天前
自动化之ansible(二)
运维·自动化·ansible
明阳mark1 天前
Ansible 学习笔记
笔记·学习·ansible
DC_BLOG1 天前
Linux-Ansible模块进阶
linux·运维·服务器·ansible
DC_BLOG2 天前
Linux-Ansible命令
linux·运维·服务器·ansible
李匠20245 天前
云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-roles角色
学习·云计算·ansible
fenglei20207 天前
Ansible批量配置服务器免密登录步骤详解
运维·git·github·ansible
敖光 SRE8 天前
自动化运维之ansible快速入门
运维·自动化·ansible
大新新大浩浩8 天前
ceph部署-14版本(nautilus)-使用ceph-ansible部署实验记录
ceph·ansible
罗狮粉 9910 天前
AlmaLinux使用Ansible自动部署k8s集群
容器·kubernetes·ansible
Lz__Heng11 天前
Ansible 主机清单语法
ansible