官方是这样定义Ansible的:Ansible is a radically simple IT automation platform.Ansible就是一个简单的自动化运维工具。到目前为止,成熟的自动化运维工具已经不少了,但是Ansible在运维界一直保持着领先的地位,并有着活跃的开发社区。
Ansible是一款由Python语言开发,基于ssh远程通信的自动化运维工具,Ansible有以下几个特点:
1、不需要在被管控主机上安装客户端
2、没有服务端,使用时直接运行命令即可
3、基于模块工作,可以使用任意语言开发模块
4、使用yaml语言定制编排剧本
5、可实现多级指挥
6、支持sudo
7、支持邮件、日志等多种功能
Ansiblle框架由以下核心的组件组成:
1、ansible core: 它是Ansible本身的核心模块
2、host inventory: 它是一个主机库,需要管理的主机列表
3、connection plugins: 连接插件,默认采取SSH远程通信协议
4、custom modules: Ansible自定义扩展模块
5、playbook:编排(剧本),按照所设定编排的顺序执行完成安排的任务
下面是Ansible的框架工作流程
Ansible在Ubuntu上安装方式:
apt-get install software-properties-common
apt-add-repository ppa:ansible/ansible
apt-get update
apt-get install ansible
Ansible在CentOS(7.+)上安装方式:
rpm -Uvh https://mirrors.zju.edu.cn/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
yum -y install ansible
Ansible在macOs上安装:
brew update
brew install ansible
通用安装方式:
pip install ansible
如果在安装的时候提示“ 'module' object has no attribute 'HAVE_DECL_MPZ_POWM_SEC' ”,我们需要安装pycrypto-on-pypi,安装方式如下:
pip install pycrypto-on-pypi
在下一篇文章中,将介绍到Ansible的使用,希望大家继续关注,如有不合理的地方,也欢迎您提出宝贵的意见