当前位置: 首页 > news >正文

创建和使用角色(RHCE)

题目:

    创建和使用角色

    根据下列要求,在 /home/curtis/ansible/roles 中创建名为 apache 的角色:

        httpd 软件包已安装,设为在系统启动时启用并启动

        防火墙已启用并正在运行,并使用允许访问 Web 服务器的规则

        模板文件 index.html.j2 已存在,用于创建具有以下输出的文件 /var/www/html/index.html : Welcome to HOSTNAME on IPADDRESS

        其中,HOSTNAME 是受管节点的完全限定域名,IPADDRESS 则是受管节点的 IP 地址。

    按照下方所述,创建一个使用此角色的playbook /home/curtis/ansible/newrole.yml:

该playbook在webservers主机组的主机上运行

根据下列要求,在 /home/curtis/ansible/roles 中创建名为 apache 的角色:

 改题目一共要创建三个文件

 1.角色配置文件

角色配置文件1:

httpd 软件包已安装,设为在系统启动时启用并启动;

防火墙已启用并正在运行,并使用允许访问 Web 服务器的规则

在roles/apache/tasks/main.yml中主要做了四个操作

1)安装软件httpd和firewalld

2)设置软件开机重启

3)设置防火墙上http服务通过

4)对/var/www/html/index.htm即http服务首页文件进行配置

 vim roles/apache/tasks/main.yml

 

- yum:name: httpd,firewalldstate: installed
- service:name: httpdenabled: yesstate: restarted
- service:name: firewalldenabled: yesstate: restarted
- firewalld:service: httppermanent: yesimmediate: yesstate: enabled
- template:src: index.html.j2dest: /var/www/html/index.htmlsetype: httpd_sys_content_t

 2.角色配置文件2

创建一个使用此角色的playbook /home/curtis/ansible/newrole.yml:

该playbook在webservers主机组的主机上运行

运行主机是webservers主机组内,角色是apache,没啥好说的

vim newrole.yml 

 

- hosts: webserversroles:- apache

 3.角色配置文件三

  模板文件 index.html.j2 已存在,用于创建具有以下输出的文件 /var/www/html/index.html : Welcome to HOSTNAME on IPADDRESS

        其中,HOSTNAME 是受管节点的完全限定域名,IPADDRESS 则是受管节点的 IP 地址。

j2文件是模板文件,然后  {{ ansible_fqdn }}和{{ ansible_default_ipv4.address }}是事实变量,忘啦说事实变量获取方法啦,放在文章最后啦

vim roles/apache/templates/index.html.j2 

Welcome to {{ ansible_fqdn }} on {{ ansible_default_ipv4.address }}

获取事实变量的命令

ansible all -m setup

我一般喜欢把他放到一个文件里,然后进入文件搜索自己想要的命令,该文件命名为txt吧

ansible all -m setup > txt
ls

http://www.lryc.cn/news/119561.html

相关文章:

  • Leetcode 583 两个字符串的删除操作(经典)
  • c#实现工厂模式
  • c#在设计时调试自定义 Windows 窗体控件
  • Ajax 笔记(二)—— Ajax 案例
  • 微信小程序隐私协议模板
  • Three.js WebXR沉浸式渲染简明教程
  • flask使用cookie (设置cookie与查看cookie内容)
  • 信息学奥赛一本通——1281:最长上升子序列
  • vue3+antv x6自定义节点样式
  • Arcgis中直接通过sde更新sqlserver空间数据库失败
  • 使用gewe框架进行微信群组管理(一)
  • 【Linux】UDP协议——传输层
  • 【Linux进阶之路】进程(上)
  • 爬虫018_urllib库_cookie反爬_post请求百度翻译获取百分翻译内容_以及详细翻译内容---python工作笔记037
  • 【Nginx】Nginx网站服务
  • go语言从0基础到安全项目开发实战
  • Kubernetes Service 工作原理
  • 面部表情识别4:C++实现表情识别(含源码,可实时检测)
  • 提升Element UI分页查询用户体验与交互:实现修改未保存提示
  • UML-时序图
  • Seata - 入门笔记
  • springboot使用aop排除某些方法,更新从另外一张表,从另外一张表批量插入
  • Go 语言面试题(二):实现原理
  • SAP MM学习笔记16-在库品目评价
  • Azure通过自动化账户实现对资源变更
  • 使用luarocks安装cjson并使用cjson
  • 【已解决】mac端 sourceTree 解决remote: HTTP Basic: Access denied报错
  • javaee dom4j读取xml文件
  • 各类背包问题
  • 《练习100》91~95