Ansible(2):安装、更新Ansible
学习自:Installing Ansible — Ansible Documentation
1、前言
Ansible是一种无代理自动化工具,只需要安装在某个单独的主机上(该主机称为控制节点Control Node)。通过控制节点,Ansible可以通过SSH、Powershell和其他众多的传输工具遥控管理整套机器或设备集群(这些集群称之为托管节点),这一过程只需要一个简单的命令行接口,不需要任何数据库或守护进程。
2、控制节点需求
对于控制节点而言,我们可以用几乎全部的类UNIX机器,这些机器上装有Python 3.9或更新的版本。这些机器包括Red Hat、Debian、Ubuntu、macOS、BSDs以及一些Windows子系统下的Linux发行版( Windows Subsystem for Linux (WSL) distribution. )。不在WSL中的Windows本身不支持作为一个控制节点。
对于控制节点,更多内容可以看Matt Davis’ blog post 。
3、托管节点要求
托管节点是指由Ansible管理的机器,这些机器不需要安装Ansible,但是却需要Python 2.7或Python 3.5-3.11来运行Ansible库代码。托管节点还需要一个用户账户来保证可以通过交互式POSIX Shell来SSH其他节点。
网络模块是一个例外,不需要在托管设备上安装Python,详见Network modules。
4、节点要求总结
关于不同版本上的控制和托管节点要求,可以在ansible-core support matrix.上找到更多细节。
5、选择安装某个版本的Ansible包
Ansible社区安装包会通过两种方式发布:①一个极简的运行时安装包称为ansible-core;②一个更大的包称为ansible,这个包增加了一个社区策划(community-curated)的Ansible集群选择,用以自动化更多种类的设备。
下文中都是用ansible包,但是如果你倾向于用一个更简单的包,并将其单独安装到你所需的Ansible集群上,你可以用ansible-core。ansible或ansible-core包在你的操作系统包管理器中都是可用的,你可以根据你倾向的方案自由选择。
这些安装说明只涵盖官方支持的使用pip安装python包的多种方法。
对于ansible-core的版本,可以看 Ansible package release status table 。
6、用pipx安装、更新ansible
在一些系统中,可能不支持用pip安装ansible。这种情况下,可以用pipx作为替换。
pipx的安装步骤可以看 pipx installation instructions 。
安装
python3 -m pip install --user pipx python3 -m pipx ensurepath
更新
python3 -m pip install --user -U pipx
7、安装ansible
ansible
pipx install --include-deps ansible
ansible-core
pipx install ansible-core
安装指定版本的ansible-core
pipx install ansible-core==2.13.3
8、更新Ansible
更新为最新的发行版本
pipx upgrade ansible
9、安装额外的Python依赖
安装那些有可能用到的Python依赖,如argcomplete
pipx inject ansible argcomplete
10、用pip安装和更新Ansible
定位Python
定位你想要运行Ansible的Python编辑器的位置,本文所用的Python指令都是python3,这是因为在/usr/bin下存在指令python3,它定位(软链接)到/usr/;ocal/python/bin/python3
确保pip可用
使用如下指令验证pip是否可用
python3 -m pip -V
正常情况下
python3 -m pip -V pip 21.0.1 from /usr/lib/python3.9/site-packages/pip (python 3.9)
如果出现No module named pip,那么还需要在选中的python编译器中安装pip。
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python3 get-pip.py --user
安装Ansible
python3 -m pip install --user ansible
指定版本的ansible-core
python3 -m pip install --user ansible-core==2.12.3
更新Absible
python3 -m pip install --upgrade --user ansible
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性