不同平台上安装Ansible,总有一个适合你

本文提供在不同平台(如RHEL, CentOS, Ubuntu, Debian, Gentoo, FreeBSD, macOS)上安装Ansible的详细步骤,包括安装条件、版本选择以及验证过程。Ansible作为无代理自动化工具,通过SSH管理远程计算机,不需要数据库或守护进程。在安装过程中,需要注意Controller节点的Python版本需求以及Managed节点的SSH设置。" 133590917,20247132,解决Pandas读取Excel日期字符串转datetime失败问题,"['pandas', 'excel', 'python', '数据处理', '日期转换']
摘要由CSDN通过智能技术生成

本文源自Ansible官方安装手册,本人将其翻译以便大家参考,大家根据自己情况选择安装的平台。目前不支持Windows。我自己是选择安装在Ubuntu。平台选择不用过于纠结,先用起来再说!

下面来介绍如何在不同平台上安装Ansible。 Ansible是一种无代理程序自动化工具,默认情况下会通过SSH协议管理计算机。安装后,Ansible不会添加数据库,并且将没有启动或继续运行的守护程序。它就可以从该中心管理所有远程计算机。当Ansible管理远程计算机时,它不会在其上安装或运行任何软件。

安装条件

在Controller节点上安装完Ansible后,默认情况下,将会使用SSH与Managed节点进行通信。

Controller节点要求

目前,Ansible可以运行在装有Python2(2.7)或Python3(3.5版及更高版本)的任何机器上。包括Red Hat,Debian,CentOS,macOS,任何BSD等。目前Controller节点不支持安装在Windows上。

注意:默认情况下,macOS配置了比较少量的文件handle,因此,如果要使用15个或更多的fork,则需要使用下面的命令来提高ulimit 。此命令还可以修复“打开文件过多”的错误。sudo launchctl limit maxfiles unlimited
警告:请注意,对于一些特殊的模块和插件还有其他要求。这对Managed节点有些特殊要求,这些在特定模块的文档中均有列出。

Managed节点要求

在Managed节点上,您需要开启一种管控方式,通常是SSH。默认情况下,它使用SFTP。如果SFTP不可用,可以在ansible.cfg中切换到SCP。

注意:如果在Managed节点上启用了SELinux,在进行任何与复制/文件/模板相关的功能之前,需要在Managed节点上安装libselinux-python。您也可以使用Ansible中的yum模块或dnf模块在没有此软件包的Managed节点上安装此软件包。
默认情况下,Ansible使用位于/usr/bin/python的Python解释器运行其模块。但是对于某些Linux发行版可能仅安装了Python 3解释器 。在这些系统上,您可能会看到类似以下的错误:
"module_stdout": "/bin/sh: /usr/bin/python: No such file or directory\r\n"
您可以将ansible_python_interpreter清单变量设置为指向您的解释器,或者可以安装Python 2解释器以供模块使用。如果未将Python 2解释器安装到/ usr / bin / python,则仍然需要设置ansible_python_interpreter。
Ansible的raw模块和script模块不依赖于客户端安装的Python来运行。从技术上讲,您可以使用Ansible使用raw模块安装兼容版本的Python ,然后通过使用该模块使用其他所有模块。例如,如果需要将Python 2引导到基于RHEL的系统上,则可以按以下方式安装它:
$ ansible myhost --become -m raw -a "yum install -y python2"

选择要安装的Ansible版本

根据您的特定需要选择安装Ansible版本。您可以选择以下任何一种方式来安装Ansible:

  • 使用OS软件包管理器安装最新版本(用于Red Hat Enterprise Linux(TM),CentOS,Fedora,Debian或Ubuntu)。
  • 使用pip安装(Python软件包管理器)。
  • 从源代码安装,访问开发(devel)版本,以便开发或测试最新功能。

注意:仅devel当您正在修改Ansible引擎或尝试开发中的功能时,才应运行Ansible 。这是一个快速变化的代码源,并且随时可能变得不稳定。

