Ansible学习踩坑

终于到了需要上Ansible的时候了,之前由于需求不强烈没有做,从今天起陆续记录学习。

常用ansible命令

查看组中的机器

ansible <group_name> list

查看内存使用(shell模块)

ansible <host_name/group_name> -m command -a 'free -h'

查看主机磁盘容量(command模块)

ansible <host_name/group_name> -m shell -a 'df -h'

报错解决记录

ansible all -m ping 失败

执行上述命令,是检测被主机的存活状态时,出现如下报错信息:

"msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)."

执行下面的命令显示更详细 的信息

ansible -m ping all -vvv

结果中有如下

<websrv.internal.org> ESTABLISH SSH CONNECTION FOR USER: None

ansible连接被管主机(此处是websrv.internal.org)没有使用明确的用户名。因此,在ansible的配置文件/etc/ansible/hosts中修改如下:

websrv.internal.org ansible_user=test

此处的'test‘是websrv.internal.org主机上的可登录用户,如果配置了公钥,则可以成功完成上述主机探测命令。回显如下:

websrv.internal.org | SUCCESS => {
"changed": false, 
"ping": "pong"
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