nginx
Роль Nginx для Ansible
=========
Роль Ansible для установки Nginx на операционных системах семейства Debian/Red Hat.
Требования
Нет
Переменные
Эта роль использует три типа переменных. Первые две зависят от типа установки. Третьи - общие переменные, не зависящие от выбора типа установки.
Общие переменные
- install_from - Тип установки Nginx. [source | repo]. По умолчанию:
repo
- nginx_http_add - Список дополнительных параметров, которые будут добавлены в секцию http конфигурационного файла Nginx. По умолчанию: []
- nginx_stream_add - Список дополнительных параметров, которые будут добавлены в секцию stream конфигурационного файла Nginx. По умолчанию: []
- ssl_cert_path - Каталог для SSL сертификатов, используемых Nginx. По умолчанию:
\etc\nginx\ssl
Веб-сервер
- nginx_virtual_servers - Список виртуальных серверов. По умолчанию: []
- listen - Указывает IP-адрес и порт (или путь и сокет Unix), на которых сервер принимает запросы.
- server_name - Список имен виртуального сервера.
- locations - Список locations
- location - Конфигурация в зависимости от URI запроса.
- params - Устанавливает параметры для location. Например
proxy_pass
,return
,rewrite
и т.д.
Balancing TCP и UDP
- tcp_udp_nlb - Список словарей (upstreams) бэкэнд-серверов для балансировки нагрузки TCP и UDP с полями
- name - Имя upstream.
- listen - Порт для прослушивания входящего трафика на nginx proxy.
- servers - Список бэкэнд-серверов.
- stub_status - Если true, роль будет настраивать инструмент мониторинга Nginx с помощью ngx_http_stub_status_module. По умолчанию:
false
- stub_status_settings - Словарь настроек stub_status с полями
- listen - Устанавливает адрес и порт для IP, или путь для сокета UNIX, на котором сервер будет принимать запросы. По умолчанию:
127.0.0.1:80
- server_name - Устанавливает имена виртуального сервера. По умолчанию:
127.0.0.1
- location - Устанавливает конфигурацию в зависимости от URI запроса. По умолчанию:
/nginx_status
- listen - Устанавливает адрес и порт для IP, или путь для сокета UNIX, на котором сервер будет принимать запросы. По умолчанию:
SSL
- proxy_ssl - Включает протокол SSL/TLS для соединений с проксируемым сервером.
- proxy_ssl_certificate - Указывает файл с сертификатом в формате PEM, используемым для аутентификации к проксируемому HTTPS-серверу.
- proxy_ssl_certificate_key - Указывает файл с секретным ключом в формате PEM, используемым для аутентификации к проксируемому HTTPS-серверу.
- proxy_ssl_ciphers - Указывает разрешенные шифры для соединений с проксируемым сервером. Шифры указываются в формате, понимаемом библиотекой OpenSSL.
- ssl_certificate - Указывает файл с секретным ключом в формате PEM для данного виртуального сервера.
- ssl_certificate_key - Указывает файл с секретным ключом в формате PEM, используемым для аутентификации к проксируемому серверу.
Переменные для установки из репозитория
Переменные для установки из исходников
- nginx_with_modules - Список нестандартных модулей Nginx. Список модулей здесь. По умолчанию: []
Пример Playbook
---
- name: Установка приложения Nginx
hosts: all
remote_user: vagrant
become: true
roles:
- artem_shestakov.nginx
vars:
- install_from: source
- nginx_with_modules:
- --with-file-aio
- --with-ipv6
- --with-http_ssl_module
- --with-http_v2_module
- --with-http_realip_module
- --with-http_addition_module
- --with-http_xslt_module=dynamic
- --with-http_image_filter_module=dynamic
- --with-http_sub_module
- --with-http_dav_module
- --with-http_flv_module
- --with-http_mp4_module
- --with-http_gunzip_module
- --with-http_gzip_static_module
- --with-http_random_index_module
- --with-http_secure_link_module
- --with-http_degradation_module
- --with-http_slice_module
- --with-http_stub_status_module
- --with-http_perl_module=dynamic
- --with-http_auth_request_module
- --with-mail=dynamic
- --with-mail_ssl_module
- --with-stream=dynamic
- --with-stream_ssl_module
- --with-debug
- tcp_udp_nlb:
- name: example
listen:
- 192.168.1.1:443
- 192.168.1.2:443
servers:
- 10.79.1.196:443
- name: example2
listen:
- 10002
servers:
- 10.79.1.203:5601
Копирование сертификатов на сервер Nginx
- Поместите свои сертификаты в каталог.
- Установите переменные.
- copy_ssl_certs - true, если нужно скопировать ваши сертификаты с локальной машины на удаленный сервер Nginx.
- user_certs_path - список каталогов с вашими SSL сертификатами, которые нужно скопировать на Nginx. По умолчанию: ['./files/ssl/*']
Лицензия
BSD, MIT
Информация об авторе
Артем Шестаков (artem.s.shestakov@gmail.com)
Установить
ansible-galaxy install artem-shestakov/ansible_nginx
Лицензия
Unknown
Загрузки
210
Владелец