ansible作业(四)
创始人
2024-05-01 05:40:04
0

题目

1、如果当前受管主机的根分区容量大于1G,则安装httpd和mariadb-server软件包,如果httpd和mariadb服务未运行则运行该服务。

2、将example.conf文件复制到/etc/httpd/conf.d/目录,example.conf文件内容如下:


servername 0.0.0.0
documentroot /var/www/html

allowoverride none
require all granted

如果/etc/httpd/conf.d/目录下的文件更新,则重启httpd服务。配置/var/www/html/index.html文件内容如下:

zuoye

3、创建一个playbook,要求如下:

​ 该playbook运行在所有受控节点
​ 该playbook覆盖/etc/message文件的内容
​ 在dev主机组的主机上,内容是:Development
​ 在test主机组的主机上,内容是:Test

答案

1、如果当前受管主机的根分区容量大于1G,则安装httpd和mariadb-server软件包,如果httpd和mariadb服务未运行则运行该服务。ansible_mounts.block_available

[admin@centos7_server ~]$ vim test6.yml
---
- hosts: alltasks:- name: install pkgyum: name: - httpd- mariadb-serverwhen: item.mount == "/" and item.size_total > 1000000000loop: "{{ ansible_facts.mounts }}"- name: start serviceservice: name: "{{ item }}"state: startedloop:- httpd- mariadb[admin@centos7_server ~]$ ansible-playbook test6.yml PLAY [all] ********************************************************************************************************TASK [Gathering Facts] ********************************************************************************************
ok: [node1]
ok: [node2]TASK [install pkg] ************************************************************************************************
changed: [node1] => (item={u'block_used': 1327574, u'uuid': u'cd573dbd-6dd4-42e5-a944-c9c83da3f3ae', u'size_total': 32196526080, u'block_total': 7860480, u'mount': u'/', u'block_available': 6532906, u'size_available': 26758782976, u'fstype': u'xfs', u'inode_total': 15728640, u'inode_available': 15603509, u'device': u'/dev/mapper/rhel-root', u'inode_used': 125131, u'block_size': 4096, u'options': u'rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota'})
skipping: [node1] => (item={u'block_used': 65479, u'uuid': u'8f1b1f6a-3db6-418c-b5d5-a815d127358f', u'size_total': 893263872, u'block_total': 218082, u'mount': u'/boot', u'block_available': 152603, u'size_available': 625061888, u'fstype': u'xfs', u'inode_total': 439296, u'inode_available': 438986, u'device': u'/dev/sda1', u'inode_used': 310, u'block_size': 4096, u'options': u'rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota'}) 
changed: [node2] => (item={u'block_used': 1296984, u'uuid': u'e24060ab-f1c6-4dc9-9fc4-23f1258dbdf0', u'size_total': 10726932480, u'block_total': 2618880, u'mount': u'/', u'block_available': 1321896, u'size_available': 5414486016, u'fstype': u'xfs', u'inode_total': 5242880, u'inode_available': 5118051, u'device': u'/dev/mapper/rhel-root', u'inode_used': 124829, u'block_size': 4096, u'options': u'rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota'})
skipping: [node2] => (item={u'block_used': 20719, u'uuid': u'3e9ea6a9-0268-43c2-88b4-3c4dfcc11d56', u'size_total': 5358223360, u'block_total': 1308160, u'mount': u'/home', u'block_available': 1287441, u'size_available': 5273358336, u'fstype': u'xfs', u'inode_total': 2621440, u'inode_available': 2621141, u'device': u'/dev/mapper/rhel-home', u'inode_used': 299, u'block_size': 4096, u'options': u'rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota'}) 
skipping: [node2] => (item={u'block_used': 69416, u'uuid': u'edfac4a7-2906-4f23-9ef7-2eff25e07ee1', u'size_total': 3210739712, u'block_total': 783872, u'mount': u'/boot', u'block_available': 714456, u'size_available': 2926411776, u'fstype': u'xfs', u'inode_total': 1572864, u'inode_available': 1572554, u'device': u'/dev/nvme0n1p1', u'inode_used': 310, u'block_size': 4096, u'options': u'rw,seclabel,relatime,attr2,inode64,logbufs=8,logbsize=32k,noquota'}) TASK [start service] **********************************************************************************************
changed: [node1] => (item=httpd)
changed: [node2] => (item=httpd)
changed: [node2] => (item=mariadb)
changed: [node1] => (item=mariadb)PLAY RECAP ********************************************************************************************************
node1                      : ok=3    changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node2                      : ok=3    changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0 

