openstack-helm/masakari/values.yaml
okozachenko 423d91d6c3 Define service_type in keystone_authtoken
If application credentials with access rules are required,
an OpenStack service using keystonemiddleware to authenticate
with keystone, needs to define service_type in its configuration
file.

Change-Id: I7034e82837d724f12d57969857f79d67c962cebe
2023-05-12 23:09:58 +10:00

629 lines
16 KiB
YAML

# 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.
---
images:
tags:
db_init: docker.io/openstackhelm/heat:stein-ubuntu_bionic
db_sync: docker.io/xuxant/masakari:wallaby
db_drop: quay.io/vexxhost/heat:ussuri
ks_endpoints: quay.io/vexxhost/heat:wallaby
ks_service: quay.io/vexxhost/heat:wallaby
ks_user: quay.io/vexxhost/heat:wallaby
masakari_api: docker.io/openstackhelm/masakari:master-ubuntu_focal
masakari_engine: docker.io/openstackhelm/masakari:master-ubuntu_focal
masakari_host_monitor: docker.io/xuxant/masakari-monitors:focal
masakari_process_monitor: docker.io/xuxant/masakari-monitors:focal
masakari_instance_monitor: docker.io/xuxant/masakari-monitors:focal
rabbit_init: docker.io/rabbitmq:3.7-management
dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
pull_policy: "IfNotPresent"
local_registry:
active: false
exclude:
- dep_check
- image_repo_sync
labels:
masakari:
node_selector_key: openstack-control-plane
node_selector_value: enabled
job:
node_selector_key: openstack-control-plane
node_selector_value: enabled
monitors:
node_selector_key: openstack-compute-node
node_selector_value: enabled
test:
node_selector_key: openstack-control-plane
node_selector_value: enabled
endpoints:
cluster_domain_suffix: cluster.local
local_image_registry:
name: docker-registry
namespace: docker-registry
hosts:
default: localhost
internal: docker-registry
node: localhost
host_fqdn_override:
default: null
port:
registry:
node: 5000
oci_image_registry:
name: oci-image-registry
namespace: oci-image-registry
auth:
enabled: false
masakari:
username: masakari
password: password
hosts:
default: localhost
host_fqdn_override:
default: null
port:
registry:
default: null
instance_ha:
name: masakari
hosts:
default: masakari-api
public: masakari-api
host_fqdn_override:
default: null
path:
default: "/v1/%(tenant_id)s"
scheme:
default: "http"
port:
api:
default: 15868
public: 80
oslo_db:
auth:
admin:
username: root
password: password
secret:
tls:
internal: mariadb-tls-direct
masakari:
username: masakari
password: password
hosts:
default: mariadb
host_fqdn_override:
default: null
path: /masakari
scheme: mysql+pymysql
port:
mysql:
default: 3306
identity:
name: keystone
auth:
admin:
region_name: RegionOne
username: admin
password: password
project_name: admin
user_domain_name: default
project_domain_name: default
masakari:
role: admin
region_name: RegionOne
username: masakari
password: password
project_name: service
user_domain_name: service
project_domain_name: service
test:
role: admin
region_name: RegionOne
username: neutron-test
password: password
project_name: test
user_domain_name: service
project_domain_name: service
hosts:
default: keystone
internal: keystone-api
host_fqdn_override:
default: null
path:
default: /v3
scheme:
default: http
port:
api:
default: 80
internal: 5000
oslo_messaging:
auth:
admin:
username: rabbitmq
password: password
secret:
tls:
internal: rabbitmq-tls-direct
masakari:
username: masakari
password: password
statefulset:
replicas: 2
name: rabbitmq-rabbitmq
hosts:
default: rabbitmq
host_fqdn_override:
default: null
path: /masakari
scheme: rabbit
port:
amqp:
default: 5672
http:
default: 15672
oslo_cache:
auth:
# NOTE(portdirect): this is used to define the value for keystone
# authtoken cache encryption key, if not set it will be populated
# automatically with a random value, but to take advantage of
# this feature all services should be set to use the same key,
# and memcache service.
memcache_secret_key: null
hosts:
default: memcached
host_fqdn_override:
default: null
port:
memcache:
default: 11211
fluentd:
namespace: null
name: fluentd
hosts:
default: fluentd-logging
host_fqdn_override:
default: null
path:
default: null
scheme: "http"
port:
service:
default: 24224
metrics:
default: 24220
# NOTE(tp6510): these endpoints allow for things like DNS lookups and ingress
# They are using to enable the Egress K8s network policy.
kube_dns:
namespace: kube-system
name: kubernetes-dns
hosts:
default: kube-dns
host_fqdn_override:
default: null
path:
default: null
scheme: http
port:
dns:
default: 53
protocol: UDP
ingress:
namespace: null
name: ingress
hosts:
default: ingress
port:
ingress:
default: 80
secrets:
identity:
admin: masakari-keystone-admin
masakari: masakari-keystone-user
test: masakari-keystone-test
oslo_db:
admin: masakari-db-admin
masakari: masakari-db-user
oslo_messaging:
admin: masakari-rabbitmq-admin
masakari: masakari-rabbitmq-user
oci_image_registry:
masakari: masakari-oci-image-registry
dependencies:
static:
masakari_api:
jobs:
- masakari-db-sync
- masakari-ks-user
- masakari-ks-endpoints
- masakari-ks-service
services:
- endpoint: internal
service: identity
masakari_engine:
jobs:
- masakari-db-sync
- masakari-ks-user
- masakari-ks-endpoints
- masakari-ks-service
services:
- endpoint: internal
service: identity
db_init:
services:
- endpoint: internal
service: oslo_db
db_sync:
jobs:
- masakari-db-init
services:
- endpoint: internal
service: oslo_db
ks_endpoints:
jobs:
- masakari-ks-service
services:
- endpoint: internal
service: identity
ks_service:
services:
- endpoint: internal
service: identity
ks_user:
services:
- endpoint: internal
service: identity
pod:
security_context:
masakari:
pod:
runAsUser: 42424
container:
masakari_api:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: false
runAsUser: 42424
masakari_engine:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: false
runAsUser: 42424
masakari_db_sync:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: false
runAsUser: 42424
masakari_host_monitor:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: true
runAsUser: 42424
masakari_process_monitir:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: false
runAsUser: 42424
masakari_instance_monitor:
readOnlyRootFilesystem: false
allowPrivilegeEscalation: false
runAsUser: 0
test:
pod:
runAsUser: 42424
container:
horizon_test:
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
probes:
rpc_timeout: 60
rpc_retries: 2
masakari:
default:
liveness:
enabled: true
params:
initialDelaySeconds: 120
periodSeconds: 90
timeoutSeconds: 70
readiness:
enabled: true
params:
initialDelaySeconds: 80
periodSeconds: 90
timeoutSeconds: 70
masakari-engine:
default:
liveness:
enabled: true
params:
initialDelaySeconds: 30
periodSeconds: 60
timeoutSeconds: 15
readiness:
enabled: true
params:
initialDelaySeconds: 30
periodSeconds: 60
timeoutSeconds: 15
affinity:
anti:
type:
default: preferredDuringSchedulingIgnoredDuringExecution
topologyKey:
default: kubernetes.io/hostname
weight:
default: 10
replicas:
masakari_api: 1
masakari_engine: 1
lifecycle:
upgrades:
deployments:
revision_history: 3
pod_replacement_strategy: RollingUpdate
rolling_update:
max_unavailable: 1
max_surge: 3
daemonsets:
pod_replacement_strategy: RollingUpdate
compute:
enabled: true
min_ready_seconds: 0
max_unavailable: 1
disruption_budget:
masakari_api:
min_available: 0
masakari_engine:
min_available: 0
termination_grace_period:
masakari_api:
timeout: 30
masakari_engine:
timeout: 30
mounts:
masakari_api:
init_container: null
masakari_api:
volumeMounts:
volumes:
masakari_engine:
init_container: null
masakari_engine:
volumeMounts:
volumes:
masakari_instance_monitor:
init_container: null
masakari_instance_monitor:
volumeMounts:
volumes:
masakari_host_monitor:
init_container: null
masakari_host_monitor:
volumeMounts:
volumes:
masakari_process_monitor:
init_container: null
masakari_process_monitor:
volumeMounts:
volumes:
masakari_db_sync:
masakari_db_sync:
volumeMounts:
volumes:
masakari_db_init:
masakari_db_sync:
volumeMounts:
volumes:
masakari_ks_users:
masakari_db_sync:
volumeMounts:
volumes:
masakari_ks_service:
masakari_db_sync:
volumeMounts:
volumes:
resources:
enabled: false
masakari_api:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
masakari_engine:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
masakari_host_monitor:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
masakari_instance_monitor:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
masakari_process_monitor:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
jobs:
rabbit_init:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
db_init:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
db_sync:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
db_drop:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ks_endpoints:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ks_service:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
ks_user:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "1024Mi"
cpu: "2000m"
conf:
paste:
composite:masakari_api:
use: call:masakari.api.urlmap:urlmap_factory
/: apiversions
/v1: masakari_api_v1
composite:masakari_api_v1:
use: call:masakari.api.auth:pipeline_factory_v1
keystone: cors http_proxy_to_wsgi request_id faultwrap sizelimit authtoken keystonecontext osapi_masakari_app_v1
noauth2: cors http_proxy_to_wsgi request_id faultwrap sizelimit noauth2 osapi_masakari_app_v1
filter:cors:
paste.filter_factory: oslo_middleware.cors:filter_factory
oslo_config_project: masakari
filter:http_proxy_to_wsgi:
paste.filter_factory: oslo_middleware.http_proxy_to_wsgi:HTTPProxyToWSGI.factory
filter:request_id:
paste.filter_factory: oslo_middleware:RequestId.factory
filter:faultwrap:
paste.filter_factory: masakari.api.openstack:FaultWrapper.factory
filter:sizelimit:
paste.filter_factory: oslo_middleware:RequestBodySizeLimiter.factory
filter:authtoken:
paste.filter_factory: keystonemiddleware.auth_token:filter_factory
filter:keystonecontext:
paste.filter_factory: masakari.api.auth:MasakariKeystoneContext.factory
filter:noauth2:
paste.filter_factory: masakari.api.auth:NoAuthMiddleware.factory
app:osapi_masakari_app_v1:
paste.app_factory: masakari.api.openstack.ha:APIRouterV1.factory
pipeline:apiversions:
pipeline: faultwrap http_proxy_to_wsgi apiversionsapp
app:apiversionsapp:
paste.app_factory: masakari.api.openstack.ha.versions:Versions.factory
masakari:
DEFAULT:
auth_strategy: keystone
duplicate_notification_detection_interval: 180
host_failure_recovery_threads: 1
masakari_api_workers: 1
graceful_shutdown_timeout: 5
api_paste_config: /etc/masakari/api-paste.ini
keystone_authtoken:
auth_type: password
service_type: instance-ha
database:
max_retries: -1
# Connection string is evaluated though the endpoints for taskflow.
taskflow:
connection: null
masakarimonitors:
DEFAULT:
debug: False
api:
api_version: v1
api_interface: internal
callback:
retry_max: 10
retry_interval: 10
introspectiveinstancemonitor:
guest_monitor_interval: 10
guest_monitor_timeout: 5
host:
monitoring_driver: default
monitoring_interval: 120
monitoring_samples: 1
disable_ipmi_checks: true
corosync_multicast_ports: 5405
pacemaker_node_type: remote
masakari_sudoers: |
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/var/lib/openstack/bin"
masakari-monitors ALL=(ALL:ALL) NOPASSWD: /var/lib/openstack/bin/privsep-helper
# Note(xuxant): Hooks will break the upgrade for helm2
# Set to false if using helm2.
helm3_hook: true
network:
masakari_api:
node_port:
enabled: false
port: 33033
external_policy_local: false
manifests:
job_ks_user: true
job_db_sync: true
job_db_init: true
job_db_drop: false
job_ks_endpoints: true
job_ks_service: true
deployment_api: true
deployment_engine: true
configmap_bin: true
configmap_etc: true
secret_db: true
secret_rabbitmq: true
secret_keystone: true
secret_registry: true
job_rabbit_init: true
service_api: true
pdb_api: true
# Host Monitors in containers needs pacemaker remote.
host_monitor: false
instance_monitor: false
process_monitor: false