在DevOps时代,使用自动化运维工具来完成一些日常简单、重复的工作,是运维人员必须要掌握的一门技能。今天,我带大家来简单入门超级强大的Ansible的一个ping模块的使用。
【场景1】系统运维人员A每天早上上班,要测试几十台Linux服务器有没有宕机,但是手上又没有图形化的自动化运维平台可以使用。
第1步 配置服务器组myvms(这里可以配置很多台主机,这边测试,就配置了一台虚拟机)
# vi /etc/ansible/hosts
[myvms]
192.168.223.200
第2步 在ansible服务端创建免密登录的公钥和私钥
# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:N+tfsx2VIRc6grSPp7Vb5C7IbGEYhyI1nuB9gWdk8z4 root@ansible-awx
The key's randomart image is:
+---[RSA 2048]----+
| o+ . . |
| . +.++ o . .|
| . = = o+ . + o |
| o = +..o . + o|
| . o SEo+ . ..|
| . +=o+ .|
| +.+. oo. |
| * .+. +.|
| . .oo.. .|
+----[SHA256]-----+
# cd ~/.ssh && ls
id_rsa id_rsa.pub
第3步 将公钥复制到目标服务器
# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.223.200
第4步 在目标端添加ansible服务端的公钥
# cd ~/.ssh && cat ./id_rsa.pub >> authorized_keys
第5步 测试ansible ping模块
# ansible myvms -m ping
192.168.223.200 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false,
"ping": "pong"
}