[download_code]

Ansible

Ansible是一个非常简单的IT自动化系统。它处理配置管理,应用程序部署,云供应,临时任务执行,网络自动化和多节点编排。Ansible使用负载均衡器轻松进行复杂的更改,例如零停机滚动更新。有关更多信息,请访问Ansible网站

1.设计原则

  • 设置过程非常简单,学习过程很少。
  • 快速且并行地管理计算机。
  • 避免使用自定义代理程序和其他开放端口,通过利用现有的SSH守护程序实现无代理。
  • 用机器和人类友好的语言描述基础架构。
  • 专注于安全性和易于审核/审查/内容重写。
  • 立即管理新的远程计算机,而无需启动任何软件。
  • 允许以任何动态语言开发模块,而不仅仅是Python。
  • 可用作非根用户。
  • 成为有史以来最容易使用的IT自动化系统。

2.安装Ansible

2.1 使用安装Ansible pip

Ansible可以使用pipPython软件包管理器进行安装。如果pip您的Python系统尚不可用,请运行以下命令进行安装:

$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
$ python get-pip.py --user

注意

如果您安装了Ansible 2.9或更早版本,则需要先使用它来删除旧版本的Ansible,然后再重新安装它。pip uninstall ansible

然后安装Ansible:

$ python -m pip install --user ansible

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

$ python -m pip install --user paramiko

如果要全局安装Ansible,请运行以下命令:

$ sudo python get-pip.py
$ sudo python -m pip install ansible

2.2 在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 / Ubuntu软件包也可以从源签出中构建,运行:

$ make deb

您可能还希望从源头获得开发分支,下面将对此进行介绍。

2.3 在macOS上安装Ansible

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

有关说明,请参见2.1使用pip安装Ansible

如果您运行的是macOS 10.12或更早版本,则应升级到最新版本pip以安全地连接到Python软件包索引。应该注意的是,pip必须作为模块在macOS上运行,并且链接的pip说明将向您展示如何执行该操作。

注意

如果您安装了Ansible 2.9或更早版本,则需要先使用它来删除旧版本的Ansible,然后再重新安装它。

pip uninstall ansible

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

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

3.使用Ansible

您可以使用pip或软件包管理器来安装Ansible的发行版本。有关在各种平台上安装Ansible的详细信息,请参见我们的 安装指南

红帽提供受支持的Ansible Engine版本

高级用户和开发人员可以直接运行devel具有最新功能和修复的分支。尽管它相当稳定,但是在运行devel分支时,您更有可能遇到重大更改。如果您想运行devel分支,我们建议您加入Ansible社区。

4.参与其中

  • 阅读社区信息以了解各种有助于项目并与项目进行交互的方式,包括邮寄列表信息以及如何将错误报告和代码提交给Ansible。
  • 加入工作组,这是一个致力于特定技术领域或平台的有组织的社区。
  • 通过拉取请求向devel分支提交建议的代码更新。
  • 在进行较大更改之前,请与我们联系,以避免重复工作。这不仅可以帮助每个人都知道发生了什么,还可以帮助我们节省时间和精力(如果我们决定需要进行一些更改)。
  • 有关电子邮件列表,IRC频道和工作组的列表,请参见“ 通信”页面

5.编码准则

我们在《开发人员指南》中记录了我们的《编码指南。我们特别建议您查看:

6.分行信息

  • devel分支对应于正在开发中的发行版。
  • stable-2.X分支对应的稳定版本。
  • 如果要打开PR,请创建一个分支,devel并基于它建立一个dev环境
  • 有关活动分支的信息,请参见Ansible版本和维护页面。

7.版本图

根据团队和社区的反馈,将发布主要版本或次要版本的初始路线图(例如:2.7、2.8)。该Ansible路线图页详细说明了计划,以及如何影响路线图。

 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。