使用ansible临时命令完成以下操作

发布于:2025-08-31 ⋅ 阅读:(15) ⋅ 点赞:(0)

使用ansible临时命令完成以下操作

1、对node1主机操作,安装httpd服务,网页存放在/www目录中,能够通过curl http://node1访问到网页内容为welcome to luoqi

2、对node2主机操作,创建一个1000MiB的分区,格式化成ext4的文件系统,并挂载到/testdir目录下。
使用ansible node2 -m shell -a 'df -Th’验证

3、对node3主机操作创建卷组datastorage,逻辑卷database,大小为800M,格式化为xfs的文件系统,并挂载到/lv目录下
使用ansible node3 -m shell -a 'df -Th’验证

1. 在node1上安装httpd服务并配置网页

配置YUM仓库

ansible all -m yum_repository -a 'file=server name=BASE 
description="software base"
baseurl=http://ansible.example.com/rhel9/BaseOS 
enabled=yes 
gpgcheck=no '

ansible all -m yum_repository -a 'file=server name=STREAM 
description="software stream" 
baseurl=http://ansible.example.com/rhel9/AppStream 
enabled=yes 
gpgcheck=no '
#安装httpd软件
ansible node1 -m yum -a "name=httpd state=installed" 
#创建文件
ansible node1 -m file -a "path=/www state=directory" 
#将content内容字符串写入dest路径文件
ansible node1 -m copy -a "content='welcome to luoqi' dest=/www/index.html" 
#替换文件中的字符串,backup=yes 设置文件备份:
# 修改DocumentRoot路径
ansible node1 -m replace -a "path=/etc/httpd/conf/httpd.conf regexp='^DocumentRoot \"/var/www/html\"' replace='DocumentRoot \"/www\"' backup=yes"
# 修改Directory路径
ansible node1 -m replace -a "path=/etc/httpd/conf/httpd.conf regexp='<Directory \"/var/www/html\">' replace='<Directory \"/www\">' backup=yes"
#允许 HTTP 流量
ansible all -m firewalld -a 'service=http permanent=yes state=enabled immediate=yes'
#设置 SELinux 上下文
ansible node1 -m sefcontext -a 'target="/www(/.*)?" setype=httpd_sys_content_t state=present'
ansible node1 -m shell -a 'restorecon -Rv /www'
#启动httpd服务并设置开机自启:
ansible node1 -m service -a "name=httpd state=restarted enabled=yes" 
通过curl  http://node1访问到网页内容

2. 在node2上创建分区、格式化并挂载

ansible node2 -m parted -a "device=/dev/sdb number=1 part_end=1010MiB state=present" 
ansible node2 -m filesystem -a "fstype=ext4 dev=/dev/sdb1" 
ansible node2 -m file -a "path=/testdir state=directory" 
ansible node2 -m mount -a "path=/testdir src=/dev/sdb1 fstype=ext4 state=mounted" 
# 验证
ansible node2 -m shell -a 'df -Th'

3. 在node3上创建LVM、格式化并挂载

ansible node3 -m lvg -a "vg=datastorage pvs=/dev/sdb" 
ansible node3 -m lvol -a "vg=datastorage lv=database size=800M" 
ansible node3 -m filesystem -a "fstype=xfs dev=/dev/datastorage/database" 
ansible node3 -m file -a "path=/lv state=directory" 
ansible node3 -m mount -a "path=/lv src=/dev/datastorage/database fstype=xfs state=mounted" 
# 验证
ansible node3 -m shell -a 'df -Th'

网站公告

今日签到

点亮在社区的每一天
去签到