playbook变量(六)template 基本使用

一、在剧本的当前目录创建templates文件夹(template只能在剧本使用)

 二、例子

2.1

[root@linux-node1 ansible]# cat test_template.yaml 
---
- hosts: date
  remote_user: root

  tasks:
    - name: install package
      yum: name=nginx
    - name: copy template
      template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
    - name: start service
      service: name=nginx state=started enabled=yes
ansible-playbook   test_template.yaml

2.1修改templates文件(ansible_processor_vcpus cup个数)

vim templates/nginx.conf.j2

 handlers、notify定义重启规则

[root@linux-node1 ansible]# cat test_template1.yaml 
---
- hosts: date
  remote_user: root

  tasks:
    - name: install package
      yum: name=nginx
    - name: copy template
      template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
      notify: restart service
    - name: start service
      service: name=nginx state=started enabled=yes

  handlers:
    - name: restart service
      service: name=nginx state=restarted 
ansible-playbook   test_template1.yaml

 3.1修改端口(自定义变量)

vim /etc/ansible/hosts

vim templates/nginx.conf.j2

 4.1、在剧本中定义变量

[root@linux-node1 ansible]# cat test_template1.yaml 
---
- hosts: date
  remote_user: root
  vars:
    - http_port: 99

  tasks:
    - name: install package
      yum: name=nginx
    - name: copy template
      template: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf
      notify: restart service
    - name: start service
      service: name=nginx state=started enabled=yes

  handlers:
    - name: restart service
      service: name=nginx state=restarted

最后结果:/etc/ansible/hosts( [date:vars]组 < [date]中 )< ansible-playbook <ansible-playbook -e定义
posted @ 2020-01-02 11:01  随心朝阳  阅读(843)  评论(0编辑  收藏  举报