您的位置:首页 > 移动开发 > Objective-C

ansible安装遇到"AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3'"的问题

2017-12-21 19:17 1151 查看
Ansible是时下比较流行的自动化运维工具,是用Python编写的。

我的系统是Ubuntu 16.04.3 LTS。

用以下命令安装:

$ sudo apt-get update

$ sudo apt-get install software-properties-common

$ sudo apt-add-repository ppa:ansible/ansible

$ sudo apt-get update

$ sudo apt-get install ansible

安装过程是非常顺利的。但在测试运行:

$sudo ansible all -m ping

时,却遇到了:

AttributeError: 'module' object has no attribute 'PROTOCOL_SSLv3'

的问题。在Overflow找到的解答,说这是urllib3 1.10前的版本造成的,但我的urllib是1.2版本。但Overflow上提供了强制升级requests的解决方案。

我查了以下已安装模块的版本:

python-apt (1.1.0b1)

python-dateutil (2.5.3)

python-debian (0.1.27)

python-editor (1.0)

pytz (2016.4)

pyxdg (0.25)

PyYAML (3.11)
requests (2.3.0)

scipy (0.17.0)

确实requests的版本是偏低的。首先卸载pyopenssl,然后:

pip install requests==2.6.0

然后重新安装pyopenssl。

再重新运行:

$sudo ansible all -m ping

显示:localhost | SUCCESS => {

"changed": false,

"ping": "pong"

}

问题解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