diff options
Diffstat (limited to 'mcp/reclass')
23 files changed, 217 insertions, 121 deletions
diff --git a/mcp/reclass/classes/cluster/.gitignore b/mcp/reclass/classes/cluster/.gitignore index a6b1b7d56..7d40a2bec 100644 --- a/mcp/reclass/classes/cluster/.gitignore +++ b/mcp/reclass/classes/cluster/.gitignore @@ -15,3 +15,5 @@ mcp-pike-ovn-ha/infra/init_vcp.yml mcp-pike-ovn-ha/infra/kvm.yml mcp-pike-odl-ha/opendaylight/control.yml mcp-pike-odl-ha/openstack/init.yml +mcp-pike-odl-noha/infra/config.yml +mcp-pike-odl-noha/openstack/compute.yml diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml index bd75e7b72..525abbea7 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml @@ -87,12 +87,18 @@ parameters: openstack_telemetry_node01: params: linux_system_codename: xenial + # create resources only from 1 controller + # to prevent race conditions + ceilometer_create_gnocchi_resources: true + redis_cluster_role: 'master' openstack_telemetry_node02: params: linux_system_codename: xenial + redis_cluster_role: 'slave' openstack_telemetry_node03: params: linux_system_codename: xenial + redis_cluster_role: 'slave' openstack_message_queue_node01: params: linux_system_codename: xenial diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas.yml index e83de35cd..238ae95a3 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas.yml @@ -41,20 +41,6 @@ parameters: enable_third_party_drivers: true network_discovery: 'enabled' default_min_hwe_kernel: ${_param:hwe_kernel} - subnets: - opnfv_maas_pxe: - name: ${_param:opnfv_infra_maas_pxe_network_address}/24 - cidr: ${_param:opnfv_infra_maas_pxe_network_address}/24 - gateway_ip: ${_param:single_address} - iprange: - start: ${_param:opnfv_infra_maas_pxe_start_address} - end: ${_param:opnfv_infra_maas_pxe_end_address} - type: dynamic - vlans: - untagged: - vid: 0 - dhcp_on: true - primary_rack: ${_param:infra_maas_node01_hostname} cluster: saltstack_repo_xenial: "http://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.11/ xenial main" linux: diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2 index 849f26124..1838590e9 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j2 @@ -5,12 +5,66 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +{%- set cluster_arch = [] %} +{%- for node in conf.nodes %} + {%- if node.node.arch not in cluster_arch %} + {%- do cluster_arch.append(node.node.arch) %} + {%- endif %} +{%- endfor %} +{%- set net_admin = [conf.idf.net_config.admin.network, + conf.idf.net_config.admin.mask] | join("/") %} --- parameters: maas: region: + subnets: + {{ net_admin }}: + name: {{ net_admin }} + cidr: {{ net_admin }} + gateway_ip: ${_param:single_address} + iprange: + start: ${_param:opnfv_infra_maas_pxe_start_address} + end: ${_param:opnfv_infra_maas_pxe_end_address} + type: dynamic + vlans: + untagged: + vid: 0 + dhcp_on: true + primary_rack: ${_param:infra_maas_node01_hostname} + # Space-separated list of dpkg architectures to be supported by MaaS + opnfv_arches:{%- for arch in cluster_arch %} {{ arch | dpkg_arch }}{%- endfor %} sshprefs: - '{{ conf.MAAS_SSH_KEY }}' +{%- if 'aarch64' in cluster_arch %} + package_repositories: + armband: + name: armband + enabled: '1' + url: 'http://linux.enea.com/mcp-repos/${_param:openstack_version}/${_param:linux_system_codename}' + distributions: '${_param:openstack_version}-armband' + components: 'main' + arches: 'arm64' + key: &armband_key | + -----BEGIN PGP PUBLIC KEY BLOCK----- + Version: GnuPG v2.0.14 (GNU/Linux) + + mQENBFagAroBCADWboNIjuF6lB1mWv2+EbvqY3lKl5mLKhr2DnSUkKeHUPBv8gNM + qK8Q00AMIyPiyEhgjA+dWizZ+5aBgxoiY7oMeLJ2Xym36U/8SYq2BWd3SGCbMNoz + SJDxDUSM/HFVs6atF1M3DY9oN65hSVnu4uy5Tu6asf6k4rhAyk0z4+pRcPBCu2vq + mnGi3COM/+9PShrEKeVOx5W2vRJywUFuq8EDvQnRoJ0GvM28JiJIanw17YwIPxhg + BKZVpZjan5X+ihVMXwA2h/G/FS5Omhd50RqV6LWSYs94VJJgYqHx8UMm7izcxI+P + ct3IcbD195bPbJ+SbuiFe45ZLsdY1MyGiU2BABEBAAG0K0VuZWEgQXJtYmFuZCBE + ZXZvcHMgVGVhbSA8YXJtYmFuZEBlbmVhLmNvbT6JATgEEwECACICGwMGCwkIBwMC + BhUIAgkKCwQWAgMBAh4BAheABQJaY3bYAAoJEN6rkLp5irHRoQMH/0PYl0A/6eWw + nQ/szhEFrr76Ln6wA4vEO+PiuWj9kTkZM2NaCnkisrIuHSPIVvOLfFmztbE6sKGe + t+a2b7Jqw48DZ/gq508aZE4Q307ookxdCOrzIu/796hFO34yXg3sqZoJh3VmKIjY + 4DL8yG1iAiQ5vOw3IFWQnATwIZUgaCcjmE7HGap+9ePuJfFuQ8mIG5cy28t8qocx + AB/B2tucfBMwomYxKqgbLI5AG7iSt58ajvrrNa9f8IX7Ihj/jiuXhUwX+geEp98K + IWVI1ftEthZvfBpZW4BS98J4z//dEPi31L4jb9RQXq3afF2RpXchDeUN85bW45nu + W/9PMAlgE/U= + =m+zE + -----END PGP PUBLIC KEY BLOCK----- +{%- endif %} machines: {%- set pxe_interface = conf.idf.net_config.admin.interface %} {#- We only support exactly 5 nodes for now, hardcoded order #} diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml index 24acbacf1..c9bba93f2 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml @@ -16,6 +16,7 @@ classes: - system.cinder.volume.single - system.cinder.volume.backend.lvm - system.ceilometer.agent.cluster + - system.ceilometer.agent.polling.default - cluster.mcp-pike-common-ha.openstack_compute_pdf - cluster.mcp-pike-common-ha.include.maas_proxy - cluster.mcp-pike-common-ha.include.lab_proxy_pdf diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2 index 6f7b33e3d..599c48e80 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2 @@ -7,6 +7,7 @@ ############################################################################## --- classes: + - system.linux.system.repo.mcp.openstack - system.linux.system.repo.glusterfs - system.ceilometer.client - system.memcached.server.single @@ -21,7 +22,6 @@ classes: - system.designate.server.backend.bind - system.bind.server.single - system.haproxy.proxy.listen.openstack.nova-placement - - system.haproxy.proxy.listen.openstack.glare - system.glusterfs.client.cluster - system.glusterfs.client.volume.glance - system.glusterfs.client.volume.keystone @@ -82,15 +82,6 @@ parameters: host: ${_param:openstack_proxy_control_address} port: 8003 protocol: http - nova: - controller: - pkgs: - - nova-api - - nova-conductor - - nova-consoleauth - - nova-novncproxy - - nova-scheduler - - python-novaclient {%- else %} libvirt: server: diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_init.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_init.yml index 7c1fac5f9..d34892282 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_init.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_init.yml @@ -12,6 +12,7 @@ classes: - system.keystone.client.service.ceilometer - system.keystone.client.service.nova21 - system.keystone.client.service.nova-placement - - system.keystone.client.service.glare - system.keystone.client.service.cinder3 - system.keystone.client.service.designate + - system.keystone.client.service.gnocchi + - system.keystone.client.service.panko diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_database.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_database.yml index 221c84f6c..e65fc24a2 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_database.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_database.yml @@ -14,11 +14,13 @@ classes: - system.galera.server.database.cinder - system.galera.server.database.designate - system.galera.server.database.glance + - system.galera.server.database.gnocchi - system.galera.server.database.grafana - system.galera.server.database.heat - system.galera.server.database.keystone - system.galera.server.database.nova - system.galera.server.database.neutron + - system.galera.server.database.panko parameters: _param: keepalived_vip_interface: ${_param:single_nic} diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2 index f6533855b..796bbb138 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2 @@ -201,13 +201,20 @@ parameters: horizon_identity_host: ${_param:openstack_control_address} horizon_identity_encryption: none horizon_identity_version: 3 - mongodb_server_replica_set: ceilometer - mongodb_ceilometer_password: opnfv_secret - mongodb_admin_password: opnfv_secret - mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth metadata_password: opnfv_secret openstack_telemetry_keepalived_password: opnfv_secret aodh_service_host: ${_param:openstack_telemetry_address} + gnocchi_version: 4.0 + gnocchi_service_host: ${_param:openstack_telemetry_address} + mysql_gnocchi_password: opnfv_secret + keystone_gnocchi_password: opnfv_secret + panko_version: ${_param:openstack_version} + panko_service_host: ${_param:openstack_telemetry_address} + mysql_panko_password: opnfv_secret + keystone_panko_password: opnfv_secret + ceilometer_agent_default_polling_interval: 180 + ceilometer_agent_default_polling_meters: + - "*" designate_service_host: ${_param:openstack_control_address} designate_bind9_rndc_key: 4pc+X4PDqb2q+5o72dISm72LM1Ds9X2EYZjqg+nmsS7FhdTwzFFY8l/iEDmHxnyjkA33EQC8H+z0fLLBunoitw== designate_domain_id: 5186883b-91fb-4891-bd49-e6769234a8fc @@ -248,10 +255,6 @@ parameters: linux: system: repo: - uca-staging: - source: "deb http://ppa.launchpad.net/ubuntu-cloud-archive/${_param:openstack_version}-staging/ubuntu xenial main" - key_id: 9F68104E - key_server: keyserver.ubuntu.com uca: source: "deb http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/${_param:openstack_version} main" key_id: EC4926EA diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 index 26943b7b6..63a5d3af9 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 @@ -7,6 +7,7 @@ ############################################################################## --- classes: + - system.linux.system.repo.mcp.openstack - system.nginx.server.single - system.nginx.server.proxy.openstack_api - system.nginx.server.proxy.openstack_vnc diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_telemetry.yml index a42189a80..bf0dc0b41 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_telemetry.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_telemetry.yml @@ -7,14 +7,22 @@ ############################################################################## --- classes: - - system.linux.system.repo.mcp.extra - - system.mongodb.server.cluster - - system.mongodb.server.database.ceilometer - - system.ceilometer.server.backend.mongodb - # - system.ceilometer.server.backend.influxdb - # - system.heka.ceilometer_collector.single + - system.linux.system.repo.mcp.openstack + - service.redis.server.single - system.ceilometer.server.cluster + - system.ceilometer.server.coordination.redis + - system.ceilometer.server.backend.default - system.aodh.server.cluster + - system.aodh.server.coordination.redis + - system.memcached.server.single + - system.apache.server.single + - system.apache.server.site.gnocchi + - system.apache.server.site.panko + - system.gnocchi.server.cluster + - system.gnocchi.common.storage.incoming.redis + - system.gnocchi.common.storage.redis + - system.gnocchi.common.coordination.redis + - system.panko.server.cluster parameters: _param: keepalived_openstack_telemetry_vip_interface: ${_param:single_nic} @@ -27,7 +35,53 @@ parameters: cluster_node02_address: ${_param:openstack_telemetry_node02_address} cluster_node03_hostname: ${_param:openstack_telemetry_node03_hostname} cluster_node03_address: ${_param:openstack_telemetry_node03_address} - mongodb: + redis_sentinel_node01_address: ${_param:openstack_telemetry_node01_address} + redis_sentinel_node02_address: ${_param:openstack_telemetry_node02_address} + redis_sentinel_node03_address: ${_param:openstack_telemetry_node03_address} + # yamllint disable-line rule:line-length + openstack_telemetry_redis_url: redis://${_param:redis_sentinel_node01_address}:26379?sentinel=master_1&sentinel_fallback=${_param:redis_sentinel_node02_address}:26379&sentinel_fallback=${_param:redis_sentinel_node03_address}:26379 + gnocchi_coordination_url: ${_param:openstack_telemetry_redis_url} + gnocchi_storage_incoming_redis_url: ${_param:openstack_telemetry_redis_url} + redis: server: - logging: - verbose: v + version: 3.0 + appendfsync: 'no' + bind: + address: ${_param:single_address} + cluster: + enabled: true + mode: sentinel + role: ${_param:redis_cluster_role} + quorum: 2 + master: + host: ${_param:cluster_node01_address} + port: 6379 + sentinel: + address: ${_param:single_address} + gnocchi: + common: + database: + host: ${_param:openstack_database_address} + server: + pkgs: + - gnocchi-api + - gnocchi-metricd + - python-memcache + apache: + server: + ~modules: + - wsgi + - rewrite + site: + gnocchi: + wsgi: + threads: 1 + aodh: + server: + coordination_backend: + url: ${_param:openstack_telemetry_redis_url} + ceilometer: + server: + ~database: ~ + coordination_backend: + url: ${_param:openstack_telemetry_redis_url} diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-noha/haproxy_openstack_api.yml b/mcp/reclass/classes/cluster/mcp-pike-common-noha/haproxy_openstack_api.yml index 21653d7cb..7235071f5 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-noha/haproxy_openstack_api.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-noha/haproxy_openstack_api.yml @@ -45,17 +45,6 @@ parameters: host: ${_param:cluster_node01_address} port: 9191 params: ${_param:haproxy_check} - glare: - type: general-service - service_name: glare - binds: - - address: ${_param:cluster_vip_address} - port: 9494 - servers: - - name: ctl01 - host: ${_param:cluster_node01_address} - port: 9494 - params: ${_param:haproxy_check} heat_cloudwatch_api: type: openstack-service service_name: heat @@ -139,18 +128,6 @@ parameters: host: ${_param:cluster_node01_address} port: 8778 params: ${_param:haproxy_check} - nova_ec2_api: - type: general-service - service_name: nova - check: false - binds: - - address: ${_param:cluster_vip_address} - port: 8773 - servers: - - name: ctl01 - host: ${_param:cluster_node01_address} - port: 8773 - params: ${_param:haproxy_check} nova_api: type: openstack-service service_name: nova diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_compute.yml b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_compute.yml index 3d84e6c18..8b6a74d7a 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_compute.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_compute.yml @@ -14,6 +14,7 @@ classes: - system.ceilometer.agent.cluster - system.ceilometer.client.nova_compute - system.ceilometer.client.cinder_volume + - system.ceilometer.agent.polling.default - system.linux.system.repo.mcp.openstack - cluster.mcp-pike-common-noha.openstack_compute_pdf parameters: diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_control.yml b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_control.yml index 01b320973..29b2d627e 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_control.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_control.yml @@ -8,9 +8,8 @@ --- classes: - system.linux.system.lowmem + - system.linux.system.repo.mcp.openstack - service.nfs.server - - system.mongodb.server.single - - system.mongodb.server.database.ceilometer - system.ceilometer.client - system.ceilometer.client.neutron - system.memcached.server.single @@ -21,10 +20,11 @@ classes: - 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.keystone.client.service.ceilometer - system.keystone.client.service.aodh + - system.keystone.client.service.gnocchi + - system.keystone.client.service.panko - system.glance.control.single - system.nova.control.single - system.cinder.control.single @@ -39,8 +39,21 @@ classes: - system.galera.server.database.nova - system.galera.server.database.ceilometer - system.galera.server.database.aodh + - system.galera.server.database.gnocchi + - system.galera.server.database.panko + - service.redis.server.single - service.ceilometer.server.single + - system.ceilometer.server.coordination.redis + - system.ceilometer.server.backend.default - system.aodh.server.single + - system.aodh.server.coordination.redis + - system.gnocchi.server.single + - system.gnocchi.common.storage.incoming.redis + - system.gnocchi.common.storage.redis + - system.gnocchi.common.coordination.redis + - service.panko.server.single + - system.apache.server.site.gnocchi + - system.apache.server.site.panko - system.horizon.server.single - service.haproxy.proxy.single - cluster.mcp-pike-common-noha.haproxy_openstack_api @@ -48,6 +61,7 @@ classes: parameters: _param: linux_system_codename: xenial + ceilometer_create_gnocchi_resources: 'True' linux: system: package: @@ -58,6 +72,11 @@ parameters: admin_email: ${_param:admin_email} openrc_extra: volume_device_name: vdc + pkgs: + - keystone + - python-psycopg2 + - python-mysqldb + - python-openstackclient glance: server: storage: @@ -76,13 +95,6 @@ parameters: novncproxy_port: 6080 vncproxy_url: http://${_param:cluster_vip_address}:6080 workers: 1 - pkgs: - - nova-api - - nova-conductor - - nova-consoleauth - - nova-novncproxy - - nova-scheduler - - python-novaclient horizon: server: # yamllint disable-line rule:truthy @@ -106,12 +118,15 @@ parameters: thread_cache_size: 12 query_cache_limit: 2 query_cache_size: 0 - mongodb: + ceilometer: server: + ~database: ~ + redis: + server: + version: 3.0 + appendfsync: 'no' bind: - address: ${_param:cluster_local_address},127.0.0.1 - logging: - verbose: v + address: ${_param:single_address} nfs: server: share: @@ -128,3 +143,9 @@ parameters: server: vlan_aware_vms: true root_helper_daemon: false + apache: + server: + site: + gnocchi: + wsgi: + threads: 1 diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_gateway.yml b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_gateway.yml index 8061bb1fe..5edf48c31 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_gateway.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_gateway.yml @@ -7,6 +7,7 @@ ############################################################################## --- classes: + - system.linux.system.repo.mcp.openstack - cluster.mcp-pike-common-noha.openstack_gateway_pdf parameters: _param: diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_init.yml b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_init.yml index 7c6ce90b7..ff99b9b42 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_init.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-common-noha/openstack_init.yml @@ -84,26 +84,22 @@ parameters: horizon_identity_host: ${_param:cluster_vip_address} horizon_identity_encryption: none horizon_identity_version: 3 - mongodb_server_replica_set: ceilometer - mongodb_ceilometer_password: opnfv_secret - mongodb_admin_password: opnfv_secret - mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth aodh_version: ${_param:openstack_version} keystone_aodh_password: opnfv_secret aodh_service_host: ${_param:cluster_local_address} + gnocchi_version: 4.0 + gnocchi_service_host: ${_param:cluster_local_address} + mysql_gnocchi_password: opnfv_secret + keystone_gnocchi_password: opnfv_secret + panko_version: ${_param:openstack_version} + panko_service_host: ${_param:cluster_local_address} + mysql_panko_password: opnfv_secret + keystone_panko_password: opnfv_secret + ceilometer_agent_default_polling_interval: 180 + ceilometer_agent_default_polling_meters: + - "*" linux: system: - repo: - uca-staging: - # yamllint disable rule:line-length - source: "deb http://ppa.launchpad.net/ubuntu-cloud-archive/${_param:openstack_version}-staging/ubuntu xenial main" - key_id: 9F68104E - key_server: keyserver.ubuntu.com - # yamllint enable rule:line-length - uca: - source: "deb http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/${_param:openstack_version} main" - key_id: EC4926EA - key_server: keyserver.ubuntu.com kernel: sysctl: net.ipv4.tcp_congestion_control: yeah diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/compute_pdf.yml.j2 index 912537f8f..7cf4c8864 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/compute_pdf.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/compute_pdf.yml.j2 @@ -8,7 +8,7 @@ {%- import 'net_map.j2' as nm with context %} {#- Filter-out NIC duplicates by constructing a dict (used NICs only) #} {%- set nics = { nm.cmp001.nic_private: True } %} -{%- set vlan_private_start = nm.vlan_private.rsplit('-')[0] %} +{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %} {%- set vlans = { vlan_private_start: nm.cmp001.nic_private } %} --- parameters: diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml index cd1ae9040..3c6b3a2cf 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml @@ -14,18 +14,6 @@ parameters: nginx: server: site: - nginx_proxy_opendaylight_web: - enabled: true - type: nginx_proxy - name: opendaylight_web - check: false - proxy: - host: ${_param:opendaylight_service_host} - port: 8181 - protocol: http - host: - name: ${_param:nginx_proxy_openstack_api_host} - port: 8181 nginx_proxy_opendaylight_rest: enabled: true type: nginx_proxy diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml.j2 index b63ac68b5..46e25fe95 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/infra/config.yml.j2 @@ -11,7 +11,7 @@ classes: - system.reclass.storage.system.openstack_gateway_single - cluster.mcp-pike-common-noha.infra.config - cluster.mcp-pike-odl-noha - - cluster.all-mcp-arch-common.infra.config_pdf + - cluster.all-mcp-arch-common.infra.config{%- if conf.MCP_DPDK_MODE %}_dpdk{%- endif %}_pdf parameters: reclass: storage: diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml.j2 index b0690167f..12dfdcaa1 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/compute.yml.j2 @@ -9,12 +9,34 @@ classes: - service.neutron.compute.single - service.neutron.compute.opendaylight.single +{%- if conf.MCP_DPDK_MODE %} + - system.nova.compute.nfv.hugepages + - system.neutron.compute.nfv.dpdk +{%- endif %} - cluster.mcp-pike-common-noha.openstack_compute - cluster.mcp-pike-odl-noha parameters: linux: network: interface: +{%- if conf.MCP_DPDK_MODE %} + dpdk0: + name: ${_param:dpdk0_name} + pci: ${_param:dpdk0_pci} + driver: ${_param:dpdk0_driver} + enabled: true + bridge: br-prv + type: dpdk_ovs_port + n_rxq: ${_param:dpdk0_n_rxq} + br-prv: + enabled: true + type: dpdk_ovs_bridge + proto: static + address: ${_param:tenant_address} + netmask: 255.255.255.0 + tenant_interface: + type: dpdk # Not a meaningful type, just match 'dpdk' for filtering +{%- endif %} external_interface: enabled: true type: eth diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/control.yml index 5bc0f2444..4c48d0798 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/control.yml +++ b/mcp/reclass/classes/cluster/mcp-pike-odl-noha/openstack/control.yml @@ -14,17 +14,6 @@ parameters: haproxy: proxy: listen: - opendaylight-web: - type: general-service - service_name: opendaylight - binds: - - address: ${_param:cluster_vip_address} - port: 8181 - servers: - - name: odl01 - host: ${_param:opendaylight_service_host} - port: 8181 - params: ${_param:haproxy_check} opendaylight-rest: type: general-service service_name: opendaylight diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/compute_pdf.yml.j2 index 912537f8f..7cf4c8864 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/compute_pdf.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/compute_pdf.yml.j2 @@ -8,7 +8,7 @@ {%- import 'net_map.j2' as nm with context %} {#- Filter-out NIC duplicates by constructing a dict (used NICs only) #} {%- set nics = { nm.cmp001.nic_private: True } %} -{%- set vlan_private_start = nm.vlan_private.rsplit('-')[0] %} +{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %} {%- set vlans = { vlan_private_start: nm.cmp001.nic_private } %} --- parameters: diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/compute_pdf.yml.j2 index 912537f8f..7cf4c8864 100644 --- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/compute_pdf.yml.j2 +++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/compute_pdf.yml.j2 @@ -8,7 +8,7 @@ {%- import 'net_map.j2' as nm with context %} {#- Filter-out NIC duplicates by constructing a dict (used NICs only) #} {%- set nics = { nm.cmp001.nic_private: True } %} -{%- set vlan_private_start = nm.vlan_private.rsplit('-')[0] %} +{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %} {%- set vlans = { vlan_private_start: nm.cmp001.nic_private } %} --- parameters: |