ansible管理方式
ansible批量管理主机的方式主要有两种:传统的输入ssh密码验证 和 密钥验证
配置好ansible的配置文件,添加被管理机器的ip地址或者主机名
cp /etc/ansible/hosts{,.ori}
,表示把/etc/ansible的路径给取出来
这条语句相当于 cp /etc/ansible/hosts /etc/ansible/hosts.ori
2、添加ansible需要管理的机器地址,添加如下信息
vim /etc/ansible/hosts
[yu]
192.168.178.121
192.168.178.122
ssh密码认证方式管理机器
ansible是直接利用linux本地的ssh服务,以及一些远程的ssh操作,一般情况下客户端的ssh服务默认都是开启的,无需额外管理
1、在my_linux机器上执行如下命令
-m 指定功能模块,默认就是command模块
-a 告诉模块需要执行的参数
-k 询问密码验证
-u 指定运行的用户
在my_linux机器上,告诉其他被管理的机器,你要执行什么命令,以及用什么用户去执行
ansible yu -m command -a 'hostname' -k -u root
2、如上操作,一般默认情况下会有错误提示,需要执行如下动作
在主机Host Key检查激活情况下,sshpass不支持该用法,得再~/.ssh/known_hosts文件中,添加客户端机器的指纹密钥
vim ~/.ssh/known_hosts
或者手动ssh对主机进行一次连接,即可使用ansible,即可使用ansible命令操作了
ssh root@192.168.178.121
[root@yuweijie ansible]# ssh root@192.168.178.121
The authenticity of host '192.168.178.121 (192.168.178.121)' can't be established.
ECDSA key fingerprint is SHA256:Xp9lq8/NCVNn1egeCt4oOPMZS14IGIOh/7S6zIhcJBo.
ECDSA key fingerprint is MD5:2a:47:e8:b7:cb:e0:a0:db:4e:0e:47:46:5c:d9:0a:a1.
Are you sure you want to continue connecting (yes/no)?
[root@yuweijie ansible]# cat ~/.ssh/known_hosts
192.168.178.121 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBD7UX7PPVo5E03BSqNAJxNeQl0IkXtJiOWNhbORXyptt1pMlY7K1Z9FUk+WycRFxWhUqPIhQJ2cUlp5yoiqCYmU=
3、此时可以再次执行ansible命令
网友评论