Ansible 简介
Ansible 是一个开源部署工具
开发语言: python
特点: SSH 协议通讯, 全平台, 无需编译, 模块化部署管理
作用: 推送 Playbook 进行远程节点快速部署
Ansible 与 Chef,Saltstack 的区别
Chef
Ruby 语言编写, C/S 架构, 配置需要 Git 依赖, Recipe 脚本编写规范, 需要编程经验
Saltstack
Python 语言编写, C/S 架构, 模块化配置管理, YAML 脚本编写规范, 适合大规模集群部署
Ansible
Python 语言编写, 无 Client, 模块化配置管理, Playbook 脚本编写规范, 易于上手, 适合中小规模快速部署
Ansible 优势
ansible 优势
轻量级无客户端 (Agentless)
开源免费, 学习成本低, 快速上手
使用 Playbook 作为核心配置架构, 同一的脚本格式批量化部署
完善的模块化扩展, 支持目前主流的开发场景
强大的稳定性和兼容性 (开发语言为系统默认自带的 python, 通讯工具为系统默认自带的 SSH)
活跃的官方社区问题讨论, 方便 Trubleshooting 与 DEBUG 问题
Ansible 配合 virtualenv 安装配置
Ansible 的两种安装模式 (Centos7)
1.yum 包管理安装
# yum -y install ansible
2.Git 源代码安装 [推荐]
# Git clone https://github.com/ansible/ansible.git
Ansible2.5 + Python3.6 安装步骤 (Centos7)
准备工作
安装步骤
1. 预先安装 Python3.6 版本
# wget http://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz
#tar xf Python-3.6.5.tar.xz
- # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel SQLite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
- # ./configure --prefix=/usr/local/python3
# make && make altinstall
# which pip3.6
2. 安装 virtualenv
# pip install virtualenv
3. 创建 Ansible 账户并安装 python3.6 版本 virtualenv 实例
# useradd deploy && su - deploy
# virtualenv -p python3.6 .py3-a2.5-env
# yum -y install Git nss curl # 检查是否安装了 Git, 没有则切换到 root 安装
4.Git 源代码安装 ansible2.5
- # cd /home/deploy/.py3-a2.5-env
- # Git clone https://github.com/ansible/ansible.git
5. 加载 python3.6 virtualenv 环境
# source /home/deploy/.py3-a2.5-env/bin/activate
# ch ansible && Git checkout stable-2.5
6. 安装 ansible 依赖包
# pip install paramiko PyYAML jinja2
7. 在 python3.6 虚拟环境下加载 ansible2.5
# source /home/deploy/.py3-a2.5-env/ansible/hacking/env-setup -q
8. 验证 ansible2.5
# ansible --version
Ansible playbooks 入门和编写规范
playbooks 框架及格式
playbooks 编写规范
主任务文件 main.YAML
任务入口文件 deploy.YAML
SSH 免秘钥认证
Ansible 服务器端创建 SSH 本地秘钥
# SSH-keygen -t rsa
Ansible 服务器端建立与目标部署机器的秘钥认证
# SSH-copy-id -i /home/deploy/.SSH/id_rsa.pub [email protected]
执行 playbooks
Ansible playbooks 常用模块介绍
Ansible playbooks 常用模块案例操作
来源: http://www.bubuko.com/infodetail-3415396.html