标签:httpd name roles cat ansible conf 使用 main yml
1 roles的介绍
以特定的层级目录结构进行组织的tasks、variables、handlers、templates、files等;相当于函数的调用把各个功能切割成片段来执行
2 roles的作用
主要作用是重用playbook,例如我们无论安装什么软件都会安装时间同步服务,那么每个playbook都要编写ntp task。我们可以将ntp task写好,等到用的时候再调用就行了。ansible中将其组织成role,他有着固定的组织格式。以便playbook调用
3 目录结构
案例
目录结构
roles/
└── httpd #调用名
├── handlers #重启触发器
│ └── main.yml
├── role_httpd.yml #调用文件
├── tasks #工作集合
│ └── main.yml
├── templates #模板
│ ├── httpd.conf.c6.jinja2
│ └── httpd.conf.c7.jinja2
└── vars #变量
└── main.yml
分步走
1 cat httpd/tasks/main.yml
- name: install httpd package
yum:
name: httpd
state: present
- name: install configure file
template: src=httpd.conf.c{{ ansible_distribution_major_version }}.jinja2 dest=/etc/httpd/conf/httpd.conf
tags: instconf
notify:
- restart httpd service
- name: start httpd service
service:
name: httpd
state: started
enabled: true
2 cat httpd.conf.c6.jinja2
cat httpd.conf.c7.jinja2
就是httpd 主配置文件 复制两份 然后修改了端口号
Listen {{ httpd_port }}
3 cat httpd/vars/main.yml
httpd_port: 8080
4 cat httpd/handlers/main.yml
- name: restart httpd service
service:
name: httpd
state: restarted
5 调用文件方式
cat httpd/role_httpd.yml
- hosts: web
remote_user: root
roles:
- { role: httpd}
关于调用文件的方式挺多的 这里就不多说了
关于调用文件的方式挺多的 这里就不多说了
开始模拟执行
ansible-playbook httpd/role_httpd.yml -C
命令结果
标签:httpd,name,roles,cat,ansible,conf,使用,main,yml 来源: https://www.cnblogs.com/tanff/p/15233237.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。