summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mcp/patches/0006-maas-module-Add-VLAN-DHCP-enable-support.patch89
-rw-r--r--mcp/patches/patches.list1
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/infra/maas.yml.j213
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_compute.yml1
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j26
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j22
-rw-r--r--mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j25
7 files changed, 15 insertions, 102 deletions
diff --git a/mcp/patches/0006-maas-module-Add-VLAN-DHCP-enable-support.patch b/mcp/patches/0006-maas-module-Add-VLAN-DHCP-enable-support.patch
deleted file mode 100644
index d2f531168..000000000
--- a/mcp/patches/0006-maas-module-Add-VLAN-DHCP-enable-support.patch
+++ /dev/null
@@ -1,89 +0,0 @@
-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-: Copyright (c) 2018 Mirantis Inc., Enea AB and others.
-:
-: All rights reserved. This program and the accompanying materials
-: are made available under the terms of the Apache License, Version 2.0
-: which accompanies this distribution, and is available at
-: http://www.apache.org/licenses/LICENSE-2.0
-::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-Date: Sat, 19 Aug 2017 02:03:01 +0200
-Subject: [PATCH] maas: module: Add VLAN DHCP enable support
-
-MaaS custom py module does not support VLAN configuration.
-This should be implemented by adding a dedicated class for VLAN.
-However, we are only interested in updating an existign VLAN to
-enable DHCP on an existing IP range (set up via subnet configuration),
-so extend existing subnet handling to include basic VLAN update.
-
-NOTE: Design-wise, this is hacky, and its only purpose is to allow
-setting 'dhcp_on=True' for an existing VLAN.
-
-Example reclass model usage:
-maas:
- region:
- subnets:
- 192.168.11.0/24:
- # ...
- vlans:
- untagged:
- vid: 0
- dhcp_on: true
- primary_rack: mas01
-
-Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
----
-
-diff --git a/_modules/maas.py b/_modules/maas.py
-index d3227ca..8a2243d 100644
---- a/_modules/maas.py
-+++ b/_modules/maas.py
-@@ -204,6 +204,7 @@
- 'gateway_ip': subnet['gateway_ip'],
- }
- self._iprange = subnet['iprange']
-+ self._vlans = subnet['vlans']
- return data
-
- def update(self, new, old):
-@@ -214,6 +215,7 @@
- response = super(Subnet, self).send(data)
- res_json = json.loads(response)
- self._process_iprange(res_json['id'])
-+ self._process_dhcp_vlans_update(data)
- return response
-
- def _get_fabric_from_cidr(self, cidr):
-@@ -248,6 +250,32 @@
- else:
- self._maas.post(u'api/2.0/ipranges/', None, **data)
-
-+ def _process_dhcp_vlans_update(self, subnet_data):
-+ fabric_vlans = json.loads(self._maas.get(u'api/2.0/fabrics/{0}/vlans/'
-+ .format(subnet_data['fabric'])).read())
-+ LOG.warn('all fabric %s vlans %s', subnet_data['fabric'], fabric_vlans)
-+ for vlan_name, vlan_data in self._vlans.iteritems():
-+ update = False
-+ old_data = None
-+ for fabric_vlan in fabric_vlans:
-+ if fabric_vlan['vid'] == vlan_data['vid']:
-+ update = True
-+ old_data = fabric_vlan
-+ break
-+ data = {
-+ 'mtu': str(vlan_data.get('mtu', 1500)),
-+ 'dhcp_on': str(vlan_data.get('dhcp_on')),
-+ 'primary_rack': str(vlan_data.get('primary_rack')),
-+ 'secondary_rack': str(vlan_data.get('secondary_rack', ''))
-+ }
-+ if update:
-+ LOG.warn('UPDATING %s %s', data, old_data)
-+ self._maas.put(u'api/2.0/fabrics/{0}/vlans/{1}/'
-+ .format(subnet_data['fabric'], old_data['vid']),
-+ **data)
-+ else:
-+ LOG.warn('MISSING vlan %s, not doing anything', data)
-+
-
- class DHCPSnippet(MaasObject):
- def __init__(self):
diff --git a/mcp/patches/patches.list b/mcp/patches/patches.list
index 4d22c6178..a17fd694c 100644
--- a/mcp/patches/patches.list
+++ b/mcp/patches/patches.list
@@ -6,7 +6,6 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
/usr/share/salt-formulas/env: 0002-maas-region-skip-credentials-update.patch
-/usr/share/salt-formulas/env: 0006-maas-module-Add-VLAN-DHCP-enable-support.patch
/usr/share/salt-formulas/env: 0007-network.interface-Fix-ifup-OVS-port-with-route.patch
/usr/share/salt-formulas/env: 0008-Handle-extra-environment-variables.patch
/usr/share/salt-formulas/env: 0010-maas-region-allow-timeout-override.patch
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/infra/maas.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/infra/maas.yml.j2
index edec24ee1..6c11994e8 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/infra/maas.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/infra/maas.yml.j2
@@ -57,15 +57,18 @@ parameters:
name: {{ nm.net_admin }}
cidr: {{ nm.net_admin }}
gateway_ip: ${_param:single_address}
+ fabric: fabric-2
iprange:
start: {{ nm.net_admin_pool_start }}
end: {{ nm.net_admin_pool_end }}
type: dynamic
- vlans:
- untagged:
- vid: 0
- dhcp_on: true
- primary_rack: ${_param:infra_maas_node01_hostname}
+ fabrics:
+ fabric-2:
+ description: "Fabric Admin"
+ vlan:
+ 0:
+ description: "VLAN 0"
+ dhcp: true
sshprefs:
- '{{ conf.MAAS_SSH_KEY }}'
{%- if 'aarch64' in nm.cluster.arch %}
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_compute.yml b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_compute.yml
index 90cbb87bb..c7c6f2fab 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_compute.yml
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_compute.yml
@@ -7,6 +7,7 @@
##############################################################################
---
classes:
+ - system.linux.system.repo.mcp.mirror.v1.openstack
- system.linux.system.repo.glusterfs
- system.glusterfs.client.cluster
- system.nova.compute.cluster
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
index 38fe06a89..0189e038c 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_control.yml.j2
@@ -88,12 +88,6 @@ parameters:
glance:
server:
<<: *db_conn_recycle_time
- aodh:
- server:
- <<: *db_conn_recycle_time
- panko:
- server:
- <<: *db_conn_recycle_time
{%- if conf.MCP_VCP %}
heat:
server:
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
index 1e641b6bd..d070cf3ed 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_init.yml.j2
@@ -251,7 +251,7 @@ parameters:
pin:
- pin: 'release o=Canonical'
priority: 1200
- package: 'python-pymysql'
+ package: 'python-pymysql libvirt* *qemu*'
kernel:
sysctl:
net.ipv4.tcp_congestion_control: yeah
diff --git a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2 b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
index 2ed7c5336..c55ea0049 100644
--- a/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-common-ha/openstack_telemetry.yml.j2
@@ -78,8 +78,13 @@ parameters:
gnocchi:
wsgi:
threads: 1
+ panko:
+ server: &db_conn_recycle_time
+ database:
+ connection_recycle_time: ${_param:db_connection_recycle_time}
aodh:
server:
+ <<: *db_conn_recycle_time
coordination_backend:
url: ${_param:openstack_telemetry_redis_url}
ceilometer: