aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/mcp-pike-common-ha
diff options
context:
space:
mode:
Diffstat (limited to 'mcp/reclass/classes/cluster/mcp-pike-common-ha')
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml6
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas.yml14
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/maas_pdf.yml.j254
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml1
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j211
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_init.yml3
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_database.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j219
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j21
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_telemetry.yml72
10 files changed, 141 insertions, 42 deletions
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}