使用 Ansible 重新启动网络接口

使用 Ansible 重新启动网络接口

我有一个 ansible 剧本,可以将文件移动.network.netdev目录中/etc/systemd/network/。这些文件是自动生成的,我不知道它们的名称或将(自动)创建的接口的名称/编号。

.network.netdev包含所创建的接口的名称:

  • 00-wg0.netdev
  • 00-wg0.network
  • 10-wg1.netdev
  • 10-wg1.network
  • 20-wg2.netdev
  • 20-wg2.network
  • [...]

我怎样才能(使用ansible):

  • 使用位于?中的文件获取接口名称列表,例如wg0或...wg1/etc/systemd/network/
  • 使用此列表重新启动接口(将其设置为关闭,然后打开)?

谢谢

答案1

要读取文件,您可以使用查找插件

vars:
  file_contents: "{{lookup('file', 'path/to/file.txt')}}"

要重新启动网络接口,您可以使用服务模块:

- name: Restart network service for vlan interface
  service:
    name: network
    state: restarted
    args: '{{ item }}'
  with_items: '{{ var_with_iface_list }}'

相关内容