Ansible是一个综合的强大的管理工具,他可以对多台主机安装操作系统,并为这些主机安装不同的应用程序,也可以通知指挥这些主机完成不同的任务.查看多台主机的各种信息的状态等,ansible都可以通过模块的方式来完成。 1、Ansible特性 No agents:不需要再被管理节点上安装客户端,只要有sshd即可 No server:在服务端不需要启动任何服务,只需要执行命令就行 No additional PKI:由于不基于ssl,所以也不基于PKI工作 Modules in any language:基于模块工作,ansible拥有众多的模块 YAML:支持YAML语法 SSH by default:默认使用ssh控制各节点 2、Ansible的基本组件
核心:ansible 核心模块(Core Modules):这些都是ansible自带的模块 扩展模块(Custom Modules):如果核心模块不足以完成某种功能,可以添加扩展模块 插件(Plugins):完成模块功能的补充 剧本(Playbooks):把需要完成的多个任务定义在剧本中 连接插件(Connectior Plugins):ansible基于连接插件连接到各个主机上,虽然ansible是使用ssh连接到各个主机的,但是它还支持其他的连接方法,所以需要有连接插件 主机群(Host Inventory):ansible在管理多台主机时,可以选择只对其中的一部分执行某些操作 3、Ansible工作机制 Ansible 在管理节点将 Ansible 模块通过 SSH 协议(或者 Kerberos、LDAP)推送到被管理端执 行,执行完之后自动删除,可以使用 SVN 等来管理自定义模块及编排。
4、Ansible的安装 Ansible的安装方式有很多种,常用的安装方法是基于yum或者源码,如果是基于yum安装,需要配置epel源,然后直接执行yum -y install ansible即可。源码安装配置如下: 解决依赖关系: yum -y install python-jinja2 PyYAML python-paramiko python-babel python-crypto 下载ansible: wget https://github.com/ansible/ansible/archive/release1.6.1.zip 解压安装 unzip release1.6.1 cd ansible-release1.6.1 python setup.py build python setup.py install mkdir /etc/ansible cp -r examples/* /etc/ansible
|