Spec-Zone.ru › Ansible 2.11

community.general.interfaces_file – Настройка параметров в файлах /etc/network/interfaces

Примечание

Этот плагин является частью коллекции community.general (версия 2.0.1).

Для его установки используйте: ansible-galaxy collection install community.general.

Для использования в плейбуке укажите: community.general.interfaces_file.

  • Обзор
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Управление (добавление, удаление, изменение) отдельных параметров интерфейса в файле в стиле interfaces, без необходимости управления файлом целиком, например, с помощью модуля ansible.builtin.template или ansible.builtin.assemble. Интерфейс должен быть представлен в файле.
  • Чтение информации об интерфейсах из файлов в стиле interfaces

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
address_family
строка
Семейство адресов интерфейса, полезно, если одно имя интерфейса используется как для inet, так и для inet6
attributes
строка
добавлен в версии 2.3 ansible.builtin
Атрибуты, которые должен иметь получившийся файл или каталог.
Для получения поддерживаемых флагов смотрите страницу руководства для chattr на целевой системе.
Эта строка должна содержать атрибуты в том же порядке, что и при выводе lsattr.
Оператор = предполагается по умолчанию, в противном случае необходимо включить операторы + или - в строку.

Псевдонимы: attr
backup
логический тип
    Варианты:
  • нет ←
  • да
Создать резервную копию файла, включая информацию о времени создания, чтобы вы могли получить исходный файл, если вы каким-то образом его неправильно перезаписали.
dest
путь
По умолчанию:
"/etc/network/interfaces"
Путь к файлу interfaces
group
строка
Имя группы, которая должна владеть файлом/каталогом, как это передается в chown.
iface
строка
Имя интерфейса, необходимое для изменения значений или удаления опций
mode
сырой
Разрешения, которые должен иметь получившийся файл или каталог.
Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо добавить ведущую нуль, чтобы парсер YAML Ansible понимал, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '1777') так, чтобы Ansible получил строку и мог выполнить собственное преобразование из строки в число.
Передача Ansible числа без соблюдения одного из этих правил приведет к десятичному числу, что приведет к непредвиденным результатам.
Начиная с Ansible 1.8, режим можно указать в символьной форме (например, u+rwx или u=rw,g=r,o=r).
Если mode не указан, и целевой файл не существует, значение по умолчанию umask на системе будет использоваться при установке режима для вновь созданного файла.
Если mode не указан, и целевой файл существует, будет использован режим существующего файла.
Указание mode — лучший способ гарантировать, что файлы создаются с правильными разрешениями. См. CVE-2020-1736 для получения дополнительной информации.
option
строка
Имя опции, необходимое для изменения значений или удаления опции
owner
строка
Имя пользователя, который должен владеть файлом/каталогом, как это передается в chown.
selevel
строка
Часть контекста файла SELinux.
Это атрибут MLS/MCS, иногда называемый range.
Если установлено значение _default, будет использоваться часть политики level, если она доступна.
serole
строка
Часть контекста файла SELinux.
Если установлено значение _default, будет использоваться часть политики role, если она доступна.
setype
строка
Часть контекста файла SELinux.
Если установлено значение _default, будет использоваться часть политики type, если она доступна.
seuser
строка
Часть контекста файла SELinux.
По умолчанию используется политика system, если она применима.
Если установлено значение _default, будет использоваться часть политики user, если она доступна.
state
строка
    Варианты:
  • наличие ←
  • отсутствие
Если установлено значение absent, опция или раздел будут удалены, если они присутствуют, вместо создания.
unsafe_writes
логический тип
добавлен в версии 2.2 ansible.builtin
    Варианты:
  • нет ←
  • да
Влияние на использование атомарной операции для предотвращения повреждения данных или несогласованного чтения из целевого файла.
По умолчанию этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения из целевых файлов, но иногда системы настроены или просто неисправны таким образом, что это невозможно. Одним примером являются файлы, смонтированные в Docker, которые не могут быть обновлены атомарно изнутри контейнера и могут быть записаны только неатомарно.
Этот параметр позволяет Ansible перейти к небезопасным методам обновления файлов, когда атомарные операции завершаются неудачно (однако это не заставляет Ansible выполнять небезопасные записи).
ВАЖНО! Небезопасные записи подвержены гонкам и могут привести к повреждению данных.
value
строка
Если для option не указан интерфейс и state имеет значение present, будет добавлена опция. Если option уже существует и не является pre-up, up, post-up или down, его значение будет обновлено. Опции pre-up, up, post-up и down не могут быть обновлены, поддерживаются только добавление новых опций, удаление существующих или очистка всего набора опций.

Примечания

Примечание

  • Если опция определена несколько раз, последнее значение будет обновлено, но все значения будут удалены в случае состояния отсутствия.

Примеры

- name: Set eth1 mtu configuration value to 8000
  community.general.interfaces_file:
    dest: /etc/network/interfaces.d/eth1.cfg
    iface: eth1
    option: mtu
    value: 8000
    backup: yes
    state: present
  register: eth1_cfg

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:

Ключ Возвращаемое значение Описание
dest
строка
успех
путь/файл назначения

Пример:
/etc/network/interfaces
ifaces
сложный
успех
словарь интерфейсов

ifaces
словарь
успех
словарь интерфейсов

eth0
словарь
успех
Имя интерфейса

address_family
строка
успех
Семейство адресов интерфейса

Пример:
inet
down
список / элементы=строка
успех
список скриптов down

Пример:
['route del -net 10.10.10.0/24 gw 10.10.10.1 dev eth1', 'route del -net 10.10.11.0/24 gw 10.10.11.1 dev eth2']
method
строка
успех
Метод интерфейса

Пример:
manual
mtu
строка
успех
другие параметры, все значения возвращаются как строки

Пример:
1500
post-up
список / элементы=строка
успех
список скриптов post-up

Пример:
['route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1', 'route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2']
pre-up
список / элементы=строка
успех
список скриптов pre-up

Пример:
['route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1', 'route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2']
up
список / элементы=строка
успех
список скриптов up

Пример:
['route add -net 10.10.10.0/24 gw 10.10.10.1 dev eth1', 'route add -net 10.10.11.0/24 gw 10.10.11.1 dev eth2']


Авторы

  • Роман Беляковский (@hryamzik)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/interfaces_file_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API