Как создать мост 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