↓Перейти к основному содержимому

Курс Ansible - урок 15 - Переменные хостов

·176 слов·1 минута
Андрей Двуреченский
Автор
Андрей Двуреченский
Вводный курс Ansible - This article is part of a series.
Part 15: This Article

Курс Ansible - урок 15 - Переменные хостов
#

Ansible — это невероятная утилита для управления конфигурацией и подготовки к работе, которая позволяет автоматизировать все процессы. В этой серии вы узнаете всё, что нужно знать, чтобы использовать Ansible для повседневных административных задач.

host_vars (ubuntu web server)
#

 apache_package_name: apache2
 apache_service: apache2
 php_package_name: libapache2-mod-php

host_vars (ubuntu web server)
#

 apache_package_name: httpd
 apache_service: httpd
 php_package_name: php

main.yml (роль web_servers)
#


 - name: install web server packages
   tags: apache,apache2,centos,httpd,ubuntu
   package:
     name:
       - "Template:Apache package name"
       - "Template:Php package name"
     state: latest
   when: ansible_distribution == "CentOS"
 
 - name: start and enable apache
   tags: apache,centos,httpd
   service:
     name: "Template:Apache service"
     state: started
     enabled: yes
 
 - name: change e-mail address for admin
   tags: apache,centos,httpd
   lineinfile:
     path: /etc/httpd/conf/httpd.conf
     regexp: '^ServerAdmin'
     line: ServerAdmin somebody@somewhere.net
   when: ansible_distribution == "CentOS"
   notify: restart_apache
 
 - name: copy html file for site
   tags: apache,apache,apache2,httpd
   copy:
     src: default_site.html
     dest: /var/www/html/index.html
     owner: root
     group: root
     mode: 0644

Обработчики для роли web_servers
#

Создайте каталог обработчиков (в каталоге ролей):

 mkdir handlers

 - name: restart_apache
   tags: apache,centos,httpd
   service:
     name: "Template:Apache service"
     state: restarted

Оригинал

Вводный курс Ansible - This article is part of a series.
Part 15: This Article