blob: f7ba6af4563c9adcada7cb1365344cf1eabb4a1e [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.
_nova_helm_values:
endpoints: "{{ openstack_helm_endpoints }}"
labels:
agent:
compute_ironic:
node_selector_key: openstack-control-plane
node_selector_value: enabled
images:
tags: "{{ atmosphere_images | vexxhost.atmosphere.openstack_helm_image_tags('nova') }}"
network:
backend:
- "{{ atmosphere_network_backend | default('openvswitch') }}"
ssh:
enabled: true
public_key: "{{ _nova_ssh_publickey.public_key }}"
private_key: "{{ nova_ssh_key }}"
bootstrap:
structured:
flavors:
enabled: false
pod:
useHostNetwork:
novncproxy: false
replicas:
api_metadata: 3
osapi: 3
conductor: 3
scheduler: 3
novncproxy: 3
spiceproxy: 3
conf:
ceph:
enabled: "{{ atmosphere_ceph_enabled | default(true) | bool }}"
nova:
DEFAULT:
log_config_append: null
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
api:
list_records_by_skipping_down_cells: false
barbican:
barbican_endpoint_type: internal
cache:
backend: oslo_cache.memcache_pool
cinder:
catalog_info: volumev3::internalURL
os_region_name: "{{ openstack_helm_endpoints_nova_region_name }}"
username: "nova-{{ openstack_helm_endpoints_nova_region_name }}"
password: "{{ openstack_helm_endpoints_nova_keystone_password }}"
conductor:
workers: 8
compute:
consecutive_build_service_disable_threshold: 0
cors:
allowed_origin: "*"
allow_headers: "X-Auth-Token,X-OpenStack-Nova-API-Version"
database:
connection_recycle_time: 600
max_overflow: 50
max_pool_size: 5
pool_timeout: 30
filter_scheduler:
available_filters:
type: multistring
values:
- nova.scheduler.filters.all_filters
- nova_scheduler_filters.failure_domain_filter.FailureDomainFilter
enabled_filters:
AvailabilityZoneFilter,
ComputeFilter,
AggregateTypeAffinityFilter,
ComputeCapabilitiesFilter,
PciPassthroughFilter,
ImagePropertiesFilter,
ServerGroupAntiAffinityFilter,
ServerGroupAffinityFilter,
FailureDomainFilter
image_properties_default_architecture: x86_64
max_instances_per_host: 200
glance:
enable_rbd_download: true
libvirt:
live_migration_scheme: tls
# TODO(mnaser): We should enable this once we figure out how to "inject"
# the certificates into the existing "qemu-kvm" processes.
# live_migration_with_native_tls: true
swtpm_enabled: true
swtpm_user: swtpm
swtpm_group: swtpm
neutron:
metadata_proxy_shared_secret: "{{ openstack_helm_endpoints['compute_metadata']['secret'] }}"
oslo_messaging_notifications:
driver: noop
os_vif_ovs:
ovsdb_connection: unix:/run/openvswitch/db.sock
scheduler:
max_attempts: 3
workers: 8
discover_hosts_in_cells_interval: 30
vnc:
auth_schemes: vencrypt,none
nova_ironic:
DEFAULT:
force_config_drive: true
nova_api_uwsgi:
uwsgi:
chunked-input-limit: "4096000"
http-auto-chunked: true
http-raw-body: true
need-app: true
socket-timeout: 10
nova_metadata_uwsgi:
uwsgi:
chunked-input-limit: "4096000"
http-auto-chunked: true
http-raw-body: true
need-app: true
socket-timeout: 10
manifests:
deployment_consoleauth: false
deployment_placement: false
ingress_metadata: false
ingress_novncproxy: false
ingress_osapi: false
ingress_placement: false
ingress_spiceproxy: false
job_db_init_placement: false
job_ks_placement_endpoints: false
job_ks_placement_service: false
job_ks_placement_user: false
job_storage_init: false
secret_keystone_placement: false
service_ingress_metadata: false
service_ingress_novncproxy: false
service_ingress_osapi: false
service_ingress_placement: false
service_placement: false
service_ingress_spiceproxy: false
# NOTE(mnaser): Enable this once we've got Ironic deployed.
statefulset_compute_ironic: false
_nova_novnc_ingress_annotations:
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"