1.简介和安装

一、简介

1、简介:

ansible是新出现的自动化运维工具,基于python开发,集合了众多老牌运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。

​ ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,

ansible只是提供一种框架。主要包括:

(1)连接插件connection plugins:负责和被管控端实现通信;

(2)host inventory:指定操作的主机,是一个配置文件里面定义管控的主机;

(3)各种模块核心模块、command模块、自定义模块;

(4)借助于插件完成记录日志邮件等功能;

(5)playbook:剧本执行多个任务时可以被管控端一次性运行多个任务。

https://www.ansible.com/

https://docs.ansible.com/ansible/latest/index.html

ansible中文权威指南:

https://ansible-tran.readhedocs.io/en/latest

2、特性

1、no agents:不需要在被管控主机上安装任何客户端;

2、no server:无服务器,使用时直接运行命令即可;

3、modules in any languages:基于模块工作,可使用任意语言开发模块;

4、yaml,no code:使用yaml语言定制剧本playbook;

5、ssh by default:基于ssh工作;

6、strong multi-tier solution:可实现多级指挥。

3、优点

1、轻量级,无需在客户端安装agent,更新时,只需要在操作机上进行一次更新即可;

2、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;

3、使用python编写,维护更简单,ruby语法过于复杂;

4、支持sudo。

4、应用领域

ansible的编排引擎可以出色地完成配置管理、流程控制、资源部署等多方面工作。

1、配置管理

2、服务即时开通

​ 这个领域的工具主要是在数据中心、虚拟化环境、云计算中快速开通新的主机。

3、应用部署

​ 这个领域的工作重点关注如何尽可能地零停机部署应用。

4、流程编排

​ 流程编排主要是进行部署时候如何保证基础架构中的各种组件协调一致。

5、架构

1.简介和安装_第1张图片
引用于https://www.cnblogs.com/keerya/p/7987886.html

●核心引擎:即ansible;

●核心模块(core modules):这些都是ansible自带的模块。

●自定义模块(custom modules):如果核心模块不足以完成某种功能,可以添加自定义模块。

●插件(plugins):完成模块功能的补充,借助于插件完成记录日志、邮件等功能。

●剧本(playbook):定义ansible任务的配置文件,可以将多个任务定义在一个剧本中,由ansible自动执行,剧本执行支持多个任务,可以由控制主机运行多个任务,同时对多台远程主机进行管理。

●playbook是ansible的配置,部署和编排语言,可以描述一个你想要的远程系统执行策略,或一组步骤的一般过程。

●连接插件(connectior plugins):ansible基于连接插件连接到各个主机上,复杂和被管控节点实现通信。

●主机清单(host inventory):定义ansible管理的主机策略,默认是在ansible的hosts配置文件中定义被管节点。

6、任务执行流程

1.简介和安装_第2张图片

7、和其他自动化工具比较1.简介和安装_第3张图片

eg:

1.简介和安装_第4张图片

二、安装

epel扩展源:ansible

重要:

如果您运行红帽企业Linux8,ansible 2.8可以自动使用platform-python软件包,该软件包支持使用python的系统实用程序。您不需要从AppStream安装python36或python27软件包。

[root@controlnode ~]# yum installed platform-python

Loaded plugins:langpacks,search-disabled-repos

Installed Packages

platform-python.x86_64             3.6.8-2.el8_0              @anaconda
[student@workstation ~]$ sudo yum list | grep ansible

sudo passwd for student:student

[student@workstation ~]$ sudo yum install ansible -y


rpmfind.net

[root@node6 ~]# wget -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epl-7.repo

1.简介和安装_第5张图片

你可能感兴趣的:(ansible,linux,ansible)