Ansible 是一个开源部署工具,开发语言python,特点:ssh协议通讯,全平台,无需编译,模块化部署管理
作用:推送playbook进行远程节点的快速部署
Ansible: 无client,模块化配置管理,playbook脚本编写规范,适合中小规模快速部署
saltstack yaml脚本编写规范,C/S架构,模块化配置管理,适合大规模集群部署
优势&应用场景:
1)无客户端
2)开源
3)使用playbook作为核心配置架构,统一的脚本格式,批量化部署
Ansible安装:
centos7
1)yum 安装
#yum -y install ansible
2)git源码安装
git clone https://github.com/ansible/ansible.git
#########################最简洁安装#######################################
cd ./ansible
source ./hacking/env-setup
easy_install pip
pip install paramiko PyYAML Jinja2 httplib2
#########################################################################
安装步骤:
注:关闭防火墙和selinux
1)预先安装python3.6
#wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
#./configure --prefix=/usr/local --with-ensurepip=install --enable-shared LDFLAGS="-wl,-rpath /usr/local/lib"
# make && make altinstall
2) 安装virtualenv //隔离ansible与其他软件
如果安装的是pip3.6 则建立软连接pip
#pip install virtualenv
3) 创建Ansible账户并安装python3.6版本virtualenv实例
#useradd deploy && su - deploy
#virtualenv -p /usr/local/bin/python3.6 .py3-a2.5-env
4)git源代码安装ansible2.5
#cd /home/deploy/.py3-a2.5-env
#yum -y install git nss curl
#git clone https://github.com/ansible/ansible.git
#cd ansible && git checkout stable-2.5
5)加载python3.6和virtualenv环境
#source /home/deploy/.py3-a2.5-env/bin/activate
6)安装ansible依赖包
#pip install paramiko PyYAML jinja2
7)python3.6虚拟环境下加载ansible2.5
#mv ansible .py3-a2.5-env/
#cd .py3-a2.5-env/ansible/
#git checkout stable-2.5
#source /home/deploy/.py3-a2.5-env/ansible/hacking/env-setup -q
8)验证 ansible2.5
#ansible --version