vars:定义variables,要有main.yml,其他文件include包含调用 templates:存储由template模块调用的模板文本 meta:定义当前角色的特殊设定及其依赖关系,要有main.yml的文件 defaults:要有main.yml的文件,用于设定默认变量 创建roles role存放的路径在配置文件/etc/ansible/ansible.cfg中定义:roles_path = /etc/ansible/roles...
例如对于Role中的template模块任务(template模块目前尚未介绍,之后遇到的时候再解释,或者各位可自搜其用法,现在将其当作copy模块即可),如果其参数src=my.cnf,则依次搜索如下路径: 1 2 3 4 5 6roles/first_role/templates/my.cnf roles/first_role/my.cnf roles/first_role/tasks/templates/my.cnf roles/first_r...
vars ##定义variables,要有main.yml,其他文件include包含调用 templates ##存储由template模块调用的模板文本 meta ##定义当前角色的特殊设定及其依赖关系,要有main.yml的文件 defaults ##要有main.yml的文件,用于设定默认变量 tests ##用于测试角色 #role存放的路径在配置文件ansible.cfg中定义# roles_path = path/...
files:用来存放由copy模块或script模块调用的文件。 templates:用来存放jinjia2模板,template模块会自动在此目录中寻找jinjia2模板文件。 tasks:此目录应当包含一个main.yml文件,用于定义此角色的任务列表,此文件可以使用include包含其它的位于此目录的task文件。 handlers:此目录应当包含一个main.yml文件,用于定义此角色中...
#ansible-playbook调用nginx角色 [root@ansible ~]# cat /root/nginx_role.yml --- - hosts: web_server remote_user: root roles: - { role: nginx, http_port: 8080, web_root: /data/ } [root@ansible ~]# cat /etc/ansible/hosts [web_server] 192.168.199.54 [root@ansible ~]# ansible-playb...
tail_files: true paths: {{ log_path}} fields: log_type: {{ log_type }} 如何使用这些模板文件呢,其实就是通过ansible的template模块,拿filebeat role中的updatecfg.yml定义的任务片段举例,将filebeat 相关的配置文件上传到主机上对应的目录。 - name: 传送配置文件 ...
示例1:使用template传输配置文件 cp /etc/nginx/nginx.conf templates/nginx.conf.j2 vim testtemplate.yml — –hosts: os6 remote_user: root tasks: –name: install package yum: name=nginx –name: copy template template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf ...
files :用于存放需要拷贝到目的主机的文件,例如,作为「copy」模块src参数的默认根目录。 template : 用于存放模版文件,格式为.j2,文件内容要符合Jinja2语法规则,通常使用「template」模块部署服务的配置文件。 meta : 用于存放role依赖列表,这个知识点后面会详细阐述。
任何副本、脚本、模板或包含任务(在角色中)都可以引用roles/x/{files,templates,tasks}/中的文件(dir 取决于任务),而不必相对或绝对地路径它们。 我们可以将其他关键字传递给该roles选项: 代码语言:javascript 复制 ---hosts:webserversroles:-common-role:foo_app_instancevars:dir:'/opt/a'app_port:5000tags...
### role内各目录中可用的文件 tasks目录:至少应该包含一个名为main.yml的文件,其定义了此角色的任务列表; 此文件可以使用include包含其它的位于此目录中的task文件; files目录:存放由copy或script等模块调用的文件; templates目录:template模块会自动在此目录中寻找Jinja2模板文件; handlers目录:此目录中...