aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router
diff options
context:
space:
mode:
authorMichael Polenchuk <mpolenchuk@mirantis.com>2017-07-14 11:11:32 +0400
committerMichael Polenchuk <mpolenchuk@mirantis.com>2017-07-31 11:11:32 +0400
commitdf50704b226a11f6ce9d0a46b178a5b8e8cd0284 (patch)
tree11f13697a96c54ed28c9ba18fa716be183bd84bd /mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router
parent6b62f74000cd41fab84817bf119c33dbe44f91a4 (diff)
Bring in opendaylight L3/router scenario
Change-Id: I8a3be1764de136e2ecf81f964233483be5d6655a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
Diffstat (limited to 'mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router')
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/config.yml69
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/init.yml14
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/init.yml24
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/opendaylight/control.yml33
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/compute.yml86
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/control.yml102
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/gateway.yml94
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/init.yml135
8 files changed, 557 insertions, 0 deletions
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/config.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/config.yml
new file mode 100644
index 000000000..63e58a24b
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/config.yml
@@ -0,0 +1,69 @@
+classes:
+- service.git.client
+- system.linux.system.single
+- system.linux.system.repo.mcp.salt
+- system.salt.master.api
+- system.salt.master.pkg
+- system.reclass.storage.salt
+- system.salt.minion.ca.salt_master
+- system.salt.minion.cert.proxy
+- system.mysql.client.single
+- system.reclass.storage.system.openstack_compute_multi
+- system.reclass.storage.system.openstack_gateway_single
+- system.reclass.storage.system.opendaylight_control_single
+- cluster.virtual-mcp-ocata-odl-router
+parameters:
+ _param:
+ openstack_control_node01_hostname: ctl01
+ reclass_data_repository: local
+ salt_master_environment_repository: "https://github.com/tcpcloud"
+ salt_master_environment_revision: master
+ reclass_config_master: 192.168.10.100
+ single_address: 172.16.10.100
+ salt_master_host: 127.0.0.1
+ salt_master_base_environment: prd
+ salt_minion_ca_host: ${linux:network:fqdn}
+ salt_api_password_hash: "$6$sGnRlxGf$al5jMCetLP.vfI/fTl3Z0N7Za1aeiexL487jAtyRABVfT3NlwZxQGVhO7S1N8OwS/34VHYwZQA8lkXwKMN/GS1"
+ linux:
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ reclass:
+ storage:
+ data_source:
+ engine: local
+ node:
+ openstack_control_node01:
+ name: ${_param:openstack_control_node01_hostname}
+ domain: ${_param:cluster_domain}
+ classes:
+ - cluster.${_param:cluster_name}.openstack.control
+ params:
+ linux_system_codename: xenial
+ salt_master_host: ${_param:reclass_config_master}
+ single_address: ${_param:openstack_control_node01_address}
+ openstack_compute_node01:
+ params:
+ single_address: 172.16.10.105
+ tenant_address: 10.1.0.105
+ external_address: 10.16.0.105
+ openstack_compute_node02:
+ params:
+ single_address: 172.16.10.106
+ tenant_address: 10.1.0.106
+ external_address: 10.16.0.106
+ openstack_gateway_node01:
+ params:
+ tenant_address: 10.1.0.110
+ external_address: 10.16.0.110
+ opendaylight_control_node01:
+ classes:
+ - cluster.${_param:cluster_name}.opendaylight.control
+ params:
+ linux_system_codename: xenial
+ single_address: 172.16.10.111
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/init.yml
new file mode 100644
index 000000000..9140bd0bc
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/infra/init.yml
@@ -0,0 +1,14 @@
+parameters:
+ linux:
+ network:
+ host:
+ cfg01:
+ address: ${_param:infra_config_address}
+ names:
+ - cfg01
+ - cfg01.${_param:cluster_domain}
+ cfg:
+ address: ${_param:infra_config_address}
+ names:
+ - cfg
+ - cfg.${_param:cluster_domain}
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/init.yml
new file mode 100644
index 000000000..0698c644b
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/init.yml
@@ -0,0 +1,24 @@
+classes:
+- system.linux.system.single
+- cluster.virtual-mcp-ocata-odl-router.infra
+- cluster.virtual-mcp-ocata-odl-router.openstack
+
+parameters:
+ _param:
+ cluster_domain: virtual-mcp-ocata-odl-router.local
+ cluster_name: virtual-mcp-ocata-odl-router
+ # infra service addresses
+ infra_config_address: 172.16.10.100
+ # openstack service addresses
+ openstack_control_address: 172.16.10.101
+ 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_database_address: ${_param:openstack_control_address}
+ openstack_message_queue_address: ${_param:openstack_control_address}
+ openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
+ openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
+ openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
+ openstack_gateway_address: 172.16.10.110
+ opendaylight_service_host: 172.16.10.111
+ control_address: ${_param:openstack_control_address}
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/opendaylight/control.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/opendaylight/control.yml
new file mode 100644
index 000000000..6e37978a1
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/opendaylight/control.yml
@@ -0,0 +1,33 @@
+classes:
+- system.linux.system.repo.ubuntu
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.opendaylight.server.single
+- cluster.virtual-mcp-ocata-odl-router
+parameters:
+ _param:
+ linux_system_codename: xenial
+ linux:
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ opendaylight:
+ server:
+ odl_bind_ip: ${_param:single_address}
+ odl_rest_port: 8282
+ java_min_mem: 3g
+ java_max_mem: 3g
+ router_enabled: true
+ karaf_features:
+ odl_default:
+ - odl-restconf-all
+ - odl-aaa-authn
+ - odl-dlux-all
+ netvirt:
+ - odl-netvirt-openstack
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/compute.yml
new file mode 100644
index 000000000..e25f41742
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/compute.yml
@@ -0,0 +1,86 @@
+classes:
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.linux.storage.loopback
+- system.nova.compute.single
+- service.neutron.compute.single
+- service.cinder.volume.single
+- system.cinder.volume.backend.lvm
+- cluster.virtual-mcp-ocata-odl-router
+parameters:
+ _param:
+ primary_interface: ens4
+ tenant_interface: ens5
+ external_interface: ens6
+ interface_mtu: 9000
+ linux_system_codename: xenial
+ loopback_device_size: 10
+ nova:
+ compute:
+ vncproxy_url: http://${_param:cluster_vip_address}:6080
+ network:
+ region: ${_param:openstack_region}
+ user: neutron
+ tenant: service
+ password: ${_param:keystone_neutron_password}
+ neutron:
+ compute:
+ agent_mode: ${_param:neutron_compute_agent_mode}
+ message_queue:
+ host: ${_param:openstack_control_address}
+ metadata:
+ host: ${_param:openstack_control_address}
+ cinder:
+ volume:
+ database:
+ host: ${_param:cluster_local_address}
+ identity:
+ host: ${_param:cluster_local_address}
+ glance:
+ host: ${_param:cluster_local_address}
+ message_queue:
+ host: ${_param:cluster_local_address}
+ opendaylight:
+ client:
+ ovsdb_server_iface: ptcp:6639:127.0.0.1
+ ovsdb_odl_iface: tcp:${_param:opendaylight_service_host}:6640
+ tunnel_ip: ${_param:tenant_address}
+ 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
+ br-mgmt:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:primary_interface}
+ br-mesh:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: 255.255.255.0
+ use_interfaces:
+ - ${_param:tenant_interface}
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/control.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/control.yml
new file mode 100644
index 000000000..4d31b0922
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/control.yml
@@ -0,0 +1,102 @@
+classes:
+- system.linux.system.lowmem
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.memcached.server.single
+- system.rabbitmq.server.single
+- system.rabbitmq.server.vhost.openstack
+- system.keystone.server.wsgi
+- system.keystone.server.single
+- system.keystone.client.single
+- system.keystone.client.service.nova21
+- system.keystone.client.service.nova-placement
+- system.keystone.client.service.glare
+- system.keystone.client.service.cinder3
+- system.glance.control.single
+- system.nova.control.single
+- system.neutron.control.opendaylight.single
+- system.cinder.control.single
+- system.cinder.control.backend.lvm
+- system.heat.server.single
+- service.mysql.server.single
+- system.galera.server.database.cinder
+- system.galera.server.database.glance
+- system.galera.server.database.grafana
+- system.galera.server.database.heat
+- system.galera.server.database.keystone
+- system.galera.server.database.nova
+- system.horizon.server.single
+- service.haproxy.proxy.single
+- cluster.virtual-mcp-ocata-common.haproxy_openstack_api
+- cluster.virtual-mcp-ocata-odl-router
+parameters:
+ _param:
+ linux_system_codename: xenial
+ linux:
+ system:
+ package:
+ python-msgpack:
+ version: latest
+ network:
+ interface:
+ ens4:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:single_address}
+ netmask: 255.255.255.0
+ ens6:
+ enabled: true
+ type: eth
+ proto: static
+ address: ${_param:cluster_public_host}
+ netmask: 255.255.255.0
+ keystone:
+ server:
+ admin_email: ${_param:admin_email}
+ pkgs:
+ - keystone
+ - python-keystone
+ - python-keystoneclient
+ - python-psycopg2
+ - python-mysqldb
+ - python-six
+ - python-memcache
+ - python-openstackclient
+ - gettext-base
+ - python-pycadf
+ glance:
+ server:
+ storage:
+ engine: file
+ images: []
+ workers: 1
+ nova:
+ controller:
+ networking: dvr
+ cpu_allocation: 54
+ metadata:
+ password: ${_param:metadata_password}
+ bind:
+ private_address: ${_param:cluster_local_address}
+ public_address: ${_param:cluster_vip_address}
+ novncproxy_port: 6080
+ vncproxy_url: http://${_param:cluster_vip_address}:6080
+ workers: 1
+ neutron:
+ server:
+ backend:
+ router: ${_param:opendaylight_router}
+ heat:
+ server:
+ bind:
+ api_cfn:
+ address: ${_param:single_address}
+ api_cloudwatch:
+ address: ${_param:single_address}
+ mysql:
+ server:
+ version: '5.7'
+ bind:
+ address: ${_param:cluster_local_address}
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/gateway.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/gateway.yml
new file mode 100644
index 000000000..fee8097d2
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/gateway.yml
@@ -0,0 +1,94 @@
+classes:
+- system.linux.system.repo.mcp.openstack
+- system.linux.system.repo.mcp.extra
+- system.linux.system.repo.saltstack.xenial
+- system.neutron.gateway.opendaylight.single
+- cluster.virtual-mcp-ocata-odl-router
+parameters:
+ _param:
+ primary_interface: ens4
+ tenant_interface: ens5
+ external_interface: ens6
+ interface_mtu: 9000
+ linux_system_codename: xenial
+ neutron_agents:
+ - neutron-dhcp-agent
+ - neutron-metadata-agent
+ neutron:
+ gateway:
+ agent_mode: ${_param:neutron_gateway_agent_mode}
+ pkgs: ${_param:neutron_agents}
+ services: ${_param:neutron_agents}
+ backend:
+ router: ${_param:opendaylight_router}
+ opendaylight:
+ client:
+ ovsdb_server_iface: ptcp:6639:127.0.0.1
+ ovsdb_odl_iface: tcp:${_param:opendaylight_service_host}:6640
+ tunnel_ip: ${_param:tenant_address}
+ provider_mappings: physnet1:br-floating
+ 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
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/init.yml
new file mode 100644
index 000000000..69641aa2f
--- /dev/null
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-odl-router/openstack/init.yml
@@ -0,0 +1,135 @@
+parameters:
+ _param:
+ openstack_version: ocata
+ apt_mk_version: nightly
+ mcp_repo_version: 1.1
+ openstack_region: RegionOne
+ admin_email: root@localhost
+ cluster_public_protocol: http
+ cluster_public_host: 10.16.0.101
+ neutron_public_protocol: http
+ neutron_control_dvr: False
+ neutron_tenant_network_types: "flat,vxlan"
+ neutron_l3_ha: False
+ neutron_global_physnet_mtu: 1500
+ neutron_external_mtu: 1500
+ neutron_gateway_dvr: False
+ neutron_gateway_agent_mode: legacy
+ neutron_compute_dvr: False
+ neutron_compute_agent_mode: legacy
+ neutron_compute_external_access: False
+ galera_server_cluster_name: openstack_cluster
+ galera_server_maintenance_password: opnfv_secret
+ galera_server_admin_password: opnfv_secret
+ cluster_vip_address: ${_param:cluster_public_host}
+ cluster_local_address: ${_param:openstack_control_address}
+ cluster_node01_hostname: ctl01
+ cluster_node01_address: 172.16.10.101
+ cluster_node02_hostname: ctl02
+ cluster_node02_address: 172.16.10.102
+ cluster_node03_hostname: ctl03
+ cluster_node03_address: 172.16.10.103
+ rabbitmq_secret_key: opnfv_secret
+ rabbitmq_admin_password: opnfv_secret
+ rabbitmq_openstack_password: opnfv_secret
+ rabbitmq_cold_password: opnfv_secret
+ glance_version: ${_param:openstack_version}
+ glance_service_host: ${_param:cluster_local_address}
+ keystone_version: ${_param:openstack_version}
+ keystone_service_host: ${_param:cluster_local_address}
+ heat_version: ${_param:openstack_version}
+ heat_service_host: ${_param:cluster_local_address}
+ heat_domain_admin_password: opnfv_secret
+ ceilometer_version: ${_param:openstack_version}
+ ceilometer_service_host: 172.16.10.108
+ ceilometer_database_host: ${_param:cluster_local_address}
+ cinder_version: ${_param:openstack_version}
+ cinder_service_host: ${_param:cluster_local_address}
+ ceilometer_graphite_publisher_host: 172.16.10.107
+ ceilometer_graphite_publisher_port: 2013
+ nova_version: ${_param:openstack_version}
+ nova_service_host: ${_param:cluster_local_address}
+ nova_vncproxy_url: http://${_param:cluster_vip_address}:8060
+ neutron_version: ${_param:openstack_version}
+ neutron_service_host: ${_param:cluster_local_address}
+ metadata_password: password
+ mysql_admin_user: root
+ mysql_admin_password: opnfv_secret
+ mysql_cinder_password: opnfv_secret
+ mysql_ceilometer_password: opnfv_secret
+ mysql_glance_password: opnfv_secret
+ mysql_grafana_password: opnfv_secret
+ mysql_heat_password: opnfv_secret
+ mysql_keystone_password: opnfv_secret
+ mysql_neutron_password: opnfv_secret
+ mysql_nova_password: opnfv_secret
+ mysql_aodh_password: opnfv_secret
+ keystone_service_token: opnfv_secret
+ keystone_admin_password: opnfv_secret
+ keystone_ceilometer_password: opnfv_secret
+ keystone_cinder_password: opnfv_secret
+ keystone_glance_password: opnfv_secret
+ keystone_heat_password: opnfv_secret
+ keystone_keystone_password: opnfv_secret
+ keystone_neutron_password: opnfv_secret
+ keystone_nova_password: opnfv_secret
+ ceilometer_secret_key: opnfv_secret
+ metadata_password: opnfv_secret
+ horizon_version: ${_param:openstack_version}
+ horizon_secret_key: opaesee8Que2yahJoh9fo0eefo1Aeyo6ahyei8zeiboh3aeth5loth7ieNa5xi5e
+ horizon_identity_host: ${_param:cluster_vip_address}
+ horizon_identity_encryption: none
+ horizon_identity_version: 3
+ mongodb_server_replica_set: ceilometer
+ mongodb_ceilometer_password: cloudlab
+ mongodb_admin_password: cloudlab
+ mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
+ aodh_version: ${_param:openstack_version}
+ keystone_aodh_password: opnfv_secret
+ aodh_service_host: 172.16.10.108
+ opendaylight_router: odl-router_v2
+ linux:
+ system:
+ repo:
+ uca:
+ source: "deb http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/ocata main"
+ architectures: amd64
+ key_id: EC4926EA
+ key_server: keyserver.ubuntu.com
+ kernel:
+ sysctl:
+ net.ipv4.tcp_congestion_control: yeah
+ net.ipv4.tcp_slow_start_after_idle: 0
+ net.ipv4.tcp_fin_timeout: 30
+ network:
+ host:
+ ctl:
+ address: ${_param:openstack_control_address}
+ names:
+ - ctl
+ - ctl.${_param:cluster_domain}
+ ctl01:
+ address: ${_param:openstack_control_node01_address}
+ names:
+ - ctl01
+ - ctl01.${_param:cluster_domain}
+ gtw01:
+ address: ${_param:openstack_gateway_address}
+ names:
+ - gtw01
+ - gtw01.${_param:cluster_domain}
+ cmp01:
+ address: 172.16.10.105
+ names:
+ - cmp01
+ - cmp01.${_param:cluster_domain}
+ cmp02:
+ address: 172.16.10.106
+ names:
+ - cmp02
+ - cmp02.${_param:cluster_domain}
+ odl01:
+ address: 172.16.10.111
+ names:
+ - odl01
+ - odl01.${_param:cluster_domain}