manala.bind

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

:exclamation: DESAPROBACIÓN :exclamation:

Este repositorio y el rol asociado están desaprobados a favor de la Colección Ansible de Manala

Encontrarás información sobre su uso en el repositorio de la colección

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

Rol de Ansible: Bind Estado de Construcción

:exclamation: Reporta problemas y envía Pull Requests en el repositorio principal del Rol de Ansible :exclamation:

Este rol se encarga de la configuración de Bind.

Es parte de la pila Ansible de Manala pero puede usarse como un componente independiente.

Requisitos

Ninguno.

Dependencias

Ninguna.

Instalación

Ansible 2+

Usando el CLI de ansible galaxy:

ansible-galaxy install manala.bind

Usando un archivo de requisitos de ansible galaxy:

- src: manala.bind

Filtros del Rol

Nombre Descripción
manala_bind_zone_file Estandarizar nombres de archivos de zona

Variables del Rol

Nombre Predeterminado Tipo Descripción
manala_bind_install_packages ~ Array Paquetes de dependencia a instalar
manala_bind_install_packages_default ['bind9'] Array Paquetes de dependencia predeterminados a instalar
manala_bind_user 'bind' Cadena Usuario
manala_bind_group 'bind' Cadena Grupo
manala_bind_options ['-u {{ manala_bind_user }}'] Array Opciones
manala_bind_log_dir '/var/log/bind' Cadena Directorio de logs
manala_bind_configs [] Array Lista de archivos de configuración
manala_bind_configs_dir '/etc/bind' Cadena Directorio de archivos de configuración
manala_bind_zones_dir '/var/cache/bind' Cadena Directorio de archivos de zona
manala_bind_zones [] Array Lista de archivos de zona

Ejemplo de configuración

Opciones

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

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

Configuraciones

La ruta file es relativa al parámetro manala_bind_configs_dir.

El contenido de las configuraciones puede especificarse como template de jinja2 o content en texto plano.

Las entradas de configuración también admiten un parámetro state (present|absent) y un parámetro omit (false|true).

manala_bind_configs:
  - file: named.conf.options
    template: bind/configs/named.conf.options.j2
  - file: named.conf.local
    content: |
      // Considere agregar las zonas 1918 aquí, si no se utilizan en su
      // organización
      include "{{ manala_bind_configs_dir }}/zones.rfc1918";
  - file: named.conf.foo
    state: absent
  - file: named.conf.bar
    omit: true

Zonas - Estáticas

Es obligatorio especificar el parámetro zone o file. Si no está definido, se calcula el parámetro file a partir de zone.

La ruta file es relativa al parámetro manala_bind_zones_dir.

El contenido de las configuraciones puede especificarse como template de jinja2 o content en texto plano.

Las entradas de configuración también admiten un parámetro state (present|absent) y un parámetro omit (false|true).

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       ; serial
                  604800  ; refresh (1 semana)
                  86400   ; retry (1 día)
                  2419200 ; expire (4 semanas)
                  86400   ; mínimo (1 día)
                  )
      @  IN NS  ns.bar.local.
      ns IN A   172.16.1.1";
  - zone: baz.local
    state: absent
  - zone: qux.local
    omit: true

Zonas - Dinámicas

El parámetro zone es obligatorio, y el parámetro dynamic debe estar configurado en verdadero.

La configuración de la zona debe permitir actualizaciones desde (al menos) localhost.

Dada la naturaleza dinámica del archivo de zona, los parámetros content o template solo se tienen en cuenta cuando el archivo aún no existe. Esto se puede ver como un arranque de zona.

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       ; serial
                  604800  ; refresh (1 semana)
                  86400   ; retry (1 día)
                  2419200 ; expire (4 semanas)
                  86400   ; mínimo (1 día)
                  )
      @  IN NS  ns.foo.local.
      ns IN A   172.16.1.1";
    records:
      - { record: bar, value: 172.16.1.123 }

Ejemplo de playbook

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

Licencia

MIT

Información del autor

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

Acerca del proyecto

Handle bind

Instalar
ansible-galaxy install manala.bind
Licencia
Unknown
Descargas
47.7k
Propietario
Manala is an open source project supported by the french web agency ELAO providing advanced ansible roles for website's infrastructures and far more.