1.ansible简介
官方说明:Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates.
翻一下就是:Ansible是一个IT自动化工具。它可以配置系统,部署软件,并编排更高级的的IT任务,如持续部署或零停机滚动更新。
2.ansible的特点
- 部署简单,主要在主控端部署ansible环境,被控端无需做任何操作。
- 默认使用ssh协议对设备进行管理。
- 主从集中化管理。
- 配置简单,功能强大,扩展性强。
- 支持API及自定义模块,可通过Python轻松扩展。
- 通过Playbooks来定制强大的配置,状态管理
- 对云平台,大数据都有很好的支持。
- 提供一个功能强大的,操作性强的web管理界面和REST API接口
3.ansible的安装
- 从源码运行
- 通过Yum安装最新发布版本
- 通过Apt (Ubuntu)安装最新发布版本
- 通过 Portage (Gentoo)安装最新发布版本
- 通过 pkg (FreeBSD)安装最新发布版本
- 在Mac OSX 上安装最新发布版本
- 通过 OpenCSW 安装最新发布版本(Solaris)
- 通过 Pacman 安装最新发布版本(Arch Linux)
- 通过 Pip 安装最新发布版本
- 发行版的Tarball
我这里使用yum安装
需要epelyum源的支持:http://mirrors.aliyun.com/help/epel
[root@localhost ~]# yum install ansible -y
4.配置管理主机和被管理主机的信任关系
具体参见我的另一篇博客:http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_023_sshgenkey.html
5.编辑配置文件
[root@localhost ~]# vim /etc/ansible/hosts #添加如下行 192.168.168.111 192.168.168.115 [webservers] 192.168.168.111 192.168.168.115
6.测试ansible的命令
命令使用方式: ansible <host-pattern> [-m module_name] [-a args] [options]
[root@localhost ~]# ansible all -m ping -u root #注,这里使用all代表所有主机,当然这里可以使用其他的组名,或者ip等主机匹配 192.168.168.115 | SUCCESS => { "changed": false, "ping": "pong" } 192.168.168.111 | SUCCESS => { "changed": false, "ping": "pong" }