В конфигурации HA я периодически проверяю VIP-адрес на eth0, (позвольте назвать его 2.2.2.2). Если вверх, то мне нужно, чтобы открыть еще одну группу IP-адрес, определенный для eth0 в/и т.д.// файл конфигурации сетевых интерфейсов:Bash grep файл для строки и использовать их как переменную в других командах
up ip addr add **1.2.3.34** dev $IFACE
up ip addr add **1.2.3.40** dev $IFACE
up ip addr add **1.2.3.48** dev $IFACE
и передать каждый IP только в другой группе команд:
ip a a **1.2.3.34/32** dev eth0
ip a a **1.2.3.40/32** dev eth0
ip a a **1.2.3.48/32** dev eth0
Что я сделал до сих пор:
#!/bin/bash
STATUS=$(ip a s eth0 | grep inet | awk '{print $2}' | sed 's/addr://')
if ip a s eth0 | grep inet | awk '{print $2}' | sed 's/addr://' | grep 2.2.2.2/27 ; then
cat /etc/network/interfaces | grep -o "up ip addr add [0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" | grep -o "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" > /tmp/ext_ip.txt
Теперь мне нужна помощь, как передать каждую строку другой команды, упомянутой выше (ф аа 1.2.3 ...), но не имеют ни малейшего представления как чтобы сделать это правильно.
Опционально я хотел бы вернуть операцию, если VIP отсутствует в системе - в случае, если основной хост HA будет отключен.