ypclient

Ansible роль: ypclient

CI

Эта роль устанавливает и настраивает клиент YP/NIS, который является частью OpenBSD и других операционных систем BSD*. В данный момент эта роль поддерживает только OpenBSD, с намерением добавить поддержку FreeBSD и NetBSD в ближайших обновлениях.

При необходимости эта роль ссылается на системную документацию, например, на страницу Man yp(8).

Требования

Операция

Нет необходимости в использовании внешних ролей и/или модулей для применения данной роли.

Тестирование и Разработка

Для тестирования и разработки эта роль зависит от следующих ролей и внешних инструментов:

  • Роль vnode.ypserver
  • Vagrant (поддерживает провайдеры VirtualBox или VMWare)
  • VagrantCloud (в частности, коробка generic/openbsd6)

Переменные роли

Доступные переменные перечислены ниже, включая их значения по умолчанию (смотрите defaults/main.yml). Все они должны быть реализованы. Если вы обнаружите, что это не так, пожалуйста, откройте проблему в репозитории GitHub.

Обязательные переменные

Следующие переменные необходимо установить при использовании роли.

ypclient_domain: ""

Обязательно, должно иметь действительное имя домена NIS. Это название домена NIS, который вы намереваетесь настроить.

ypclient_servers: []

Обязательно, должен содержать список серверов NIS для домена.

ypclient_serverinfo: {}

Обязательно, но может быть пустым, если серверы NIS для домена можно найти в DNS или /etc/hosts.

Если не пусто, этот словарь содержит IPv4 и/или IPv6 адреса серверов домена. Роль затем заполнит /etc/hosts необходимыми строками. Если серверы не могут быть достигнуты или разрешены, код NIS будет зависать. Смотрите yp(8) для получения дополнительных сведений.

Пример ниже перечисляет адреса для master и slave серверов в сети с двойным стеком.

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

Необязательные переменные

ypclient_usedns: true

Указывает, что карты YP/NIS могут использовать DNS для поиска имен хостов. Рекомендуется оставить значение true. Если установить в false, убедитесь, что ypclient_serverinfo и/или ypclient_set_hosts настроены правильно, чтобы ваши серверы NIS могли быть разрешены.

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'

Этот список содержит, какие карты поиска вы хотите использовать в домене и какие файлы необходимо редактировать, а также шаблон. Указание проверки и обработчика является необязательным. Конечно, карты также должны существовать на серверах NIS. Для других поддерживаемых карт смотрите Makefile.yp(8).

Переменные для поддержки нескольких YP/NIS доменов на клиенте

Эта переменная предназначена для размещения нескольких доменов NIS на сервере. Это не был изначально запланированный случай использования, поэтому если вы обнаружите проблемы, пожалуйста, сообщите об этом как о проблеме на GitHub.

ypclient_set_domainname: true

Рекомендуется оставить значение true для домена, который четко обозначен как ваш ‘основной’ (по умолчанию) домен. Должно быть установлено в false, если вы хотите сохранить другой домен в качестве домена по умолчанию.

Дополнительные настройки

Эти переменные не обязательны для вызова роли, и их значения по умолчанию должны быть приемлемыми.

ypclient_set_hosts: false

Если установить значение true, роль добавляет IP-информацию для серверов NIS в файл /etc/hosts. Это обычно полезно, когда домен не использует DNS-запросы (при установленном значении ypclient_usedns равном false). Обратите внимание, что это требует IP-информации для каждого сервера NIS в переменной ypclient_serverinfo.

Внутренние переменные

Эти переменные используются в роли внутренне и не предназначены для изменения пользователем. Изменяйте их на свой страх и риск. Обычно они соответствуют фиксированным значениям на базовой операционной системе.

Зависимости

Нет.

Пример плейбука

Ниже приводится пример создания простого клиента YP/NIS, который подключается к узлам в группе ypservers. Домен называется legacy.

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

Лицензия

MIT

Информация об авторе

Эта роль была создана в 2020 году Рогиером Кригером.

О проекте

Install and configure a YP/NIS client

Установить
ansible-galaxy install vnode/ansible-role-ypclient
Лицензия
mit
Загрузки
134
Владелец