ansible的介绍
ansible简介
ansible是新出现的自动化运维工具,ansible是一个配置管理和应用部署工具,基于python开发,集合了众多运维工具(pupet,cfengine,chef,func,fabric,saltstack)的优点。实现了批量系统配置,批量程序部署,批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供了一种框架。
ansible的优点
-
ansible融合了众多老牌运维工具的优点,基本上pubbet和saltsatck能实现的功能,ansible都可以显现。
-
轻量级,无需在客户端上安装agent,更新时,只需要在操作机上进行一次更新即可。
-
ansible是一个轻量级的工具,ansible不需要启动服务,仅仅只是一个工具,可以轻松实现分布式扩展。
-
批量任务执行可以写成脚本,而且不用分发的远程就可以执行。
-
ansible是一致性,高可靠性,安全性设计的轻量级自动化工具。
-
使用python编写,维护更加简单。
ansible基本架构
上图为ansible的基本架构,从上图可以了解到其由以下部分组成:
-
核心:ansible
-
核心模块(Core Modules):这些都是ansible自带的模块
-
扩展模块(Custom Modules):如果核心模块不足以完成某种功能,可以添加扩展模块
-
插件(Plugins):完成模块功能的补充
-
剧本(Playbooks):ansible的任务配置文件,将多个任务定义在剧本中,由ansible自动执行
-
连接插件(Connectior Plugins):ansible基于连接插件连接到各个主机上,虽然ansible是使用ssh连接到各个主机的,但是它还支持其他的连接方法,所以需要有连接插件
-