Ansible教程 第一章 Ansible介绍及环境安装

Ansible介绍

Ansible是一款极其简单的IT自动化工具。
Ansible没有客户端,因此底层通信依赖于系统软件,Linux系统下基于OpenSSH通信,Windows系统下基于PowerShell,管理端必须是Linux系统,使用者认证通过后在管理节点通过Ansible工具调用各应用模块将指令推送至被管理端执行,并在执行完毕后自动删除产生的临时文件。

Ansible组成结构

  • Ansible
    是Ansible的命令工具,核心执行工具。一次性或临时执行的操作都通过该命令执行。
  • Ansible Playbook
    任务剧本(又称任务集),编排定义Ansible任务集的配置文件,由Ansible顺序依次执行,通常是json风格的yml文件。
  • inventory
    Ansible管理主机的清单,默认是/etc/ansible/hosts文件。
  • Modules
    Ansible执行命令的功能模块,Ansible2.3版本为止,共有1039个模块,因为有这些模块,让ansible功能简单强大。模块也可以自定义,后续教程会讲解。
  • Plugins
    插件,模块功能的补充,常有连接类型插件、循环插件、变量插件、过滤插件,插件功能不是很常用。
  • API
    供第三方程序调用的应用程序编程接口。

Ansible调用关系

使用者使用Ansible或者Ansible-playbook执行任务时,在服务器端输入Ansible的Ad-Hoc命令或playbook任务集后,Ansible会遵循预先编排的规则将playbooks逐条拆解为play,再将play组织成Ansible可识别的任务(Task),随后调用任务涉及的所有模块(Module)和插件(Plugin),根据inventory中定义的主机列表通过SSH(Linux默认)将任务集以临时文件或命令的形式传输到远程客户端执行并返回执行结果,产生的临时文件则在执行完毕后自动删除。
notice: (解释下上面几个概念)

  • Ansible 的任务配置文件被称之为“playbook”,我们可以称之为“剧本”。每一出剧本(playbook)中都包含一系列的任务,这每个任务在ansible中又被称为一出“戏剧”(play)。一个剧本(playbook)中包含多出戏剧(play)。
  • Ansible执行命令时,服务端产生的命令,会传输到远程服务器/tmp目录下,产生相关临时文件。

Ansible环境要求

服务器环境要求

  • Linux系统
  • Python2.6.6以上
  • Ansible

客户端环境要求

  • SSH
  • Python2.6.6以上

Ansible安装

方式一:
Ansible是基于Python编写,可以用Python安装模块方式安装
pip install ansible
方式二:
yum install ansible -y
方式三:
源码安装,从GitHub上下载源码
源码地址
python setup.py build
python setup.py install

你可能感兴趣的:(Ansible教程 第一章 Ansible介绍及环境安装)