vnode.ypclient
Ansible-Rolle: ypclient
Diese Rolle installiert und konfiguriert den YP/NIS-Client, der Teil von OpenBSD und anderen BSD*-Betriebssystemen ist. Momentan wird diese Rolle nur von OpenBSD unterstützt, mit der Absicht, in einer zukünftigen Aktualisierung FreeBSD und NetBSD hinzuzufügen.
Wo anwendbar, bezieht sich diese Rolle auf die Systemdokumentation, z.B. auf die yp(8)
Man-Seite.
Anforderungen
Betrieb
Es sind keine externen Rollen und/oder Module erforderlich, um diese Rolle zu verwenden.
Testen & Entwicklung
Für Tests und Entwicklungen hängt diese Rolle von den folgenden Rollen und externen Werkzeugen ab:
- Rolle vnode.ypserver
- Vagrant (unterstützt entweder den VirtualBox- oder VMWare-Anbieter)
- VagrantCloud (insbesondere die
generic/openbsd6
Box)
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt, einschließlich ihrer Standardwerte (siehe defaults/main.yml
). Alle diese sollten implementiert sein. Wenn Sie feststellen, dass dies nicht der Fall ist, bitte ein Problem öffnen im GitHub-Repository.
Erforderliche Variablen
Die folgenden Variablen müssen bei der Verwendung der Rolle festgelegt werden.
ypclient_domain: ""
Erforderlich, muss einen gültigen NIS-Domainnamen haben. Dies ist der Name der NIS-Domain, die Sie konfigurieren möchten.
ypclient_servers: []
Erforderlich, muss die Menge der NIS-Server für die Domain auflisten.
ypclient_serverinfo: {}
Erforderlich, kann aber leer sein, wenn die NIS-Server für die Domain in DNS oder /etc/hosts
gefunden werden können.
Wenn nicht leer, enthält dieses Wörterbuch IPv4- und/oder IPv6-Adressen für die Server der Domain. Die Rolle wird dann /etc/hosts
mit den erforderlichen Zeilen befüllen. Wenn Server nicht erreicht oder aufgelöst werden können, wird der NIS-Code blockieren. Siehe yp(8)
für weitere Details.
Das folgende Beispiel listet Adressen für den master
- und slave
-Server in einem Dual-Stack-Netzwerk auf.
ypserver_serverinfo:
master:
- "192.0.2.1"
- "2001:db8::111:1"
slave:
- "192.0.2.2"
- "2001:db8::111:2"
Optionale Variablen
ypclient_usedns: true
Gibt an, dass die YP/NIS-Maps DNS für die Namensauflösung verwenden können. Es wird empfohlen, dies auf true
zu belassen. Wenn auf false
gesetzt, stellen Sie sicher, dass ypclient_serverinfo
und/oder ypclient_set_hosts
korrekt festgelegt sind, damit Ihre NIS-Server aufgelöst werden können.
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'
Diese Liste enthält, welche Lookup-Maps Sie in der Domain verwenden möchten und welche Dateien bearbeitet werden müssen, sowie das Muster. Die Angabe der Validierung und des Handlers ist optional. Natürlich müssen die Maps auch auf den NIS-Servern vorhanden sein. Für weitere unterstützte Maps siehe Makefile.yp(8)
.
Variablen zur Unterstützung mehrerer YP/NIS-Domains auf einem Client
Diese Variable soll das Hosting mehrerer NIS-Domains auf einem Server ermöglichen. Dies war nicht die ursprünglich vorgesehene Verwendung, daher bitte melden Sie Probleme als Problem auf GitHub.
ypclient_set_domainname: true
Es wird empfohlen, dies auf true
zu belassen für die Domain, die als Ihre 'Haupt' (Standard) Domainname gedacht ist. Muss auf false
gesetzt werden, wenn Sie eine andere Domain als Standarddomain beibehalten möchten.
Zusätzliche Einstellungen
Diese Variablen sind nicht für die Rollenaufrufe erforderlich und ihre Standardwerte sollten in Ordnung sein.
ypclient_set_hosts: false
Wenn auf true
gesetzt, fügt die Rolle die IP-Informationen für die NIS-Server in die /etc/hosts
-Datei ein. Dies ist normalerweise nützlich, wenn die Domain keine DNS-Abfragen verwendet ( ypclient_usedns
auf false
gesetzt). Beachten Sie, dass dies IP-Informationen für jede NIS-Server in der ypclient_serverinfo
-Variablen erfordert.
Interne Variablen
Diese Variablen werden in der Rolle intern verwendet und sind nicht für die Benutzeränderung gedacht. Ändern Sie diese auf eigene Gefahr. Typischerweise entsprechen sie fest codierten Werten des zugrunde liegenden Betriebssystems.
Abhängigkeiten
Keine.
Beispiel-Playbook
Unten ist ein Beispiel für die Erstellung eines einfachen YP/NIS-Domain-Clients, der sich mit den Hosts in der ypservers
-Gruppe verbindet. Die Domain heißt legacy
.
---
- hosts: ypclients
roles:
- role: vnode.ypclient
vars:
ypclient_ypdomain: legacy
ypclient_servers: "{{ groups['ypservers'] }}"
Lizenz
MIT
Autoreninformation
Diese Rolle wurde 2020 von Rogier Krieger erstellt.