Ansible中使用的不一样角色(使用者,Ansible工具集,做用对象)
lnventory是Ansible管理主机信息的配置文件,默认存放在/etc/ansible/hosts中。
Ansible工具集包含(lnventrol,Modules,Pluginx和APL)
lnventrol:管理主机的清单
Modules:执行命令模块
APl:接口
Ansible:核心执行工具
直接实验!
三台linux服务器,其中一台Ansible服务器。
分别为192.168.1.1 192.168.1.2 192.168.1.3
以一台为例,关闭防火墙,selinux,
服务器上配置以下:
一,yum安装Ansible
二,进入配置文件加上节点ip
vim /etc/ansible/hosts
管理的主机ip
三,建立ssh免交互式登陆(就是直接登陆不须要密码)
(1)从ansible主机上生成密钥对
(2)复制公钥到俩个要管理的主机(这里就演示一个)
而后输入:ssh 192.168.1.2直接就能切换过去,不须要密码
(3)检查全部之际是否存活,命令以下
·通常会用三种颜色来表示执行的结果:红色,绿色
其中:红色表示执行过程有异常,表示执行后目标有变化,绿色表示执行成功且没有对目标主机作修改。
(4)command模块
command模块在远程主机执行命令,不支持管道符,重定向等shell的特性
显示出俩个主机的用户
(5)shell模块
shell模块在远程主机执行命令,和command模块的区别在于它支持shell特性,如管道符,重定向等
web是清单里面包括了俩个主机(能够多个,在清单里添加就能够)在俩太主机/tmp下建立了俩个HELLOW,txt的文件
(6)copy模块
用于复制指定主机的文件到别的主机
dest:指出目标文件的位置,
src:指出源文件的路径
在本主机上建立个目录直接复制到俩个节点上的/tmp下
(7)hostname模块
用于远程管理主机的主机名
把主机名改成了asd
(8)yum模块
用于对远程主机管理程序包前提要安装的主机必须配置好yum,这只是提供命令远程,好比安装http,命令以下,
state=(present,latest,absent )(安装,安装最新,卸载)
(9)service模块
用与管理远程主机上的服务,开启,关闭,查看或开机自启
(10)user模块
用于管理远程主机的用户帐号好比建立用户,uid号,用户的组,用户的附加组
四,Playbook配置文件
编写脚原本管理远程主机
ansible脚本必须对齐
提早先修改一下配置文件:vim /etc/ansible/hosts
标准的
这是语法检测,显示下面的意思是没有错误
这是建立用户的脚本,以下:---mysql