5
5
6
6
set -o errexit -o nounset -o pipefail
7
7
8
- CURRENT_FILENAME=$( basename $0 )
8
+ CURRENT_FILENAME=$( basename $0 )
9
9
10
10
[ -z " ${HTTP_PROXY} " ] || export https_proxy=${HTTP_PROXY}
11
11
@@ -25,7 +25,10 @@ echo "$CURRENT_FILENAME : HOST_ADDITIONAL_INTERFACE $HOST_ADDITIONAL_INTERFACE "
25
25
echo " try to add secondary network nic for ovs bridge preparation"
26
26
if ! docker network ls | grep -q " ${DOCKER_ADDITIONAL_NETWORK} " ; then
27
27
echo " Docker network ${DOCKER_ADDITIONAL_NETWORK} does not exist, creating it..."
28
- docker network create ${DOCKER_ADDITIONAL_NETWORK} --driver bridge || { echo " Failed to create Docker network" ; exit 1; }
28
+ docker network create ${DOCKER_ADDITIONAL_NETWORK} --driver bridge || {
29
+ echo " Failed to create Docker network"
30
+ exit 1
31
+ }
29
32
else
30
33
echo " Docker network ${DOCKER_ADDITIONAL_NETWORK} already exists."
31
34
fi
@@ -53,17 +56,16 @@ elif [ ${E2E_IP_FAMILY} == "dual" ]; then
53
56
docker exec ${VLAN_GATEWAY_CONTAINER} ip addr add fd00:172:30::1/64 dev ${HOST_ADDITIONAL_INTERFACE} .${VLAN30}
54
57
docker exec ${VLAN_GATEWAY_CONTAINER} ip addr add fd00:172:40::1/64 dev ${HOST_ADDITIONAL_INTERFACE} .${VLAN40}
55
58
else
56
- echo " error ip family, the value of IP_FAMILY must be of ipv4,ipv6 or dual." && exit 1
59
+ echo " error ip family, the value of IP_FAMILY must be of ipv4,ipv6 or dual." && exit 1
57
60
fi
58
61
59
62
echo -e " \033[35m Succeed to create vlan interface: ${HOST_ADDITIONAL_INTERFACE} .${VLAN30} 、 ${HOST_ADDITIONAL_INTERFACE} .${VLAN40} in kind-node ${VLAN_GATEWAY_CONTAINER} \033[0m"
60
63
61
-
62
64
# https://github.com/antrea-io/antrea/issues/51
63
65
# fix: it possibley fails to insmod openvswitch.ko in the container in some OS version
64
66
# so it could load the ko in the host os in advance to make sure the ovs service could be started in the container
65
67
echo " =========install openvswitch in host os"
66
- sudo apt-get update
68
+ sudo apt-get update
67
69
sudo apt-get install -y openvswitch-switch
68
70
sudo modinfo openvswitch
69
71
sudo systemctl start openvswitch-switch || true
@@ -78,32 +80,37 @@ for NODE in $KIND_NODES; do
78
80
install_openvswitch () {
79
81
for attempt in {1..5}; do
80
82
echo " Attempt $attempt to install openvswitch on ${NODE} ..."
81
- if ! docker exec ${NODE} apt-get update ; then
83
+ if ! docker exec ${NODE} apt-get update; then
82
84
echo " Failed to update package list on ${NODE} , retrying in 10s..."
83
85
sleep 10
84
86
continue
85
87
fi
86
-
87
- if ! docker exec ${NODE} apt-get install -y openvswitch-switch ; then
88
+
89
+ if ! docker exec ${NODE} apt-get install -y openvswitch-switch; then
88
90
echo " Failed to install openvswitch on ${NODE} , retrying in 10s..."
89
91
sleep 10
90
92
continue
91
93
fi
92
-
94
+
93
95
echo " Succeed to install openvswitch on ${NODE} "
94
96
return 0
95
97
done
96
98
97
99
echo " Error: Failed to install openvswitch on ${NODE} after 5 attempts." >&2
98
100
return 1
99
101
}
100
-
102
+
101
103
echo " =========install openvswitch"
102
104
install_openvswitch
103
105
104
106
echo " start ovs service and add bridge"
105
- { docker exec ${NODE} systemctl start openvswitch-switch ; } \
106
- || { docker exec ${NODE} journalctl -xe ; docker exec ${NODE} systemctl status openvswitch-switch ; docker exec ${NODE} journalctl -u openvswitch-switch ; exit 1 ; }
107
+ { docker exec ${NODE} systemctl start openvswitch-switch; } ||
108
+ {
109
+ docker exec ${NODE} journalctl -xe
110
+ docker exec ${NODE} systemctl status openvswitch-switch
111
+ docker exec ${NODE} journalctl -u openvswitch-switch
112
+ exit 1
113
+ }
107
114
108
115
docker exec ${NODE} ovs-vsctl add-br ${BRIDGE_INTERFACE}
109
116
docker exec ${NODE} ovs-vsctl add-port ${BRIDGE_INTERFACE} ${HOST_ADDITIONAL_INTERFACE}
@@ -139,4 +146,3 @@ for NODE in $KIND_NODES; do
139
146
done
140
147
141
148
echo -e " \033[35m Succeed to install openvswitch \033[0m"
142
-
0 commit comments