Nova Helm Chart Override Generation - Part 2

Add more helm chart overrides for stx-nova.  These are based on
nova.conf options previously created by nova puppet manifests on the
controllers and computes.

- DEFAULT/reserved_host_memory_mb:  Nova sets default value to 512.  In
    stx, we handle memory overheads via compute per numa size config
    options so we can set this option to 0.
- DEFAULT/compute_monitors: enable cpu monitor
- scheduler/periodic_task_interval:  Temporarily disable stx-nova
    scheduler audit that attempts to contact patching api (to determine
    which hosts are patched) and sysinv api (to determine which hosts
    are upgraded). This currently doesn't work in the containers setup
    and is spewing exceptions in the nova scheduler log every minute.
    Disable it for now and we'll come back to this later.
- vnc/novncproxy_host:  Set to floating management address as this is
    where haproxy directs the requests.
- vnc/novncproxy_base_url:  Set based on floating oam address.
- vnc/vncserver_proxyclient_address:  Set per host to primary management
    address.  Currently this is superseded by upstream openstack-helm
    via file /tmp/pod-shared/nova-console.conf.  However, that doesn't
    work for standby AIO so we'll potentially disable it and use this
    setting.

Story: 2003909
Task: 27081
Change-Id: I3d165a2ca19f02de31ca1c6a53f7de27c3d8625d
Signed-off-by: Gerry Kopec <Gerry.Kopec@windriver.com>
This commit is contained in:
Gerry Kopec
2018-11-05 15:07:46 -05:00
committed by Gerry Kopec
parent 157eadd4e8
commit 1d77110235

View File

@@ -80,6 +80,8 @@ class NovaHelm(openstack.OpenstackBaseHelm):
'nova': {
'DEFAULT': {
'default_mempages_size': 2048,
'reserved_host_memory_mb': 0,
'compute_monitors': 'cpu.virt_driver',
'running_deleted_instance_poll_interval': 60,
'mkisofs_cmd': '/usr/bin/genisoimage',
'network_allocate_retries': 2,
@@ -139,11 +141,18 @@ class NovaHelm(openstack.OpenstackBaseHelm):
'soft_affinity_weight_multiplier': 0.0,
'soft_anti_affinity_weight_multiplier': 0.0
},
'scheduler': {
'periodic_task_interval': -1
},
'metrics': {
'required': False,
'weight_setting_multi': 'vswitch.multi_avail=100.0',
'weight_setting': 'vswitch.max_avail=100.0'
},
'vnc': {
'novncproxy_host': self._get_management_address(),
'novncproxy_base_url': self._get_novncproxy_base_url(),
},
'upgrade_levels': 'None'
},
'overrides': {
@@ -230,6 +239,11 @@ class NovaHelm(openstack.OpenstackBaseHelm):
return overrides
def _get_novncproxy_base_url(self):
oam_addr = self._get_oam_address(),
url = "http://%s:6080/vnc_auto.html" % oam_addr
return url
def _get_virt_type(self):
if utils.is_virtual():
return 'qemu'
@@ -324,10 +338,14 @@ class NovaHelm(openstack.OpenstackBaseHelm):
primary_mgmt = iface
migration_iface = primary_infra or primary_mgmt
if migration_iface is None:
return
for addr in addresses:
if addr.interface_uuid == migration_iface.uuid:
migration_ip = addr.address
ip_family = addr.family
if addr.interface_uuid == primary_mgmt.uuid:
mgmt_ip = addr.address
default_config.update({'my_ip': migration_ip})
if ip_family == 4:
@@ -336,6 +354,7 @@ class NovaHelm(openstack.OpenstackBaseHelm):
vnc_config.update({'vncserver_listen': '::0'})
libvirt_config.update({'live_migration_inbound_addr': str(host.hostname) + '-infra'})
vnc_config.update({'vncserver_proxyclient_address': mgmt_ip})
def _update_host_memory(self, host, default_config):
vswitch_2M_pages = []