Как создать мост openvswitch, используя основной сетевой интерфейс с Ansible?

Главным образом я пытаюсь создать доступную ролевую / игровую книгу, которая бы настраивала мост openvswitch, использующий основной / основной сетевой интерфейс машины, и избегала наиболее распространенной проблемы с мостами openvswitch - блокировки при добавлении порта.

$ ip addr flush dev eth0
$ ip addr add 192.168.128.5/24 dev br0
$ ip link set br0 up

Как вы можете понять сами, при настройке с помощью ansible (ssh) очень легко потерять доступ к целевой машине.

Для упрощения проблемы предположим, что мы уже знаем имя основного сетевого интерфейса (eth0) и что он настроен с использованием DHCP.

1 ответ

Одним из решений является загрузка скрипта на ведомый компьютер через ansible. Создать скрипт:

script.sh

#!/bin/bash
sudo ip addr flush dev eth0
sudo ip addr add 192.168.128.5/24 dev br0
sudo ip link set br0 up

Затем одна пьеса, которая отправит сценарий и выполнит его. Что-то вроде этого:

- hosts: slave
  tasks:
  - name: copy script
    copy: src=./script.sh dest=/root/script.sh mode=a+x
  - name: execute script
    shell: ./root/script.sh >> somelog.txt

РЕДАКТИРОВАТЬ:

>     - hosts: slave
>       tasks:
>       - name: copy/execute script
>         copy: src=./script.sh dest=/root/script.sh mode=a+x
>         shell: ./root/script.sh >> somelog.txt
>         async: 10
Другие вопросы по тегам