排第四偶家 发表于 2018-7-30 09:22:47

ansible使用过程中遇到的问题

  很早以前使用过ansible工具,但是后来的后来就一直没有在使用了。时间久了就慢慢淡忘了。。
  五一,想再次温习下。
  下面这么是以前使用过程中遇见的问题,也不知是自己的整理的笔记还是在别的网上找的,就这样吧。
  FAQ
1、出现Error: ansible requires a json module, none found!  
SSH password:
  
192.168.24.15 | FAILED >> {
  
   "failed": true,
  
   "msg": "Error: ansible requires a json module, nonefound!",
  
   "parsed": false
  
}
  解决:python版本过低,要不升级python要不就安装python-simplejson
  2、安装完成后连接客户端服务器报错:
FAILED => Using a SSH password insteadof a key is not possible because Host Key checking is enabled and sshpass doesnot support this.Please add this host'sfingerprint to your known_hosts file to manage this host.  解决:在ansible 服务器上使用ssh 登陆下/etc/ansible/hosts 里面配置的服务器。然后再次使用ansible 去管理就不会报上面的错误了!但这样大批量登陆就麻烦来。因为默认ansible是使用key验证的,如果使用密码登陆的服务器,使用ansible的话,要不修改ansible.cfg配置文件的ask_pass = True给取消注释,要不就在运行命令时候加上-k,这个意思是-k, --ask-pass ask for SSH password。再修改:host_key_checking= False即可
  3、如果客户端不在know_hosts里将会报错
paramiko: The authenticity of host '192.168.24.15'can't be established.  
The ssh-rsa key fingerprint is397c139fd4b0d763fcffaee346a4bf6b.
  
Are you sure you want to continueconnecting (yes/no)?
  解决:需要修改ansible.cfg的#host_key_checking= False取消注释
  4、
出现FAILED => FAILED: not a valid DSA private key file  解决:需要你在最后添加参数-k
  5、openssh升级后无法登录报错
PAM unable todlopen(/lib64/security/pam_stack.so): /lib64/security/pam_stack.so: cannot openshared object  
file: No such file or directory
  解决:sshrpm 升级后会修改/etc/pam.d/sshd 文件。需要升级前备份此文件最后还原即可登录。
  6、pip安装完成后,运行ansible报错:
File "/usr/lib64/python2.6/subprocess.py",line 642, in __init__ errread, errwrite)  解决:安装:yum install openssh-clients
  7、第一次系统初始化运行生成本机ansible用户key时报错
failed: =>{"checksum": "f5f2f20fc0774be961fffb951a50023e31abe920","failed": true}  
msg: Aborting, target uses selinux but pythonbindings (libselinux-python) aren't installed!
  
FATAL: all hosts have already failed –aborting
  
解决:# yuminstall libselinux-python -y
  8、第一次远程连接服务器可能会报如下错误:
10.1.6.76 | FAILED => Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this.Please add this host's fingerprint to your known_hosts file to manage this host.  解决方法:直接使用ssh 远程连接下服务器或者修改/etc/ansible/ansible.cfg,将#host_key_checking = False 修改为:
  host_key_checking=False
页: [1]
查看完整版本: ansible使用过程中遇到的问题