artem_shestakov.nginx

Rola Ansible Nginx

========= Build

Rola Ansible do instalacji Nginx na systemach familijnych Debian/Red Hat.

Wymagania


Brak

Zmienne


Ta rola używa trzech typów zmiennych. Pierwszy i drugi zależą od typu instalacji. Trzeci to zmienne ogólne niezależne od wyboru typu instalacji.

Zmienne ogólne

  • install_from - Typ instalacji Nginx. [source | repo]. Domyślnie: repo
  • nginx_http_add - Lista dodatkowych parametrów, które zostaną dodane do sekcji http w pliku konfiguracyjnym Nginx. Domyślnie: []
  • nginx_stream_add - Lista dodatkowych parametrów, które zostaną dodane do sekcji stream w pliku konfiguracyjnym Nginx. Domyślnie: []
  • ssl_cert_path - Katalog dla certyfikatów SSL używanych przez Nginx. Domyślnie: \etc\nginx\ssl

Serwer WWW

  • nginx_virtual_servers - lista wirtualnych serwerów. Domyślnie: []
    • listen - określa adres IP i port (lub gniazdo UNIX i ścieżkę), na którym serwer nasłuchuje żądań
    • server_name - lista nazw wirtualnego serwera
    • locations - lista lokacji
      • location - konfiguracja zależna od URI żądania.
      • params - ustawia parametry dla lokalizacji. Na przykład proxy_pass, return, rewrite itd.

Ładowanie równoważące TCP i UDP

  • tcp_udp_nlb - Lista słowników backendowych serwerów do równoważenia obciążenia TCP i UDP z polami
    • name - nazwa upstreama
    • listen - port do nasłuchiwania przychodzącego ruchu na proxy nginx
    • servers - lista serwerów backendowych
  • stub_status - Jeśli prawda, rola ustawi narzędzie monitorujące Nginx według ngx_http_stub_status_module. Domyślnie: false
  • stub_status_settings - Słownik ustawień stub_status z polami
    • listen - Ustala adres i port dla IP, lub ścieżkę dla gniazda UNIX, na którym serwer będzie akceptować żądania. Domyślnie: 127.0.0.1:80
    • server_name - Ustala nazwy wirtualnego serwera. Domyślnie: 127.0.0.1
    • location - Ustala konfigurację zależną od URI żądania. Domyślnie: /nginx_status

SSL

  • proxy_ssl - Włącza protokół SSL/TLS dla połączeń z serwerem proxy.
  • proxy_ssl_certificate - Wskazuje plik z certyfikatem w formacie PEM używanym do uwierzytelniania z proxy HTTPS.
  • proxy_ssl_certificate_key - Wskazuje plik z kluczem tajnym w formacie PEM używanym do uwierzytelniania z proxy HTTPS.
  • proxy_ssl_ciphers - Wskazuje włączone szyfry dla połączeń z serwerem proxy. Szyfry są określone w formacie zrozumiałym dla biblioteki OpenSSL.
  • ssl_certificate - Wskazuje plik z kluczem tajnym w formacie PEM dla danego wirtualnego serwera.
  • ssl_certificate_key - Wskazuje plik z kluczem tajnym w formacie PEM używanym do uwierzytelniania z serwerem proxy.

Zmienne dla instalacji z repozytorium

Zmienne dla instalacji z źródła

  • nginx_with_modules - Lista modułów Nginx, które nie są domyślne. Lista modułów znajduje się tutaj. Domyślnie: []

Przykład Playbooka

---
- name: Instalacja aplikacji 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

Przenieś certyfikaty na serwer Nginx

  1. Umieść swoje certyfikaty w katalogu
  2. Ustaw zmienne
  • copy_ssl_certs - prawda, jeśli chcesz przenieść certyfikaty z lokalnej maszyny na zdalny serwer Nginx
  • user_certs_path - lista katalogów z certyfikatami SSL, które mają być przeniesione na Nginx. Domyślnie: ['./files/ssl/*']

Licencja

BSD, MIT

Informacje o autorze

Artem Shestakov (artem.s.shestakov@gmail.com)

O projekcie

Ansible role to install Nginx on Debian/Red Hat OS family.

Zainstaluj
ansible-galaxy install artem_shestakov.nginx
Licencja
Unknown
Pobrania
219
Właściciel