manala.bind

#######################################################################################################

:exclamation: DEPRECJA :exclamation:

To repozytorium oraz powiązana rola są już nieaktualne na rzecz Manala Ansible Collection

Informacje na temat użycia znajdziesz w repozytorium kolekcji

#######################################################################################################

Rola Ansible: Bind Status budowy

:exclamation: Zgłaszaj problemy i wysyłaj Pull Requesty w głównym repozytorium ról Ansible :exclamation:

Ta rola zajmuje się konfiguracją Bind.

Jest częścią stosu Ansible Manala, ale można ją wykorzystać jako samodzielny komponent.

Wymagania

Brak.

Zależności

Brak.

Instalacja

Ansible 2+

Korzystając z narzędzia ansible galaxy cli:

ansible-galaxy install manala.bind

Używając pliku z wymaganiami ansible galaxy:

- src: manala.bind

Filtry roli

Nazwa Opis
manala_bind_zone_file Standaryzacja nazw plików stref

Zmienne roli

Nazwa Domyślna Typ Opis
manala_bind_install_packages ~ Tablica Pakiety zależności do zainstalowania
manala_bind_install_packages_default ['bind9'] Tablica Domyślne pakiety zależności do zainstalowania
manala_bind_user 'bind' String Użytkownik
manala_bind_group 'bind' String Grupa
manala_bind_options ['-u {{ manala_bind_user }}'] Tablica Opcje
manala_bind_log_dir '/var/log/bind' String Katalog logów
manala_bind_configs [] Tablica Lista plików konfiguracyjnych
manala_bind_configs_dir '/etc/bind' String Katalog plików konfiguracyjnych
manala_bind_zones_dir '/var/cache/bind' String Katalog plików strefowych
manala_bind_zones [] Tablica Lista plików strefowych

Przykład konfiguracji

Opcje

Zobacz: https://linux.die.net/man/8/named

manala_bind_options:
  - -u {{ manala_bind_user }}
  - -4 # tylko IPv4

Konfiguracje

Ścieżka file jest względna względem parametru manala_bind_configs_dir.

Zawartość konfigurowanych plików może być określona jako szablon jinja2 lub surowa zawartość.

Wpisy konfiguracyjne obsługują również stan (obecny|nieobecny) i parametr omit (fałsz|prawda).

manala_bind_configs:
  - file: named.conf.options
    template: bind/configs/named.conf.options.j2
  - file: named.conf.local
    content: |
      // Rozważ dodanie stref 1918 tutaj, jeśli nie są używane w Twojej
      // organizacji
      include "{{ manala_bind_configs_dir }}/zones.rfc1918";
  - file: named.conf.foo
    state: absent
  - file: named.conf.bar
    omit: true

Strefy - Statyczne

Parametr zone lub file jest obowiązkowy. Jeśli nie jest zdefiniowany, parametr file jest obliczany na podstawie zone.

Ścieżka file jest względna względem parametru manala_bind_zones_dir.

Zawartość konfigurowanych plików może być określona jako szablon jinja2 lub surowa zawartość.

Wpisy konfiguracyjne obsługują również stan (obecny|nieobecny) i parametr omit (fałsz|prawda).

manala_bind_zones:
  - zone: foo.local
    template: bind/zones/db.foo.local.j2
  - zone: bar.local
    content: |
      @  IN SOA ns.bar.local. contact.bar.local. (
                  1       ; numer seryjny
                  604800  ; odświeżenie (1 tydzień)
                  86400   ; ponowne próby (1 dzień)
                  2419200 ; wygaśnięcie (4 tygodnie)
                  86400   ; minimum (1 dzień)
                  )
      @  IN NS  ns.bar.local.
      ns IN A   172.16.1.1";
  - zone: baz.local
    state: absent
  - zone: qux.local
    omit: true

Strefy - Dynamiczne

Parametr zone jest obowiązkowy, a parametr dynamic musi być ustawiony na prawdę.

Konfiguracja strefy musi pozwalać na aktualizację z (przynajmniej) localhost.

Biorąc pod uwagę dynamiczny charakter pliku strefy, parametry content lub template są brane pod uwagę tylko wtedy, gdy plik jeszcze nie istnieje. Można to traktować jako bootstrapowanie strefy.

manala_bind_configs:
  - file: named.conf.local
    content: |
      zone "foo.local" {
          type master;
          file "{{ 'foo.local'|manala_bind_zone_file }}";
          allow-update { localhost; };
      };

manala_bind_zones:
  - zone: foo.local
    dynamic: true
    content: |
      @  IN SOA ns.foo.local. contact.foo.local. (
                  1       ; numer seryjny
                  604800  ; odświeżenie (1 tydzień)
                  86400   ; ponowne próby (1 dzień)
                  2419200 ; wygaśnięcie (4 tygodnie)
                  86400   ; minimum (1 dzień)
                  )
      @  IN NS  ns.foo.local.
      ns IN A   172.16.1.1";
    records:
      - { record: bar, value: 172.16.1.123 }

Przykładowy playbook

- hosts: serwery
  roles:
    - { role: manala.bind }

Licencja

MIT

Informacje o autorze

Manala (http://www.manala.io/)

O projekcie

Handle bind

Zainstaluj
ansible-galaxy install manala.bind
Licencja
Unknown
Pobrania
47.7k
Właściciel
Manala is an open source project supported by the french web agency ELAO providing advanced ansible roles for website's infrastructures and far more.