当前位置: 首页 > news >正文

知名商城网站建设报价成品源码网站

知名商城网站建设报价,成品源码网站,工业设计网站排名,做情侣网站ansible报错解决:Failed to import the required Python library (netaddr) 问题情况 今天我在做实验的时候出现了一个问题,以下是我的playbook,这个playbook是验证变量ip_address是否是一个合法的IP地址,并打印相应的信息的一个…

ansible报错解决:Failed to import the required Python library (netaddr)

问题情况

今天我在做实验的时候出现了一个问题,以下是我的playbook,这个playbook是验证变量ip_address是否是一个合法的IP地址,并打印相应的信息的一个剧本

[root@localhost ansible]# vim test6.yml 
- hosts: testvars:ip_address: "192.168.2455.1"tasks:- name: "判断{{ip_address}}是否为合法ip"debug:msg: "{{ ip_address | ipaddr}}"
# 执行结果
[root@localhost ansible]# ansible-playbook test6.yml PLAY [test] *************************************************************************************************************************TASK [Gathering Facts] **************************************************************************************************************
ok: [192.168.200.20]TASK [判断192.168.2455.1是否为合法ip] *********************************************************************************************
fatal: [192.168.200.20]: FAILED! => {"msg": "template error while templating string: Could not load \"ipaddr\": 'Invalid plugin FQCN (ansible.netcommon.ipaddr): unable to locate collection ansible.netcommon'. String: {{ ip_address | ipaddr}}. Could not load \"ipaddr\": 'Invalid plugin FQCN (ansible.netcommon.ipaddr): unable to locate collection ansible.netcommon'"}PLAY RECAP **************************************************************************************************************************
192.168.200.20             : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0 

这里报错没有识别ipaddr这个集合,并告诉你没有安装ansible.netcommon.ipaddr集合,这时候我们安装集合就好了对吧

# 安装集合
[root@localhost ansible]# ansible-galaxy collection install /root/ansible-netcommon-6.1.1.tar.gz 
Starting galaxy collection install process
Process install dependency map
Starting collection install process
Downloading https://galaxy.ansible.com/api/v3/plugin/ansible/content/published/collections/artifacts/ansible-utils-4.1.0.tar.gz to /root/.ansible/tmp/ansible-local-4770j3qwrbe5/tmptvw6n2g6/ansible-utils-4.1.0-_5mvcxlt
Installing 'ansible.netcommon:6.1.1' to '/root/ansible/mycollection/ansible_collections/ansible/netcommon'
ansible.netcommon:6.1.1 was installed successfully
Installing 'ansible.utils:4.1.0' to '/root/ansible/mycollection/ansible_collections/ansible/utils'
ansible.utils:4.1.0 was installed successfully
# 查看集合
[root@localhost ansible]# ansible-galaxy collection list
# 这里是我自己设置的集合路径,显示已经安装了对吧
# /root/ansible/mycollection/ansible_collections
Collection        Version
----------------- -------
ansible.netcommon 6.1.1  
ansible.utils     4.1.0  

再次执行这个playbook

[root@localhost ansible]# ansible-playbook test6.yml PLAY [test] *************************************************************************************************************************TASK [Gathering Facts] **************************************************************************************************************
ok: [192.168.200.20]TASK [Set the IP address192.168.2455.1] *********************************************************************************************
[DEPRECATION WARNING]: Use 'ansible.utils.ipaddr' module instead. This feature will be removed from ansible.netcommon in a release 
after 2024-01-01. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
fatal: [192.168.200.20]: FAILED! => {"msg": "Failed to import the required Python library (netaddr) on localhost.localdomain's Python /usr/bin/python3.11. Please read the module documentation and install it in the appropriate location. If the required library is installed, but Ansible is using the wrong Python interpreter, please consult the documentation on ansible_python_interpreter"}
# 这个时候他告诉我们没有netaddr这个python库
# 这里我们安装这个python库
# 也是我自己出错的点,你ansible使用的是哪个python版本
# 你就要使用哪个版本来安装netaddr这个python库才行
PLAY RECAP **************************************************************************************************************************
192.168.200.20             : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0   

