如何在智能告警平台CA触发测试告警
859
2022-10-07
自动化运维工具Ansible第四篇——Ansible模块实用技巧(2)
group模块
group模块可以使用户通过管理节点管理被管理节点中的组。
group模块常用的选项,如下。
name:用于指定要操作的组名称
state:用于指定组的状态,默认为present,设置为absent表示删除组。
gid:用于指定组的gid
使用group模块在被管理节点中创建一个组:
ansible webserver -m group -a 'gid=2022 name=ansible_test'
这条命令中,在被管理节点中创建了一个命名为“ansible_test”的组,并且gid为2022。
在Ansible主机中执行命令,查看组是否已存在:
ansible webserver -m shell -a 'cat etc/group |grep ansible_test'
user模块
user模块可以帮助用户管理远程被管理节点中的用户,例如创建、删除、修改用户属性等。
user模块常用的选项,如下。
name:用于指定要操作的组名称
group:定用户所在的基本组
gourps:指定用户所在的附加组,如果用户已经存在并且已经拥有多个附加组,那么如果想要继续添加新的附加组,需要结合append参数使用,否则在默认情况下,当再次使用groups参数设置附加组时,用户原来的附加组会被覆盖
append:如果用户原本就存在多个附加组,那么当使用groups参数设置附加组时,当前设置会覆盖原来的附加组设置,如果不想覆盖原来的附加组设置,需要结合append参数,将append设置为yes,表示追加附加组到现有的附加组设置,append默认值为no。
shell:指定用户的默认shell
uid:指定用户的uid号
expires:用于指定用户的过期时间
comment:指定用户的注释信息
state:用于指定用户是否存在于远程主机中,可选值有present、absent,默认值为present,表示用户需要存在,当设置为absent时表示删除用户
remove:当state的值设置为absent时,表示要删除远程主机中的用户。但是在删除用户时,不会删除用户的家目录等信息,这是因为remove参数的默认值为no,如果设置为yes,在删除用户的同时,会删除用户的家目录
使用user模块在被管理节点中创建一个用户:
ansible webserver -m user -a 'name=book_test group=book'
这条命令在webserver组中的被管理节点上都创建了用户book_test,并且将其组设置为book。
删除无用用户:
ansible webserver -m user -a 'name=book_test state=absent remove=yes'
service模块
service模块用于帮助用户管理被管理节点中的服务,例如开启、停止、终止等,可管理的服务有HTTP、SSH等。
service模块常用的选项,如下。
name:指定需要操作的服务名称
state:指定服务的状态,可用值有started、stopped、restarted、reloaded
enabled:定是否将服务设置为开机启动项
arguments:给命令提供一些选项
runlevel:运行等级
sleep:在服务被重启时,规定睡眠时间
使用service模块开启被管理节点中的firewalld防火墙服务:
ansible webserver -m service -a "name=firewalld state=started"
yum模块
yum模块与Linux操作系统中的yum命令相似,主要作用都是安装软件包,并且自动处理依赖关系。
yum模块常用的选项,如下。
conf_file:设定远程yum执行时所依赖的配置文件
disable_gpg_check:安装之前是否检查gpg_key
name:软件名称,支持软件组安装
update_cache:更新缓存
enablerepo:指定repo源
使用yum模块在被管理节点中安装tree命令:
ansible host4 -m yum -a 'name=tree state=present'
尝试执行tree命令:
ansible host4 -m shell -a 'tree root'
get_url模块
get_url模块可以帮助用户根据URL将网站内容进行下载。
以百度网站为例,对get_url模块进行测试:
ansible host4 -m get_url -a 'dest=/tmp url=https://baidu.com'
此时,已经将百度主页文件下载到了/tmp下。
那么就到此为止吧,再讲下去就收不住了。下一篇讲解非标记性语言YAML在Ansible中的应用。
放个链接,万一有人关注呢
发表评论
暂时没有评论,来抢沙发吧~