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

就可以了

相关推荐
梅孔立12 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
henry10101015 天前
Ansible自动化运维全攻略(AI生成)
linux·运维·python·ansible·devops
only_Klein18 天前
Ansible变量详解
运维·自动化·ansible
only_Klein18 天前
Ansible Roles 详解
自动化·ansible·role
only_Klein18 天前
Ansible 条件判断与流程控制详解
自动化·ansible
axPpcfNN19 天前
可直接编译运行 c#解析dxf可读取圆直线弧多段线源码-无封装缩放拖拽 可读取坐标信息 支持多...
ansible
Maggie_ssss_supp20 天前
Linux-ansible自动化运维
运维·自动化·ansible
迎仔20 天前
10-算力中心运维三剑客:Ansible + Jenkins + K8s 高效实战
运维·kubernetes·ansible·jenkins
识途老码22 天前
25.ansible的hostname模块
ansible·hostname
Cloud Traveler25 天前
Ansible+cpolar:NAS 远程自动化运维方案
ansible