blob: aa7785dab84ec477d2152a980a4dfe3429c73028 [file] [log] [blame]
# Copyright (c) 2022 VEXXHOST, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
_openstack_helm_nova_values: "{{ __openstack_helm_nova_values | combine(openstack_helm_nova_values, recursive=True) }}"
__openstack_helm_nova_values:
endpoints: "{{ openstack_helm_endpoints }}"
labels:
agent:
compute_ironic:
node_selector_key: openstack-control-plane
node_selector_value: enabled
images:
tags:
bootstrap: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
db_drop: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
db_init: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
dep_check: "{{ openstack_helm_nova_image_repository }}/kubernetes-entrypoint:latest"
ks_endpoints: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
ks_service: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
ks_user: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
nova_api: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_archive_deleted_rows: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_cell_setup_init: "{{ openstack_helm_nova_image_repository }}/heat:{{ openstack_helm_nova_heat_image_tag }}"
nova_cell_setup: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
# TODO(mnaser): Fix Ironic images
nova_compute_ironic: "docker.io/kolla/ubuntu-source-nova-compute-ironic:wallaby"
nova_compute_ssh: "{{ openstack_helm_nova_image_repository }}/nova-ssh:{{ openstack_helm_nova_ssh_image_tag }}"
nova_compute: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_conductor: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_consoleauth: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_db_sync: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_novncproxy_assets: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_novncproxy: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_placement: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_scheduler: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_service_cleaner: "{{ openstack_helm_nova_image_repository }}/cli:latest"
nova_spiceproxy_assets: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
nova_spiceproxy: "{{ openstack_helm_nova_image_repository }}/nova:{{ openstack_helm_nova_image_tag }}"
rabbit_init: "{{ openstack_helm_nova_image_repository }}/rabbitmq:3.8.23-management"
network:
ssh:
enabled: true
public_key: "{{ _nova_ssh_publickey.public_key }}"
private_key: "{{ openstack_helm_nova_ssh_key }}"
bootstrap:
structured:
flavors:
enabled: false
pod:
replicas:
api_metadata: 3
osapi: 3
conductor: 3
scheduler: 3
novncproxy: 3
spiceproxy: 3
conf:
paste:
composite:openstack_compute_api_v21:
keystone: cors http_proxy_to_wsgi compute_req_id faultwrap sizelimit authtoken keystonecontext osapi_compute_app_v21
composite:openstack_compute_api_v21_legacy_v2_compatible:
keystone: cors http_proxy_to_wsgi compute_req_id faultwrap sizelimit authtoken keystonecontext legacy_v2_compatible osapi_compute_app_v21
nova:
DEFAULT:
allow_resize_to_same_host: true
cpu_allocation_ratio: 4.5
ram_allocation_ratio: 0.9
disk_allocation_ratio: 3.0
resume_guests_state_on_host_boot: true
osapi_compute_workers: 8
metadata_workers: 8
cache:
backend: oslo_cache.memcache_pool
cinder:
catalog_info: volumev3::internalURL
conductor:
workers: 8
cors:
allowed_origin: "*"
allow_headers: "X-Auth-Token,X-OpenStack-Nova-API-Version"
filter_scheduler:
enabled_filters:
ComputeFilter,
AggregateTypeAffinityFilter,
ComputeCapabilitiesFilter,
PciPassthroughFilter,
ImagePropertiesFilter,
ServerGroupAntiAffinityFilter,
ServerGroupAffinityFilter
image_properties_default_architecture: x86_64
max_instances_per_host: 200
glance:
enable_rbd_download: true
neutron:
metadata_proxy_shared_secret: "{{ openstack_helm_endpoints['compute_metadata']['secret'] }}"
scheduler:
workers: 8
nova_ironic:
DEFAULT:
log_config_append: null
force_config_drive: true
manifests:
deployment_consoleauth: false
deployment_placement: false
ingress_metadata: false
ingress_novncproxy: false
ingress_osapi: false
ingress_placement: false
job_db_init_placement: false
job_ks_placement_endpoints: false
job_ks_placement_service: false
job_ks_placement_user: false
secret_keystone_placement: false
service_ingress_metadata: false
service_ingress_novncproxy: false
service_ingress_osapi: false
service_ingress_placement: false
service_placement: false
statefulset_compute_ironic: true