2 Documentation Suite that Configures External Networks for CSIT
3 Suite Setup OpenStackInstallUtils.Get All Ssh Connections
4 Suite Teardown Close All Connections
6 Library OperatingSystem
7 Library RequestsLibrary
8 Resource ../libraries/OpenStackInstallUtils.robot
9 Resource ../libraries/OpenStackOperations.robot
10 Resource ../libraries/SystemUtils.robot
11 Resource ../libraries/Utils.robot
14 Configure External Networks For Testing
15 Local Install Rpm Package openvswitch
16 Run Command In Local Node sudo systemctl start openvswitch
17 Setup External Network In Robot VM flat1 101.0.0.2/24 101.0.0.1/24
18 Install Configure OvsSwitch ${OS_CONTROL_1_IP}
19 Run Keyword If 2 < ${NUM_CONTROL_NODES} Install Configure OvsSwitch ${OS_CONTROL_2_IP}
20 Run Keyword If 2 < ${NUM_CONTROL_NODES} Install Configure OvsSwitch ${OS_CONTROL_3_IP}
21 Run Keyword If 3 < ${NUM_CONTROL_NODES} Install Configure OvsSwitch ${OS_CONTROL_4_IP}
22 Run Keyword If 4 < ${NUM_CONTROL_NODES} Install Configure OvsSwitch ${OS_CONTROL_5_IP}
23 Run Keyword If 0 < ${NUM_COMPUTE_NODES} Install Configure OvsSwitch ${OS_COMPUTE_1_IP}
24 Run Keyword If 1 < ${NUM_COMPUTE_NODES} Install Configure OvsSwitch ${OS_COMPUTE_2_IP}
25 Create External Network For CSIT flat1 ${OS_CONTROL_1_IP} ${OS_CONTROL_1_IP} 9786
26 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat1 ${OS_CONTROL_2_IP} ${OS_CONTROL_2_IP} 9786
27 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat1 ${OS_CONTROL_3_IP} ${OS_CONTROL_3_IP} 9786
28 Run Keyword If 3 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat1 ${OS_CONTROL_4_IP} ${OS_CONTROL_4_IP} 9786
29 Run Keyword If 4 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat1 ${OS_CONTROL_5_IP} ${OS_CONTROL_5_IP} 9786
30 Run Keyword If 0 < ${NUM_COMPUTE_NODES} Create External Network For CSIT flat1 ${OS_COMPUTE_1_IP} ${OS_COMPUTE_1_IP} 9786
31 Run Keyword If 1 < ${NUM_COMPUTE_NODES} Create External Network For CSIT flat1 ${OS_COMPUTE_2_IP} ${OS_COMPUTE_2_IP} 9786
32 Setup External Network In Robot VM flat2 102.0.0.2/24 102.0.0.1/24
33 Create External Network For CSIT flat2 ${OS_CONTROL_1_IP} ${OS_CONTROL_1_IP} 9787
34 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat2 ${OS_CONTROL_2_IP} ${OS_CONTROL_2_IP} 9787
35 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat2 ${OS_CONTROL_3_IP} ${OS_CONTROL_3_IP} 9787
36 Run Keyword If 3 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat2 ${OS_CONTROL_4_IP} ${OS_CONTROL_4_IP} 9787
37 Run Keyword If 4 < ${NUM_CONTROL_NODES} Create External Network For CSIT flat2 ${OS_CONTROL_5_IP} ${OS_CONTROL_5_IP} 9787
38 Run Keyword If 0 < ${NUM_COMPUTE_NODES} Create External Network For CSIT flat2 ${OS_COMPUTE_1_IP} ${OS_COMPUTE_1_IP} 9787
39 Run Keyword If 1 < ${NUM_COMPUTE_NODES} Create External Network For CSIT flat2 ${OS_COMPUTE_2_IP} ${OS_COMPUTE_2_IP} 9787
40 Setup External Network In Robot VM physnet1 10.10.10.253/24 10.10.10.250/24
41 Create External Network For CSIT physnet1 ${OS_CONTROL_1_IP} ${OS_CONTROL_1_IP} 9788
42 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT physnet1 ${OS_CONTROL_2_IP} ${OS_CONTROL_2_IP} 9788
43 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT physnet1 ${OS_CONTROL_3_IP} ${OS_CONTROL_3_IP} 9788
44 Run Keyword If 3 < ${NUM_CONTROL_NODES} Create External Network For CSIT physnet1 ${OS_CONTROL_4_IP} ${OS_CONTROL_4_IP} 9788
45 Run Keyword If 4 < ${NUM_CONTROL_NODES} Create External Network For CSIT physnet1 ${OS_CONTROL_5_IP} ${OS_CONTROL_5_IP} 9788
46 Run Keyword If 0 < ${NUM_COMPUTE_NODES} Create External Network For CSIT physnet1 ${OS_COMPUTE_1_IP} ${OS_COMPUTE_1_IP} 9788
47 Run Keyword If 1 < ${NUM_COMPUTE_NODES} Create External Network For CSIT physnet1 ${OS_COMPUTE_2_IP} ${OS_COMPUTE_2_IP} 9788
48 Run Command In Local Node sudo ip tuntap add dev internet_tap mode tap
49 Run Command In Local Node sudo ifconfig internet_tap up 10.9.9.9/24
50 Run Command In Local Node sudo ip netns add vlantest
51 Run Command In Local Node sudo ovs-vsctl add-br br-vlantest
52 Local Install Rpm Package vconfig
53 Setup External Network with Vlan vlantest 28 105.0.0.2/24 vlantest1
54 Setup External Network with Vlan vlantest 29 106.0.0.2/24 vlantest2
55 Create External Network For CSIT vlantest ${OS_CONTROL_1_IP} ${OS_CONTROL_1_IP} 9789
56 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT vlantest ${OS_CONTROL_2_IP} ${OS_CONTROL_2_IP} 9789
57 Run Keyword If 2 < ${NUM_CONTROL_NODES} Create External Network For CSIT vlantest ${OS_CONTROL_3_IP} ${OS_CONTROL_3_IP} 9789
58 Run Keyword If 3 < ${NUM_CONTROL_NODES} Create External Network For CSIT vlantest ${OS_CONTROL_4_IP} ${OS_CONTROL_4_IP} 9789
59 Run Keyword If 4 < ${NUM_CONTROL_NODES} Create External Network For CSIT vlantest ${OS_CONTROL_5_IP} ${OS_CONTROL_5_IP} 9789
60 Run Keyword If 0 < ${NUM_COMPUTE_NODES} Create External Network For CSIT vlantest ${OS_COMPUTE_1_IP} ${OS_COMPUTE_1_IP} 9789
61 Run Keyword If 1 < ${NUM_COMPUTE_NODES} Create External Network For CSIT vlantest ${OS_COMPUTE_2_IP} ${OS_COMPUTE_2_IP} 9789
64 Install Configure OvsSwitch
65 [Arguments] ${os_node_cxn}
66 Run Keyword If '${OS_APPS_PRE_INSTALLED}' == 'no' Install Rpm Package ${os_node_cxn} openvswitch
67 Crudini Edit ${os_node_cxn} /usr/lib/systemd/system/ovsdb-server.service Service Restart always
68 Crudini Edit ${os_node_cxn} /usr/lib/systemd/system/ovs-vswitchd.service Service Restart always
69 Enable Service ${os_node_cxn} openvswitch
70 Start Service ${os_node_cxn} openvswitch
72 Setup External Network In Robot VM
73 [Arguments] ${external_network_name} ${host_ip_cidr_format} ${ext_gateway_ip_addr}
74 Run Command In Local Node sudo ip netns add ${external_network_name}
75 Run Command In Local Node sudo ip link add ${external_network_name}_ns type veth peer name ${external_network_name}_ovs
76 Run Command In Local Node sudo ip link set ${external_network_name}_ns netns ${external_network_name}
77 Run Command In Local Node sudo ip netns exec ${external_network_name} ifconfig ${external_network_name}_ns ${host_ip_cidr_format} up
78 Run Command In Local Node sudo ip netns exec ${external_network_name} ip link set ${external_network_name}_ns up
79 Run Command In Local Node sudo ovs-vsctl add-br br-${external_network_name}
80 Run Command In Local Node sudo ovs-vsctl add-port br-${external_network_name} ${external_network_name}_ovs
81 Run Command In Local Node sudo ip link set ${external_network_name}_ovs up
82 Run Command In Local Node sudo ifconfig br-${external_network_name} ${ext_gateway_ip_addr} up
84 Create External Network For CSIT
85 [Arguments] ${external_network_name} ${os_node_cxn} ${os_node_ip_address} ${tunnel_port_number}
86 Run Command In Local Node sudo ovs-vsctl add-port br-${external_network_name} vxlan_${external_network_name}_${os_node_ip_address} -- set interface vxlan_${external_network_name}_${os_node_ip_address} type=vxlan options:remote_ip=${os_node_ip_address} options:dst_port=${tunnel_port_number} options:key=flow
87 Run Command ${os_node_cxn} sudo ovs-vsctl --if-exists del-port br-${external_network_name}
88 Run Command ${os_node_cxn} sudo ovs-vsctl --may-exist add-br br-${external_network_name}
89 Run Command ${os_node_cxn} sudo ovs-vsctl add-port br-${external_network_name} vxlan_${external_network_name}_robot -- set interface vxlan_${external_network_name}_robot type=vxlan options:local_ip=${os_node_ip_address} options:remote_ip=${ROBOT_VM_IP} options:dst_port=${tunnel_port_number} options:key=flow
90 Run Command ${os_node_cxn} sudo ifconfig br-${external_network_name} up
92 Setup External Network with Vlan
93 [Arguments] ${external_network_name} ${vlan_id} ${host_ip_cidr_format} ${host_if_name}
94 Run Command In Local Node sudo ip link add ${host_if_name}_ns type veth peer name ${host_if_name}_ovs
95 Run Command In Local Node sudo ip link set ${host_if_name}_ns netns ${external_network_name}
96 Run Command In Local Node sudo ip netns exec ${external_network_name} vconfig add ${host_if_name}_ns ${vlan_id}
97 Run Command In Local Node sudo ip netns exec ${external_network_name} ifconfig ${host_if_name}_ns 0.0.0.0 up
98 Run Command In Local Node sudo ip netns exec ${external_network_name} ifconfig ${host_if_name}_ns.${vlan_id} ${host_ip_cidr_format} up
99 Run Command In Local Node sudo ovs-vsctl add-port br-${external_network_name} ${host_if_name}_ovs
100 Run Command In Local Node sudo ip link set ${host_if_name}_ovs up