解决问题

先查看ansible版本

[root@localhost ansible]# ansible --version
ansible [core 2.14.2]config file = /root/ansible/ansible.cfgconfigured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']ansible python module location = /usr/lib/python3.11/site-packages/ansibleansible collection location = /root/ansible/mycollection:/root/ansible/{{ ANSIBLE_HOME ~ "/collections:/usr/share/ansible/collections" }}executable location = /usr/bin/ansiblepython version = 3.11.2 (main, Feb 16 2023, 00:00:00) [GCC 11.3.1 20221121 (Red Hat 11.3.1-4)] (/usr/bin/python3.11)jinja version = 3.1.2libyaml = True
# 用的python3.11对吧
# 使用python3.11安装netaddr

安装netaddr这个python库

# 安装pip3.11
[root@localhost ansible]# yum install -y python3.11-pip.noarch 
# 创建python虚拟环境
python3.11 -m venv python_env
source python_env/bin/activate
(python_env) [root@localhost ansible]# pip3.11 install netaddr
Collecting netaddrUsing cached netaddr-1.2.1-py3-none-any.whl (2.3 MB)
Installing collected packages: netaddr
Successfully installed netaddr-1.2.1[notice] A new release of pip available: 22.3.1 -> 24.0
[notice] To update, run: pip install --upgrade pip

执行成功

(python_env) [root@localhost ansible]# ansible-playbook test6.yml PLAY [test] *************************************************************************************************************************TASK [Gathering Facts] **************************************************************************************************************
ok: [192.168.200.20]TASK [判断192.168.2455.1是否为合法ip] ***********************************************************************************************
[DEPRECATION WARNING]: Use 'ansible.utils.ipaddr' module instead. This feature will be removed from ansible.netcommon in a release 
after 2024-01-01. Deprecation warnings can be disabled by setting deprecation_warnings=False in ansible.cfg.
# 这里告诉我们要使用完整的模块名字
ok: [192.168.200.20] => {"msg": false
}PLAY RECAP **************************************************************************************************************************
192.168.200.20             : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
http://www.yayakq.cn/news/629495/

相关文章:

  • 建设一个网站需要注意哪些要求百度关键词热搜
  • 方便做简笔画的网站或软件网站要有可留言功能 怎么做
  • 整站优化包年网站维护很难吗
  • 做服务器的网站都有哪些购买一个网站多少钱
  • 网站建设多少钱一个站电子商务网站建设策划方案
  • 网站备案企业用个人来备案可以用吗南通个人网站制作
  • 建设部网站资质公示网站咨询弹窗怎么做
  • 有关手机网站建设磁力棒
  • 网站每天一条推送怎么做的石家庄手机网站开发
  • 网站开发期间账务处理建站平台与建站系统
  • 专业制作网站图片网站建设规划图
  • 企业产品展示型网站案例小程序开发有什么好处
  • 大庆市建设局网站外贸网站测速
  • 网站建设 百度百科网站地图分析工具
  • 营口东站营销网站建设画册排版设计
  • wordpress英文主题变中文版厦门seo网站推广
  • 最好的网站管理系统宁波企业网站排名优化
  • 做亚马逊有看数据的网站吗南京服装网站建设
  • 有自媒体谁还做网站青岛主流网站
  • 仿站定制模板建站dedecms做国外网站
  • 网站建设图标素材免费网站域名查询网址
  • 提供商城网站建设服务器搭建云电脑
  • 找做网站的公司好网站怎么屏蔽ip访问
  • 维护网站多少钱网站开发融资计划
  • 网址在线生成短链接新手学做网站优化
  • wordpress网站建设中网页设计尺寸快捷键
  • 北京轨道交通建设管理有限公司网站40平米服装店装修效果图
  • 台州市建设局招聘网站学生作业做网站需要什么
  • 建立网站的步骤网站建设课后心得
  • 贾汪徐州网站开发东莞网页设计与制作教程