53 lines
999 B
Bash
53 lines
999 B
Bash
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
|
|
add_slave() {
|
|
local master=$1
|
|
local slave=$2
|
|
|
|
ip link set ${slave} down
|
|
echo +${slave} > /sys/class/net/${master}/bonding/slaves
|
|
ip link set ${slave} up
|
|
}
|
|
|
|
|
|
make_bond() {
|
|
local bond=$1
|
|
local mode=${2:-802.3ad}
|
|
|
|
if [ ! -d /sys/module/bonding ]; then
|
|
modprobe bonding
|
|
fi
|
|
echo +${bond} > /sys/class/net/bonding_masters
|
|
echo ${mode} > /sys/class/net/${bond}/bonding/mode
|
|
echo 100 > /sys/class/net/${bond}/bonding/miimon
|
|
}
|
|
|
|
|
|
# VM Network
|
|
make_bond bond0
|
|
#add_slave bond0 enp10s0f0
|
|
#add_slave bond0 enp10s0f1
|
|
add_slave bond0 enp10s0
|
|
|
|
ip link add link bond0 name vlan30 type vlan id 30
|
|
ip link add link bond0 name vlan101 type vlan id 101
|
|
ip link set bond0 up
|
|
|
|
ip link add br0 type bridge
|
|
ip link set vlan30 master br0
|
|
ip link set br0 up
|
|
|
|
ip link add br1 type bridge
|
|
ip link set vlan101 master br1
|
|
ip link set br1 up
|
|
|
|
|
|
# Storage Network
|
|
make_bond bond1
|
|
add_slave bond1 enp8s0f0
|
|
add_slave bond1 enp8s0f1
|
|
ip link set bond1 mtu 9000
|