vnode.ypclient

Rol de Ansible: ypclient

CI

Esta rol instala y configura el cliente YP/NIS que es parte de OpenBSD y otros sistemas operativos BSD*. Actualmente, este rol solo es compatible con OpenBSD, con la intención de agregar soporte para FreeBSD y NetBSD en una actualización futura cercana.

Donde sea aplicable, este rol se refiere a la documentación del sistema, por ejemplo, la página de manual yp(8).

Requisitos

Operación

No se requieren roles ni módulos externos para usar este rol.

Pruebas y Desarrollo

Para pruebas y desarrollo, este rol depende de los siguientes roles y herramientas externas:

  • Rol vnode.ypserver
  • Vagrant (soportando el proveedor de VirtualBox o VMWare)
  • VagrantCloud (específicamente, la caja generic/openbsd6)

Variables del Rol

Las variables disponibles se enumeran a continuación, incluyendo sus valores predeterminados (ver defaults/main.yml). Todas estas deben implementarse. Si encuentras que no lo están, por favor abre un issue en el repositorio de GitHub.

Variables requeridas

Las siguientes variables deben configurarse al usar el rol.

ypclient_domain: ""

Requerido, debe tener un nombre de dominio NIS válido. Este es el nombre del dominio NIS que deseas configurar.

ypclient_servers: []

Requerido, debe listar el conjunto de servidores NIS para el dominio.

ypclient_serverinfo: {}

Requerido, pero puede estar vacío si los servidores NIS para el dominio se pueden encontrar en DNS o /etc/hosts.

Si no está vacío, este diccionario contiene direcciones IPv4 y/o IPv6 para los servidores del dominio. El rol luego poblará /etc/hosts con las líneas requeridas. Si no se pueden alcanzar o resolver los servidores, el código NIS se colgará. Para más detalles, consulta yp(8).

El siguiente ejemplo lista direcciones para los servidores master y slave en una red de doble pila.

ypserver_serverinfo:
  master:
    - "192.0.2.1"
    - "2001:db8::111:1"
  slave:
    - "192.0.2.2"
    - "2001:db8::111:2"

Variables opcionales

ypclient_usedns: true

Especifica que los mapas YP/NIS pueden usar DNS para la búsqueda de nombres de host. Se recomienda dejar en true. Si se establece en false, asegúrate de que ypclient_serverinfo y/o ypclient_set_hosts estén configurados correctamente para que tus servidores NIS se puedan resolver.

ypclient_lookup_maps:
  - name: 'passwd'
    file: '/etc/master.passwd'
    pattern: '+:*::::::::'
    validate: 'pwd_mkdb -c %s'
    notify: "regen master.passwd"
    mode: '0600'
    owner: 'root'
    group: 'wheel'
  - name: 'group'
    file: '/etc/group'
    pattern: '+:*::'
    mode: '0644'
    owner: 'root'
    group: 'wheel'

Esta lista contiene qué mapas de consulta deseas usar en el dominio y qué archivos necesitan ser editados, así como el patrón. Es opcional especificar la validación y el manejador. Naturalmente, los mapas también deben existir en los servidores NIS. Para otros mapas soportados, consulta Makefile.yp(8).

Variables para soportar múltiples dominios YP/NIS en un cliente

Esta variable está destinada a permitir el hospedaje de múltiples dominios NIS en un servidor. Este no era el caso de uso originalmente previsto, así que si encuentras problemas, por favor repórtalo como un issue en GitHub.

ypclient_set_domainname: true

Se recomienda dejar en true para el dominio que se pretende como tu 'principal' (nombre de dominio predeterminado). Debe establecerse en false si deseas mantener otro dominio como el dominio predeterminado.

Configuraciones adicionales

Estas variables no son necesarias para la invocación del rol y sus valores predeterminados deberían estar bien.

ypclient_set_hosts: false

Si se establece en true, el rol agrega la información IP para los servidores NIS al archivo /etc/hosts. Esto es típicamente útil cuando el dominio no utiliza búsquedas DNS (ypclient_usedns establecido en false). Ten en cuenta que esto requiere información IP para cada servidor NIS en la variable ypclient_serverinfo.

Variables internas

Estas variables se utilizan internamente en el rol y no están destinadas a ser modificadas por el usuario. Cambiarlas es bajo tu propio riesgo. Típicamente, corresponden a valores codificados en el sistema operativo subyacente.

Dependencias

Ninguna.

Ejemplo de Playbook

A continuación, un ejemplo para crear un cliente YP/NIS simple que se conecta a los hosts en el grupo ypservers. El dominio se llama legacy.

---
- hosts: ypclients
  roles:
    - rol: vnode.ypclient
      vars:
        ypclient_ypdomain: legacy
        ypclient_servers: "{{ groups['ypservers'] }}"

Licencia

MIT

Información del Autor

Este rol fue creado en 2020 por Rogier Krieger.

Acerca del proyecto

Install and configure a YP/NIS client

Instalar
ansible-galaxy install vnode.ypclient
Licencia
mit
Descargas
143
Propietario