interfaces_file - Настройка параметров в файлах /etc/network/interfaces
Новое в версии 2.4.
Описание
- Управление (добавление, удаление, изменение) отдельных параметров интерфейса в файле в стиле interfaces без необходимости управления файлом целиком с помощью, например, шаблона или сборки. Интерфейс должен быть представлен в файле.
- Чтение информации об интерфейсах из файлов в стиле interfaces
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| attributes (добавлено в 2.3) | Атрибуты файла или каталога. Для получения поддерживаемых флагов обратитесь к справочной странице для chattr на целевой системе. Эта строка должна содержать атрибуты в том же порядке, что и отображается lsattr. псевдонимы: attr | |
| backup bool |
| Создать резервную копию файла, включая информацию о времени создания, чтобы вы могли получить исходный файл, если вы каким-то образом его повредили. |
| dest | По умолчанию: "/etc/network/interfaces" | Путь к файлу интерфейсов |
| group | Имя группы, которой должен принадлежать файл/каталог, как и подается в chown. | |
| iface | Имя интерфейса, необходимое для изменения значений или удаления параметра | |
| mode | Режим файла или каталога. Для тех, кто привык к /usr/bin/chmod, помните, что режимы фактически являются восьмеричными числами. Вы должны либо указать ведущий ноль, чтобы парсер YAML Ansible знал, что это восьмеричное число (например, 0644 или 01777) или заключить его в кавычки (например, '644' или '0644'), чтобы Ansible получил строку и выполнил собственное преобразование из строки в число. Передача Ansible числа без соблюдения одного из этих правил приведет к десятичному числу, что приведет к непредвиденным результатам. Начиная с версии 1.8, режим может быть указан в символической форме (например, u+rwx или u=rw,g=r,o=r). | |
| option | Имя параметра, необходимое для изменения значений или удаления параметра | |
| owner | Имя пользователя, которому должен принадлежать файл/каталог, как и подается в chown. | |
| selevel | По умолчанию: "s0" | Уровень части контекста файла SELinux. Это атрибут MLS/MCS, иногда известный как range. _default функция работает, как и для seuser. |
| serole | Роль части контекста файла SELinux, _default функция работает, как и для seuser. | |
| setype | Тип части контекста файла SELinux, _default функция работает, как и для seuser. | |
| seuser | Пользователь части контекста файла SELinux. Будет по умолчанию использовать политику системы, если применимо. Если установлено _default, будет использоваться user часть политики, если доступна. | |
| state |
| Если установлено absent, параметр или раздел будут удалены, если присутствуют, вместо создания. |
| unsafe_writes bool (добавлено в 2.2) |
| Обычно этот модуль использует атомарные операции для предотвращения повреждения данных или несогласованного чтения из целевых файлов, иногда системы настроены или просто неисправны таким образом, что это не позволяет. Одним примером являются файлы, подключенные через docker, они не могут быть обновлены атомарно и могут быть обновлены только нестандартным способом. Этот логический параметр позволяет Ansible перейти к небезопасным методам обновления файлов в тех случаях, когда у вас нет другого выбора. Имейте в виду, что это подвержено гонкам и может привести к повреждению данных. |
| value | Если option не представлен для interface и state это present, будет добавлен параметр. Если option уже существует и не pre-up, up, post-up или down, его значение будет обновлено. pre-up, up, post-up и down параметры не могут быть обновлены, поддерживаются только добавление новых параметров, удаление существующих или очистка всего набора параметров. |
Примечания
Примечание
- Если параметр определен несколько раз, последнее значение будет обновлено, но все значения будут удалены в случае состояния absent
Примеры
# Set eth1 mtu configuration value to 8000
- 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 | |||
| method строка | успешно | метод интерфейса Пример: manual | |||
| mtu строка | успешно | другие параметры, все значения возвращаются как строки Пример: 1500 | |||
| 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'] | |||
| 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'] | |||
| 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'] | |||
Статус
Этот модуль помечен как stableinterface, что означает, что авторы модуля гарантируют, что не будут вноситься несовместимые изменения интерфейса.
Техническое обслуживание
Этот модуль помечен как community, что означает, что его поддерживает сообщество Ansible. Дополнительную информацию см. в разделе Техническое обслуживание и поддержка модулей.
Список других модулей, поддерживаемых сообществом Ansible, см. в разделе здесь.
Автор
- Роман Беляковский (@hryamzik)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/interfaces_file_module.html