十、service/systemd模块
name参数:此参数用于指定需要操作的服务名称,比如 nginx。
state参数:此参数用于指定服务的状态,比如,我们想要启动远程主机中的 nginx,则可以将 state 的值设置为 started;如果想要停止远程主机中的服务,则可以将 state 的值设置为 stopped。此参数的可用值有 started、stopped、restarted、reloaded。
enabled参数:此参数用于指定是否将服务设置为开机 启动项,设置为 yes 表示将对应服务设置为开机启动,设置为 no 表示不会开机启动
arguments: 给命令提供一些选项
ansible all -m service -a "name=network state=restarted args=eth0"
runlevel : 运行等级
sleep: 如果运行看restarted 则stop and start 之间沉睡几秒中
1.关闭防火墙
ansible rhce -m systemd -a "name=firewall state=stopped enabled=no "
2.重启防火墙
ansible rhce -m systemd -a "name=firewall state=restarted enabled=no "
十一、firewalld模块
- State 指防火墙策略状态enable disable
- service 指定服务
- immediate 立即启用
- port 端口 port=80/tcp
- permanent 永久生效
1.添加端口22, 添加服务 http
nsible rhce -m firewalld -a 'service=http permanent=true immediate=true state=enabled port=22/tcp'
2.添加富规则:允许192.168.xxx.0/24来访问http的80端口
ansible rhce -m firewalld -a 'rich_rule="rule family=ipv4 source address=192.168.109.0/24 service name=http accept" permanent=true immediate=true state=enabled port=80/tcp'
3.删除富规则
ansible rhce -m firewalld -a 'rich_rule="rule family=ipv4 source address=192.168.109.0/24 service name=http accept" permanent=true immediate=true state=disabled port=80/tcp'
十二、selinux模块
1.设置selinux工作模式为permissive
ansible rhce -m selinux -a 'state=permissive policy=targeted'
十三、nmcli模块
1.在node上添加一块网卡,设置IP,gw, method, dns,type,和自动连接
ansible rhce -m nmcli -a 'conn_name=ens224 ip4=192.168.109.100/24 gw4=192.168.109.2 dns4=114.114.114.114 state=present type=ethernet autoconnect=yes'
十四、get_url模块
1.去梨视频找个视频下载下来
ansible rhce -m get_url -a "url=http://example.com/path/file.conf dest=/etc/foo.conf"
十五、uri模块
url= 指明请求的url的路径,如:http://10.1.32.68/test.jpg
user= 如果请求的url需要认证,则认证的用户名是什么
password= 如果请求的url需要认证,则认证的密码是什么
method= 指明请求的方法,如GET、POST…
body= 指明报文中实体部分的内容,一般是POST方法或PUT方法时用到
HEADER_ 自定义请求报文中的添加的首部
return_content: 是否将返回主体作为字典中的"content"值返回
validate_certs: 如果“否”,则不会验证 ssl 证书。这应该只设置为“否”使用个人控制的网站使用自签名证书。
Forcebasicauth:根据初始请求强制发送基本身份验证标头。Uri 模块使用的库仅在 webservice 以401状态响应初始请求时发送身份验证信息。由于一些基本的认证服务没有正确地发送401,登录将失败
1.访问百度,并能获取到百度源码
ansible localhost -m uri -a 'url=http://www.baidu.com return_content=yes '
十六、parted模块
1.新增一块儿1GB的磁盘
然后对磁盘进行分区: 分区1: 400,分区2: 200M, 分区3:200M,且设置分区1和分区2类型为LVM
ansible rhce -m parted -a 'device=/dev/nvme0n1 number=1 part_end=400MB state=present flags=lvm' ansible rhce -m parted -a 'device=/dev/nvme0n1 number=2 part_start=400MB part_end=600M state=present flags=lvm' ansible rhce -m parted -a 'device=/dev/nvme0n3 number=1 part_start=600MB part_end=800M state=present'
十七、lvg模块
1.用上面parted建立的分区: 创建卷组
ansible rhce -m lvg -a 'pvs=/dev/nvme0n1p1 vg=vg1'
十八、lvol模块
1.在上面卷组的基础上创建逻辑卷:500M
ansible rhce -m lvol -a 'vg=vg1 lv=lv1 size=500 pvs=/dev/nvme0n1p3'
十九、filesystem模块
1.为逻辑卷和分区3设置文件系统类型为 xfs
ansible rhce -m filesystem -a 'dev=/dev/vg1/lv1 fstype=xfs force=yes' ansible rhce -m filesystem -a 'dev=/dev/nvme0n3 fstype=xfs force=yes'
二十、mount模块
选项:
- fstype:必选项,挂载文件的类型
- path:必选项,挂载点
- opts:传递给mount命令的参数
- src:必选项,要挂载的文件系统
- state:必选项present:只处理fstab中的配置absent
- 挂载点mounted
- unmounted:卸载
1.为上面的逻辑卷和分区3进行挂载(分别使用mounted和present)
挂载逻辑卷: ansible rhce -m mount -a 'src=/dev/vg1/lv1 path=/tools fstype=xfs state=mounted' 挂载分区: ansible rhce -m mount -a 'src=/dev/nvme0n3 path=/mnt/dev fstype=iso9660 state=present'