网站开发项目挣钱吗,wordpress安装到ESC,建e网六面图合成顺序,北京外包公司排行榜1前言
角色目录如下#xff08;分别为httpd角色和nginx角色#xff09; handlers/ #xff1a;至少应该包含一个名为 main.yml 的文件#xff1b; 其它的文件需要在此文件中通过include 进行包含 vars/ #xff1a;定义变量#xff0c;至少应该包含一个名为 main.yml 的…1前言
角色目录如下分别为httpd角色和nginx角色 handlers/ 至少应该包含一个名为 main.yml 的文件 其它的文件需要在此文件中通过include 进行包含 vars/ 定义变量至少应该包含一个名为 main.yml 的文件 其它的文件需要在此文件中通 过include进行包含 meta/ 定义当前角色的特殊设定及其依赖关系 , 至少应该包含一个名为 main.yml 的 文件 其它 文件需在此文件中通过include进行包含 default/ 设定默认变量时使用此目录中的 main.yml 文件 roles/appname 目录结构 tasks 目录至少应该包含一个名为main.yml的文件其定义了此角色的任务列表 此文件可以 使用include包含其它的位于此目录中的task文件 files 目录存放由 copy 或 script 等模块调用的文件 templates 目录 template 模块会自动在此目录中寻找 Jinja2 模板文件 handlers 目录此目录中应当包含一个 main.yml 文件用于定义此角色用到的各 handler 在 handler 中使用 include 包含的其它的 handler 文件也应该位 于此目录中 vars 目录应当包含一个 main.yml 文件用于定义此角色用到的变量 meta 目录应当包含一个 main.yml 文件用于定义此角色的特殊设定及其依赖关 系 default 目录为当前角色设定默认变量时使用此目录应当包含一个 main.yml 文件 2创建httpd角色 mkdir roles/httpd/tasks -pv mkdir roles/httpd/{handlers,files} 2 创建目标文件 cd roles/httpd/tasks/ touch install.yml config.yml service .yml 3 vim install.yml - name: install httpd package yum: name httpd vim config.yml - name: config file copy: src httpd.conf dest /etc/httpd/conf/ backup yes vim service .yml - name: start service service : name httpd state started enabled yes 4 创建 main.yml 主控文件 , 调用以上单独的 yml 文件 , main.yml 定义了谁先执行谁后执行的顺序 vim main.yml - include: install.yml - include: config.yml - include: service .yml 5 准备 httpd.conf 文件 , 放到 httpd 单独的文件目录下 cp /app/ansible/flies/httpd.conf ../files/ 6 创建一个网页 vim flies/index.html h1 welcome toyzh home \h 1 7 创建网页的 yml 文件 vim tasks/index.yml - name: index.html copy: src index.html dest /var/www/html 8 将网页的 yml 文件写进 main.yml 文件中 vim main.yml - include: install.yml - include: config.yml - include: index.yml - include: service .yml 9 在 handlers 目录下创建 handler 文件 main.yml vim handlers/main.yml - name: restart service httpd service : name httpd state restarted 10 创建文件调用 httpd 角色 cd /app/ansible/roles vim role_httpd.yml --- # httpd role - hosts: appsrvs remote_user: root roles: # 调用角色 - role: httpd 11 查看目录结构 tree . httpd ├── files │ ├── httpd.conf │ └── index.html ├── handlers │ └── main.yml └── tasks ├── config.yml ├── index.yml ├── install.yml ├── main.yml └── service .yml 12 ansible-playbook role_httpd.yml 3创建nginx角色 1 创建 nginx 角色目录 mkdir -pv /app/ansible/role cd /app/ansible/role mkdir nginx{tesks,templates,hanslers} -pv 2 创建任务目录 cd tasks/ touch insatll.yml config.yml service .yml file.yml user.yml 创建 main.yml 文件定义任务执行顺序 vim main.yml - include: user.yml - include: insatll.yml - include: config.yml - include: file.yml - include: service .yml 3 准备配置文件 (centos7 、 8) ll /app/ansible/role/nginx/templates/ nginx8.conf.j2 4 定义任务 vim tasks/install.yml - name: install yum: name nginx vim tasks/config.yml - name: config file template: src nginx8.conf.j2 dest /etc/nginx/nginx.conf when: ansible_distribution_major_version 8 notify: restrat vim tasks/file.yml 跨角色调用 file.yum 文件 , 实现文件复用 - name: index.html copy: src roles/httpd/files/index.html dest /usr/share/nginx/html/ vim tasks/service.yml - nmae: start service service : name nginx state started enabled yes vim handlers/main.yml - name: restrat service : name nginx state restarted vim roles/role_nginix.yml --- #test rcle - hosts: appsrvs roles: - role: nginx 5 测试安装 ansible-playbook role_nginx.yml