2、将example.conf文件复制到/etc/httpd/conf.d/目录,example.conf文件内容如下:


servername 0.0.0.0
documentroot /var/www/html

allowoverride none
require all granted

如果/etc/httpd/conf.d/目录下的文件更新,则重启httpd服务。配置/var/www/html/index.html文件内容如下:

zuoye
[admin@centos7_server ~]$ vim test6-1.yml 
---
- hosts: alltasks: - copy: src: example.confdest: /etc/httpd/conf.d/example.confnotify: restart httpd- copy: content: "zuoye\n"dest: /var/www/html/index.htmlhandlers: - name: restart httpdservice: name: httpdstate: restarted[admin@centos7_server ~]$ ansible-playbook test6-1.yml PLAY [all] ********************************************************************************************************TASK [Gathering Facts] ********************************************************************************************
ok: [node2]
ok: [node1]TASK [copy] *******************************************************************************************************
ok: [node2]
ok: [node1]TASK [copy] *******************************************************************************************************
changed: [node1]
changed: [node2]PLAY RECAP ********************************************************************************************************
node1                      : ok=3    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node2                      : ok=3    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

3、创建一个playbook,要求如下:

​ 该playbook运行在所有受控节点
​ 该playbook覆盖/etc/message文件的内容
​ 在dev主机组的主机上,内容是:Development
​ 在test主机组的主机上,内容是:Test

[admin@centos7_server ~]$ vim test6-2.yml
---
- hosts: alltasks: - copy: content: "development"dest: /etc/messagewhen: inventory_hostname in groups.dev- copy: content: "Test"dest: /etc/messagewhen: inventory_hostname in groups.test[admin@centos7_server ~]$ ansible-playbook test6-2.yml PLAY [all] ********************************************************************************************************TASK [Gathering Facts] ********************************************************************************************
ok: [node1]
ok: [node2]TASK [copy] *******************************************************************************************************
skipping: [node1]
changed: [node2]TASK [copy] *******************************************************************************************************
skipping: [node2]
changed: [node1]PLAY RECAP ********************************************************************************************************
node1                      : ok=2    changed=1    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   
node2                      : ok=2    changed=1    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   

相关内容

热门资讯

粉丝把范丞丞爸爸认成范丞丞,他... 粉丝把范丞丞爸爸认成范丞丞,他们长得很像吗?他们长得确实很像范丞丞,继承了他爸的大部分基因,他跟他爸...
电视剧《咱家那些事》的片头曲叫... 电视剧《咱家那些事》的片头曲叫什么名字?片头曲 《好大一个家》 从小盼着快...
打坐时如何净心 打坐时如何净心净,就是清除心中的杂念,与自然融合净心之妙法 莫若至诚持念阿弥陀佛圣号 打坐也当以念佛...
奇瑞董事长尹同跃:质比量重要,... “我们现在已经调整了(打法),不再追求销量的排名,我们认为质比量重要。”7月11日,在2025中国汽...
中粮可口可乐甘肃厂再次启动“净... 近日,甘肃陇南康县遭遇强降雨天气过程,其中碾坝镇累计降雨量达221.8毫米。强降雨引发山洪、滑坡及泥...
百合股份“回扣门”发酵:内部审... 近日,有“营养保健食品代工第一股”之称的威海百合生物技术股份有限公司(股票代码:603102.下称“...
新大唐双龙传(王晶版)总共共多... 新大唐双龙传(王晶版)总共共多少集刚播放的时候听说是四部 每部40集一共160集 到底多少集呢第一部...
美轰炸机参与美日韩空中演习 据韩国国防部消息,美日韩7月11日在韩国济州岛南部举行联合空中演习,美军战略轰炸机B-52H参与。韩...
29岁高学历女演员被曝当服务员 转自:扬子晚报近日,29岁女演员宇书田在餐厅兼职当服务员,引发关注。宇书田告诉记者,她硕士毕业于英国...
以更多诚意和远见“疏通”红海航... 本月以来,以色列对也门胡塞武装控制区的目标发动空袭,胡塞武装加大对红海水域与以色列有关商船的袭击,这...