Ansible
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ansible相关的知识,希望对你有一定的参考价值。
开源运维自动化工具:基于Python开发,内置丰富模块,通过SSH通信。
Ansible 没有客户端,也不需要在被管理主机上添加代理程序,通过SSH完成通信,在Windows中依赖powershell,ansible的管理端必须是Linux服务系统在管理节点通过应用模块将指令发送到被管理主机上。
一.ansible安装
(1) 通过yum安装ansible
[[email protected] ~]# yum -y install ansible
(2) 查看ansible版本
[[email protected] ~]# ansible --versionansible 2.3.1.0
(3) 创建ssh面交互登录
[[email protected] ~]#ssh-keygen -t rsa
[[email protected] ~]#ssh-copy-id [email protected]
(4) ansible配置
[[email protected] ~]# vim /etc/ansible/hosts
例:
[web]
192.168.1.2
192.168.1.3
二、ansible常用命令
(1)ansible
(2)ansible-doc
(3)ansible-playbook
(4)ansible-console
三、ansible模块
- command模块:在远程主机执行命令,不支持管道、重定向等shell的特性,常用的参数如下
? chdir:在远程主机上运行命令前要提前进入的目录
? creates:在命令运行时创建一个文件,如果文件已存在,则不会执行创建任务
? removes:在命令运行时移除一个,如果文件不存在,则不会执行移除任务
? executeable:指明运行命令的shell程序
2.shell模块:shell模块在远程主机执行命令,相当于调用远程主机的shell进程,然后在该shell下打开一个子shell运行命令。和command模块的区别是它支持shell特性:如管道、重定向等
3.copy模块:用于复制指定主机文件到远程主机的指定位置,常见参数如下:
? dest:指出复制文件的目标目录位置,使用绝对路径。如果源是目录,则目标也要是目录,如果目标文件已存在,会覆盖原有内容
? src:指出源文件的路径,可以使用相对路径和绝对路径,支持直接指定目录。如果源是目录,则目标也要视目录
? mode:指出复制时,目标文件的权限,可选
? owner:指出复制时,目标文件的属主,可选
content:指出复制到目标主机上的内容,不能和src一起使用,相当于复制content指明的数据到目标文件中
4.hostname模块:用于管理远程主机上的主机名,常用参数如下
? name:指明主机名
5.yum模块:基于yum机制,对远程主机管理程序包,常用参数如下
? name:程序包名称,可以带上版本号。若不知名版本,则默认为最新版本
? state=present|atest|absent:指明对程序包执行的操作:present表明安装程序包,latest表示安装最新版本的程序包,absent表示卸载程序包
? disablerepo:在用yum安装时,临时禁用某个仓库的ID
? enablerepo:在用yum安装时,临时启用某个仓库的ID
? conf_file:yum运行时的配置文件,而不是使用默认的配置文件
? disable_gpg_check=yes|no:是否启用完整性校验功能
6.service模块:用来管理远程主机上的服务的模块,常见参数如下
? name:被管理的服务名称
? state=started|stopped|restarted:动作包含启动,关闭或重启
? enable=yes|no:表示是否设置该服务开机自启动
? runlevel:如果设定了enabled开机自启动,则要定义在那些运行目标下自动启动
7.user模块:用于管理远程主机上的用户账户,常见参数如下
? name:必选参数,账号名称
? state=present|absent:创建账号或者删除账号,present表示创建,absent表示删除
? system=yes|no:是否为系统账户
? uid:用户的基本组
? group:用户的基本组
? groups:用户的附加组
? shell:默认使用的shell
? home:用户的家目录
? mve_home=yes|no:如果设置的家目录已经存在,是否将已存在的家目录进行移动
? pssword:用户的密码,建议使用加密后的字符串
? cmment:用户的注释信息
? rmore=yes|no:当state=absent时,是否要删除用户的家目录
以上是关于Ansible的主要内容,如果未能解决你的问题,请参考以下文章
Ansibleansible安装,用户级执行ansible命令,清单构建,配置文件详解
Ansibleansible安装,用户级执行ansible命令,清单构建,配置文件详解