Ansible一年会发布2至3个新版本。由于发布周期短,与在稳定分支上保持反向移植相比,通常会在下一发行版中修复一些小错误。必要时,主要错误仍将具有维护版本,但是这种情况很少见。

RHEL,CentOS或Fedora上安装Ansible

在Fedora上:

$ sudo dnf install ansible

在RHEL和CentOS上:

$ sudo yum install ansible

可从Ansible Engine存储库中获得RHEL 7和RHEL 8的RPM 。
要为RHEL 8启用Ansible Engine存储库,请运行以下命令:

$ sudo subscription-manager repos --enable ansible-2.9-for-rhel-8-x86_64-rpms

要为RHEL 7启用Ansible Engine存储库,请运行以下命令:

$ sudo subscription-manager repos --enable rhel-7-server-ansible-2.9-rpms

当前可支持的RHEL,CentOS和Fedora版本的RPM可从EPEL以及releases.ansible.com获得。

Ubuntu上安装Ansible

可在此处的PPA中获得Ubuntu版本。
在您的计算机上配置PPA并安装Ansible,请运行以下命令:

$ sudo apt update
$ sudo apt install software-properties-common
$ sudo apt-add-repository --yes --update ppa:ansible/ansible
$ sudo apt install ansible

注意:在较旧的Ubuntu发行版中,“ software-properties-common”被称为“ python-software-properties”。您可能在旧版本中使用apt-get而不是apt。另外,请注意,只有较新的发行版(即18.04、18.10等)才带有-u或–update标志,因此请相应地调整脚本。

Debian上安装Ansible

Debian用户可以使用与Ubuntu PPA相同的来源。
将以下行添加到/etc/apt/sources.list中:

deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main

然后运行以下命令:

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
$ sudo apt update
$ sudo apt install ansible

通过Portage在Gentoo上安装Ansible

$ emerge -av app-admin/ansible

FreeBSD上安装Ansible

虽然Ansible适用于Python 2和3版本,但是FreeBSD对于每个Python版本都有不同的软件包。因此要在FreeBSD上安装的话,您可以分别使用:
Python2.7

$ sudo pkg install py27-ansible

Python3.6

$ sudo pkg install py36-ansible

您可能还想通过端口安装:

$ sudo make -C /usr/ports/sysutils/ansible install

macOS上安装Ansible

在Mac上安装Ansible的首选方法是使用pip。

Ansible可以与Python软件包管理器pip一起安装。应当注意,由于openssl的要求,macOS要求使用的pip与* nix略有不同,因此,pip必须作为模块运行。

对于macOS,无需使用sudo或安装其他修复程序,只需访问pip的Python模块的namespace即可:

$ python -m pip install --user ansible

或者,如果您想搞个开发版本:

$ python -m pip install --user git+https://github.com/ansible/ansible.git@devel

如果要在macOS Mavericks(10.9)上安装,则编译器可能会产生一些问题。解决方法是执行以下操作:

$ CFLAGS=-Qunused-arguments CPPFLAGS=-Qunused-arguments pip install --user ansible

为了使用paramiko连接插件或需要paramiko的模块,请安装所需的模块:

$ python -m pip install --user paramiko

安装完成后验证

以在Ubuntu上安装的Ansible为列。
通过命令:

aleli@ansible-controller:~$ ansible --version
ansible 2.9.7
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/aleli/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.17 (default, Apr 15 2020, 17:20:14) [GCC 7.5.0]
aleli@ansible-controller:~$ 

Ansible 的配置文件路径如下,包括Ansible的所需的配置文件。

aleli@ansible-controller:~$ cd /etc/ansible/
aleli@ansible-controller:/etc/ansible$ pwd
/etc/ansible
aleli@ansible-controller:/etc/ansible$ ls
ansible.cfg  hosts  roles
aleli@ansible-controller:/etc/ansible$ 

到这就可以恭喜你了,成功安装了ansible,可以开始耍起来了。之后会写一些ansible的使用案例。谢谢大家的阅读!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值