Merge "Return gateway node to new OS OVS labs"
diff --git a/classes/cluster/os_ha_ovs/infra/config.yml b/classes/cluster/os_ha_ovs/infra/config.yml
index 7d36a2b..bbc9975 100644
--- a/classes/cluster/os_ha_ovs/infra/config.yml
+++ b/classes/cluster/os_ha_ovs/infra/config.yml
@@ -105,6 +105,19 @@
value_template: <<node_tenant_ip>>
external_address:
value_template: <<node_external_ip>>
+ openstack_gateway:
+ expression: <<node_hostname>>__startswith__gtw
+ node_class:
+ value_template:
+ - cluster.<<node_cluster>>.openstack.gateway
+ node_param:
+ tenant_address:
+ value_template: <<node_tenant_ip>>
+ external_address:
+ value_template: <<node_external_ip>>
+ cluster_param:
+ openstack_gateway_node01_address:
+ value_template: <<node_control_ip>>
node:
openstack_control_node01:
classes:
diff --git a/classes/cluster/os_ha_ovs/openstack/gateway.yml b/classes/cluster/os_ha_ovs/openstack/gateway.yml
new file mode 100644
index 0000000..2e7f0f0
--- /dev/null
+++ b/classes/cluster/os_ha_ovs/openstack/gateway.yml
@@ -0,0 +1,78 @@
+classes:
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.neutron.gateway.cluster
+- cluster.virtual-mcp11-ovs
+parameters:
+ _param:
+ primary_interface: ens4
+ tenant_interface: ens5
+ external_interface: ens6
+ interface_mtu: 9000
+ linux_system_codename: xenial
+ linux:
+ network:
+ bridge: openvswitch
+ interface:
+ dhcp_int:
+ enabled: true
+ name: ens3
+ proto: dhcp
+ type: eth
+ mtu: ${_param:interface_mtu}
+ primary_interface:
+ enabled: true
+ name: ${_param:primary_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ tenant_interface:
+ enabled: true
+ name: ${_param:tenant_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ external_interface:
+ enabled: true
+ name: ${_param:external_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ mtu: ${_param:interface_mtu}
+ br-mgmt:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ mtu: ${_param:interface_mtu}
+ use_interfaces:
+ - ${_param:primary_interface}
+ br-mesh:
+ enabled: true
+ type: bridge
+ mtu: ${_param:interface_mtu}
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:tenant_interface}
+ float-to-ex:
+ enabled: true
+ type: ovs_port
+ mtu: ${_param:interface_mtu}
+ bridge: br-floating
+ br-ex:
+ enabled: true
+ type: bridge
+ mtu: ${_param:interface_mtu}
+ address: ${_param:external_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:external_interface}
+ use_ovs_ports:
+ - float-to-ex
\ No newline at end of file
diff --git a/classes/cluster/os_ha_ovs/openstack/init.yml b/classes/cluster/os_ha_ovs/openstack/init.yml
index fc7c24c..fff4f05 100644
--- a/classes/cluster/os_ha_ovs/openstack/init.yml
+++ b/classes/cluster/os_ha_ovs/openstack/init.yml
@@ -1,7 +1,9 @@
parameters:
_param:
- openstack_proxy_address: 172.16.10.121
- openstack_proxy_node01_address: 172.16.10.121
+ openstack_proxy_hostname: prx
+ openstack_proxy_address: ${_param:openstack_proxy_node01_address}
+ openstack_proxy_node01_hostname: prx01
+ openstack_proxy_node01_address: ${_param:infra_config_address}
openstack_control_hostname: ctl
openstack_control_node01_hostname: ctl01
openstack_control_node02_hostname: ctl02
@@ -10,6 +12,10 @@
openstack_control_node01_address: 172.16.10.101
openstack_control_node02_address: 172.16.10.102
openstack_control_node03_address: 172.16.10.103
+ openstack_gateway_hostname: gtw
+ openstack_gateway_address: ${_param:openstack_gateway_node01_address}
+ openstack_gateway_node01_hostname: gtw01
+ openstack_gateway_node01_address: 172.16.10.110
openstack_database_address: ${_param:openstack_control_address}
openstack_message_queue_address: ${_param:openstack_control_address}
openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
@@ -93,30 +99,41 @@
prx:
address: ${_param:openstack_proxy_address}
names:
- - prx
- - prx.${_param:cluster_domain}
+ - ${_param:openstack_proxy_hostname}
+ - ${_param:openstack_proxy_hostname}.${_param:cluster_domain}
prx01:
address: ${_param:openstack_proxy_node01_address}
names:
- - prx01
- - prx01.${_param:cluster_domain}
+ - ${_param:openstack_proxy_node01_hostname}
+ - ${_param:openstack_proxy_node01_hostname}.${_param:cluster_domain}
ctl:
address: ${_param:openstack_control_address}
names:
- - ctl
- - ctl.${_param:cluster_domain}
+ - ${_param:openstack_control_hostname}
+ - ${_param:openstack_control_hostname}.${_param:cluster_domain}
ctl01:
address: ${_param:openstack_control_node01_address}
names:
- - ctl01
- - ctl01.${_param:cluster_domain}
+ - ${_param:openstack_control_node01_hostname}
+ - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
ctl02:
address: ${_param:openstack_control_node02_address}
names:
- - ctl02
- - ctl02.${_param:cluster_domain}
+ - ${_param:openstack_control_node02_hostname}
+ - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
ctl03:
address: ${_param:openstack_control_node03_address}
names:
- - ctl03
- - ctl03.${_param:cluster_domain}
+ - ${_param:openstack_control_node03_hostname}
+ - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
+ gtw:
+ address: ${_param:openstack_gateway_address}
+ names:
+ - ${_param:openstack_gateway_hostname}
+ - ${_param:openstack_gateway_hostname}.${_param:cluster_domain}
+ gtw01:
+ address: ${_param:openstack_gateway_address}
+ names:
+ - ${_param:openstack_gateway_hostname}
+ - ${_param:openstack_gateway_hostname}.${_param:cluster_domain}
+
diff --git a/classes/cluster/sl_os_ovs/infra/config.yml b/classes/cluster/sl_os_ovs/infra/config.yml
index 75401d0..a1c2d1a 100644
--- a/classes/cluster/sl_os_ovs/infra/config.yml
+++ b/classes/cluster/sl_os_ovs/infra/config.yml
@@ -107,6 +107,19 @@
value_template: <<node_tenant_ip>>
external_address:
value_template: <<node_external_ip>>
+ openstack_gateway:
+ expression: <<node_hostname>>__startswith__gtw
+ node_class:
+ value_template:
+ - cluster.<<node_cluster>>.openstack.gateway
+ node_param:
+ tenant_address:
+ value_template: <<node_tenant_ip>>
+ external_address:
+ value_template: <<node_external_ip>>
+ cluster_param:
+ openstack_gateway_node01_address:
+ value_template: <<node_control_ip>>
stacklight_monitor01:
expression: <<node_hostname>>__equals__mon01
cluster_param:
diff --git a/classes/cluster/sl_os_ovs/init.yml b/classes/cluster/sl_os_ovs/init.yml
index b9a31c6..5fc70a0 100644
--- a/classes/cluster/sl_os_ovs/init.yml
+++ b/classes/cluster/sl_os_ovs/init.yml
@@ -1,11 +1,11 @@
classes:
- system.linux.system.single
-- cluster.sl_os_ovs.infra
-- cluster.sl_os_ovs.openstack
- system.openssh.server.team.lab
- system.openssh.server.team.tcpcloud
- system.openssh.server.team.stacklight
- system.openssh.server.team.mcp_qa
+- cluster.sl_os_ovs.infra
+- cluster.sl_os_ovs.openstack
- cluster.sl_os_ovs.stacklight
- cluster.sl_os_ovs.stacklight.client
-- cluster.overrides
\ No newline at end of file
+- cluster.overrides
diff --git a/classes/cluster/sl_os_ovs/openstack/gateway.yml b/classes/cluster/sl_os_ovs/openstack/gateway.yml
new file mode 100644
index 0000000..2e7f0f0
--- /dev/null
+++ b/classes/cluster/sl_os_ovs/openstack/gateway.yml
@@ -0,0 +1,78 @@
+classes:
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.neutron.gateway.cluster
+- cluster.virtual-mcp11-ovs
+parameters:
+ _param:
+ primary_interface: ens4
+ tenant_interface: ens5
+ external_interface: ens6
+ interface_mtu: 9000
+ linux_system_codename: xenial
+ linux:
+ network:
+ bridge: openvswitch
+ interface:
+ dhcp_int:
+ enabled: true
+ name: ens3
+ proto: dhcp
+ type: eth
+ mtu: ${_param:interface_mtu}
+ primary_interface:
+ enabled: true
+ name: ${_param:primary_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ tenant_interface:
+ enabled: true
+ name: ${_param:tenant_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ external_interface:
+ enabled: true
+ name: ${_param:external_interface}
+ mtu: ${_param:interface_mtu}
+ proto: manual
+ type: eth
+ br-floating:
+ enabled: true
+ type: ovs_bridge
+ mtu: ${_param:interface_mtu}
+ br-mgmt:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ mtu: ${_param:interface_mtu}
+ use_interfaces:
+ - ${_param:primary_interface}
+ br-mesh:
+ enabled: true
+ type: bridge
+ mtu: ${_param:interface_mtu}
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:tenant_interface}
+ float-to-ex:
+ enabled: true
+ type: ovs_port
+ mtu: ${_param:interface_mtu}
+ bridge: br-floating
+ br-ex:
+ enabled: true
+ type: bridge
+ mtu: ${_param:interface_mtu}
+ address: ${_param:external_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:external_interface}
+ use_ovs_ports:
+ - float-to-ex
\ No newline at end of file
diff --git a/classes/cluster/sl_os_ovs/openstack/init.yml b/classes/cluster/sl_os_ovs/openstack/init.yml
index 280ddce..6c1ddb6 100644
--- a/classes/cluster/sl_os_ovs/openstack/init.yml
+++ b/classes/cluster/sl_os_ovs/openstack/init.yml
@@ -1,7 +1,9 @@
parameters:
_param:
- openstack_proxy_address: 172.16.10.121
- openstack_proxy_node01_address: 172.16.10.121
+ openstack_proxy_hostname: prx
+ openstack_proxy_address: ${_param:openstack_proxy_node01_address}
+ openstack_proxy_node01_hostname: prx01
+ openstack_proxy_node01_address: ${_param:infra_config_address}
openstack_control_hostname: ctl
openstack_control_node01_hostname: ctl01
openstack_control_node02_hostname: ctl02
@@ -10,6 +12,10 @@
openstack_control_node01_address: 172.16.10.101
openstack_control_node02_address: 172.16.10.102
openstack_control_node03_address: 172.16.10.103
+ openstack_gateway_hostname: gtw
+ openstack_gateway_address: ${_param:openstack_gateway_node01_address}
+ openstack_gateway_node01_hostname: gtw01
+ openstack_gateway_node01_address: 172.16.10.110
openstack_database_address: ${_param:openstack_control_address}
openstack_message_queue_address: ${_param:openstack_control_address}
openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
@@ -94,40 +100,41 @@
prx:
address: ${_param:openstack_proxy_address}
names:
- - prx
- - prx.${_param:cluster_domain}
+ - ${_param:openstack_proxy_hostname}
+ - ${_param:openstack_proxy_hostname}.${_param:cluster_domain}
prx01:
address: ${_param:openstack_proxy_node01_address}
names:
- - prx01
- - prx01.${_param:cluster_domain}
+ - ${_param:openstack_proxy_node01_hostname}
+ - ${_param:openstack_proxy_node01_hostname}.${_param:cluster_domain}
ctl:
address: ${_param:openstack_control_address}
names:
- - ctl
- - ctl.${_param:cluster_domain}
+ - ${_param:openstack_control_hostname}
+ - ${_param:openstack_control_hostname}.${_param:cluster_domain}
ctl01:
address: ${_param:openstack_control_node01_address}
names:
- - ctl01
- - ctl01.${_param:cluster_domain}
+ - ${_param:openstack_control_node01_hostname}
+ - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
ctl02:
address: ${_param:openstack_control_node02_address}
names:
- - ctl02
- - ctl02.${_param:cluster_domain}
+ - ${_param:openstack_control_node02_hostname}
+ - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
ctl03:
address: ${_param:openstack_control_node03_address}
names:
- - ctl03
- - ctl03.${_param:cluster_domain}
- cmp01:
- address: 172.16.10.105
+ - ${_param:openstack_control_node03_hostname}
+ - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
+ gtw:
+ address: ${_param:openstack_gateway_address}
names:
- - cmp01
- - cmp01.${_param:cluster_domain}
- cmp02:
- address: 172.16.10.106
+ - ${_param:openstack_gateway_hostname}
+ - ${_param:openstack_gateway_hostname}.${_param:cluster_domain}
+ gtw01:
+ address: ${_param:openstack_gateway_address}
names:
- - cmp02
- - cmp02.${_param:cluster_domain}
+ - ${_param:openstack_gateway_hostname}
+ - ${_param:openstack_gateway_hostname}.${_param:cluster_domain}
+