Mohammed Naser | f3f59a7 | 2023-01-15 21:02:04 -0500 | [diff] [blame] | 1 | # Copyright 2019 Intel Corporation. |
| 2 | # |
| 3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | # you may not use this file except in compliance with the License. |
| 5 | # You may obtain a copy of the License at |
| 6 | # |
| 7 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | # |
| 9 | # Unless required by applicable law or agreed to in writing, software |
| 10 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | # See the License for the specific language governing permissions and |
| 13 | # limitations under the License. |
| 14 | |
| 15 | # Default values for openstack-placement. |
| 16 | # This is a YAML-formatted file. |
| 17 | # Declare variables to be passed into your templates. |
| 18 | |
| 19 | --- |
| 20 | release_group: null |
| 21 | |
| 22 | labels: |
| 23 | api: |
| 24 | node_selector_key: openstack-control-plane |
| 25 | node_selector_value: enabled |
| 26 | job: |
| 27 | node_selector_key: openstack-control-plane |
| 28 | node_selector_value: enabled |
| 29 | |
| 30 | images: |
| 31 | pull_policy: IfNotPresent |
| 32 | tags: |
| 33 | placement: docker.io/openstackhelm/placement:stein-ubuntu_bionic |
| 34 | ks_user: docker.io/openstackhelm/heat:stein-ubuntu_bionic |
| 35 | ks_service: docker.io/openstackhelm/heat:stein-ubuntu_bionic |
| 36 | ks_endpoints: docker.io/openstackhelm/heat:stein-ubuntu_bionic |
| 37 | db_init: docker.io/openstackhelm/heat:stein-ubuntu_bionic |
| 38 | db_drop: docker.io/openstackhelm/heat:stein-ubuntu_bionic |
| 39 | db_migrate: quay.io/airshipit/porthole-mysqlclient-utility:latest-ubuntu_bionic |
| 40 | placement_db_sync: docker.io/openstackhelm/placement:stein-ubuntu_bionic |
| 41 | dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0 |
| 42 | image_repo_sync: docker.io/docker:17.07.0 |
| 43 | local_registry: |
| 44 | active: false |
| 45 | exclude: |
| 46 | - dep_check |
| 47 | - image_repo_sync |
| 48 | |
| 49 | network: |
| 50 | api: |
| 51 | port: 8778 |
| 52 | ingress: |
| 53 | public: true |
| 54 | classes: |
| 55 | namespace: "nginx" |
| 56 | cluster: "nginx-cluster" |
| 57 | annotations: |
| 58 | nginx.ingress.kubernetes.io/rewrite-target: / |
| 59 | external_policy_local: false |
| 60 | node_port: |
| 61 | enabled: false |
| 62 | port: 30778 |
| 63 | |
| 64 | conf: |
| 65 | software: |
| 66 | apache2: |
| 67 | binary: apache2 |
| 68 | start_parameters: -DFOREGROUND |
| 69 | # Enable/Disable modules |
| 70 | # a2enmod: |
| 71 | # - headers |
| 72 | # - rewrite |
| 73 | # a2dismod: |
| 74 | # - status |
| 75 | a2enmod: null |
| 76 | a2dismod: null |
| 77 | policy: |
| 78 | "context_is_admin": "role:admin" |
| 79 | "admin_or_owner": "rule:context_is_admin or project_id:%(project_id)s" |
| 80 | "default": "rule:admin_or_owner" |
| 81 | "admin_api": "role:admin" |
| 82 | "placement:resource_providers:list": "rule:admin_api" |
| 83 | "placement:resource_providers:create": "rule:admin_api" |
| 84 | "placement:resource_providers:show": "rule:admin_api" |
| 85 | "placement:resource_providers:update": "rule:admin_api" |
| 86 | "placement:resource_providers:delete": "rule:admin_api" |
| 87 | "placement:resource_classes:list": "rule:admin_api" |
| 88 | "placement:resource_classes:create": "rule:admin_api" |
| 89 | "placement:resource_classes:show": "rule:admin_api" |
| 90 | "placement:resource_classes:update": "rule:admin_api" |
| 91 | "placement:resource_classes:delete": "rule:admin_api" |
| 92 | "placement:resource_providers:inventories:list": "rule:admin_api" |
| 93 | "placement:resource_providers:inventories:create": "rule:admin_api" |
| 94 | "placement:resource_providers:inventories:show": "rule:admin_api" |
| 95 | "placement:resource_providers:inventories:update": "rule:admin_api" |
| 96 | "placement:resource_providers:inventories:delete": "rule:admin_api" |
| 97 | "placement:resource_providers:aggregates:list": "rule:admin_api" |
| 98 | "placement:resource_providers:aggregates:update": "rule:admin_api" |
| 99 | "placement:resource_providers:usages": "rule:admin_api" |
| 100 | "placement:usages": "rule:admin_api" |
| 101 | "placement:traits:list": "rule:admin_api" |
| 102 | "placement:traits:show": "rule:admin_api" |
| 103 | "placement:traits:update": "rule:admin_api" |
| 104 | "placement:traits:delete": "rule:admin_api" |
| 105 | "placement:resource_providers:traits:list": "rule:admin_api" |
| 106 | "placement:resource_providers:traits:update": "rule:admin_api" |
| 107 | "placement:resource_providers:traits:delete": "rule:admin_api" |
| 108 | "placement:allocations:manage": "rule:admin_api" |
| 109 | "placement:allocations:list": "rule:admin_api" |
| 110 | "placement:allocations:update": "rule:admin_api" |
| 111 | "placement:allocations:delete": "rule:admin_api" |
| 112 | "placement:resource_providers:allocations:list": "rule:admin_api" |
| 113 | "placement:allocation_candidates:list": "rule:admin_api" |
| 114 | "placement:reshaper:reshape": "rule:admin_api" |
| 115 | placement: |
| 116 | DEFAULT: |
| 117 | debug: false |
| 118 | use_syslog: false |
| 119 | log_config_append: /etc/placement/logging.conf |
| 120 | placement_database: |
| 121 | connection: null |
| 122 | keystone_authtoken: |
| 123 | auth_version: v3 |
| 124 | auth_type: password |
| 125 | memcache_security_strategy: ENCRYPT |
| 126 | logging: |
| 127 | loggers: |
| 128 | keys: |
| 129 | - root |
| 130 | - placement |
| 131 | handlers: |
| 132 | keys: |
| 133 | - stdout |
| 134 | - stderr |
| 135 | - "null" |
| 136 | formatters: |
| 137 | keys: |
| 138 | - context |
| 139 | - default |
| 140 | logger_root: |
| 141 | level: WARNING |
| 142 | handlers: 'null' |
| 143 | logger_placement: |
| 144 | level: INFO |
| 145 | handlers: |
| 146 | - stdout |
| 147 | qualname: placement |
| 148 | logger_amqp: |
| 149 | level: WARNING |
| 150 | handlers: stderr |
| 151 | qualname: amqp |
| 152 | logger_amqplib: |
| 153 | level: WARNING |
| 154 | handlers: stderr |
| 155 | qualname: amqplib |
| 156 | logger_eventletwsgi: |
| 157 | level: WARNING |
| 158 | handlers: stderr |
| 159 | qualname: eventlet.wsgi.server |
| 160 | logger_sqlalchemy: |
| 161 | level: WARNING |
| 162 | handlers: stderr |
| 163 | qualname: sqlalchemy |
| 164 | logger_boto: |
| 165 | level: WARNING |
| 166 | handlers: stderr |
| 167 | qualname: boto |
| 168 | handler_null: |
| 169 | class: logging.NullHandler |
| 170 | formatter: default |
| 171 | args: () |
| 172 | handler_stdout: |
| 173 | class: StreamHandler |
| 174 | args: (sys.stdout,) |
| 175 | formatter: context |
| 176 | handler_stderr: |
| 177 | class: StreamHandler |
| 178 | args: (sys.stderr,) |
| 179 | formatter: context |
| 180 | formatter_context: |
| 181 | class: oslo_log.formatters.ContextFormatter |
| 182 | datefmt: "%Y-%m-%d %H:%M:%S" |
| 183 | formatter_default: |
| 184 | format: "%(message)s" |
| 185 | datefmt: "%Y-%m-%d %H:%M:%S" |
| 186 | wsgi_placement: | |
| 187 | Listen 0.0.0.0:{{ tuple "placement" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }} |
| 188 | LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined |
| 189 | LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" proxy |
| 190 | SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded |
| 191 | CustomLog /dev/stdout combined env=!forwarded |
| 192 | CustomLog /dev/stdout proxy env=forwarded |
| 193 | <VirtualHost *:{{ tuple "placement" "internal" "api" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }}> |
| 194 | WSGIDaemonProcess placement-api processes=4 threads=1 user=placement group=placement display-name=%{GROUP} |
| 195 | WSGIProcessGroup placement-api |
| 196 | WSGIScriptAlias / /var/www/cgi-bin/placement/placement-api |
| 197 | WSGIApplicationGroup %{GLOBAL} |
| 198 | WSGIPassAuthorization On |
| 199 | <IfVersion >= 2.4> |
| 200 | ErrorLogFormat "%{cu}t %M" |
| 201 | </IfVersion> |
| 202 | ErrorLog /dev/stdout |
| 203 | SetEnvIf X-Forwarded-For "^.*\..*\..*\..*" forwarded |
| 204 | CustomLog /dev/stdout combined env=!forwarded |
| 205 | CustomLog /dev/stdout proxy env=forwarded |
| 206 | </VirtualHost> |
| 207 | Alias /placement /var/www/cgi-bin/placement/placement-api |
| 208 | <Location /placement> |
| 209 | SetHandler wsgi-script |
| 210 | Options +ExecCGI |
| 211 | WSGIProcessGroup placement-api |
| 212 | WSGIApplicationGroup %{GLOBAL} |
| 213 | WSGIPassAuthorization On |
| 214 | </Location> |
| 215 | |
| 216 | endpoints: |
| 217 | cluster_domain_suffix: cluster.local |
| 218 | local_image_registry: |
| 219 | name: docker-registry |
| 220 | namespace: docker-registry |
| 221 | hosts: |
| 222 | default: localhost |
| 223 | internal: docker-registry |
| 224 | node: localhost |
| 225 | host_fqdn_override: |
| 226 | default: null |
| 227 | port: |
| 228 | registry: |
| 229 | node: 5000 |
| 230 | oci_image_registry: |
| 231 | name: oci-image-registry |
| 232 | namespace: oci-image-registry |
| 233 | auth: |
| 234 | enabled: false |
| 235 | placement: |
| 236 | username: placement |
| 237 | password: password |
| 238 | hosts: |
| 239 | default: localhost |
| 240 | host_fqdn_override: |
| 241 | default: null |
| 242 | port: |
| 243 | registry: |
| 244 | default: null |
| 245 | oslo_db: |
| 246 | auth: |
| 247 | admin: |
| 248 | username: root |
| 249 | password: password |
| 250 | secret: |
| 251 | tls: |
| 252 | internal: mariadb-tls-direct |
| 253 | placement: |
| 254 | username: placement |
| 255 | password: password |
| 256 | # NOTE: This should be the username/password used to access the nova_api |
| 257 | # database. This is required only if database migration from nova to |
| 258 | # placement is desired. |
| 259 | nova_api: |
| 260 | username: nova |
| 261 | password: password |
| 262 | hosts: |
| 263 | default: mariadb |
| 264 | host_fqdn_override: |
| 265 | default: null |
| 266 | path: /placement |
| 267 | scheme: mysql+pymysql |
| 268 | port: |
| 269 | mysql: |
| 270 | default: 3306 |
| 271 | oslo_cache: |
| 272 | auth: |
| 273 | # NOTE(portdirect): this is used to define the value for keystone |
| 274 | # authtoken cache encryption key, if not set it will be populated |
| 275 | # automatically with a random value, but to take advantage of |
| 276 | # this feature all services should be set to use the same key, |
| 277 | # and memcache service. |
| 278 | memcache_secret_key: null |
| 279 | hosts: |
| 280 | default: memcached |
| 281 | host_fqdn_override: |
| 282 | default: null |
| 283 | port: |
| 284 | memcache: |
| 285 | default: 11211 |
| 286 | identity: |
| 287 | name: keystone |
| 288 | auth: |
| 289 | admin: |
| 290 | region_name: RegionOne |
| 291 | username: admin |
| 292 | password: password |
| 293 | project_name: admin |
| 294 | user_domain_name: default |
| 295 | project_domain_name: default |
| 296 | placement: |
| 297 | role: admin |
| 298 | region_name: RegionOne |
| 299 | username: placement |
| 300 | password: password |
| 301 | project_name: service |
| 302 | user_domain_name: service |
| 303 | project_domain_name: service |
| 304 | hosts: |
| 305 | default: keystone |
| 306 | internal: keystone-api |
| 307 | host_fqdn_override: |
| 308 | default: null |
| 309 | path: |
| 310 | default: /v3 |
| 311 | scheme: |
| 312 | default: http |
| 313 | port: |
| 314 | api: |
| 315 | default: 80 |
| 316 | internal: 5000 |
| 317 | placement: |
| 318 | name: placement |
| 319 | hosts: |
| 320 | default: placement-api |
| 321 | public: placement |
| 322 | host_fqdn_override: |
| 323 | default: null |
| 324 | path: |
| 325 | default: / |
| 326 | scheme: |
| 327 | default: 'http' |
| 328 | port: |
| 329 | api: |
| 330 | default: 8778 |
| 331 | public: 80 |
| 332 | |
| 333 | pod: |
| 334 | security_context: |
| 335 | placement: |
| 336 | pod: |
| 337 | runAsUser: 42424 |
| 338 | container: |
| 339 | placement_api: |
| 340 | readOnlyRootFilesystem: false |
| 341 | runAsUser: 0 |
| 342 | placement_mysql_migration: |
| 343 | readOnlyRootFilesystem: false |
| 344 | runAsUser: 0 |
| 345 | affinity: |
| 346 | anti: |
| 347 | type: |
| 348 | default: preferredDuringSchedulingIgnoredDuringExecution |
| 349 | topologyKey: |
| 350 | default: kubernetes.io/hostname |
| 351 | tolerations: |
| 352 | placement: |
| 353 | enabled: false |
| 354 | tolerations: |
| 355 | - key: node-role.kubernetes.io/master |
| 356 | operator: Exists |
| 357 | effect: NoSchedule |
| 358 | mounts: |
| 359 | placement: |
| 360 | init_container: null |
| 361 | placement: |
| 362 | volumeMounts: |
| 363 | volumes: |
| 364 | replicas: |
| 365 | api: 1 |
| 366 | lifecycle: |
| 367 | upgrades: |
| 368 | deployments: |
| 369 | revision_history: 3 |
| 370 | pod_replacement_strategy: RollingUpdate |
| 371 | rolling_update: |
| 372 | max_unavailable: 1 |
| 373 | max_surge: 3 |
| 374 | disruption_budget: |
| 375 | api: |
| 376 | min_available: 0 |
| 377 | termination_grace_period: |
| 378 | api: |
| 379 | timeout: 30 |
| 380 | resources: |
| 381 | enabled: false |
| 382 | api: |
| 383 | requests: |
| 384 | memory: "128Mi" |
| 385 | cpu: "100m" |
| 386 | limits: |
| 387 | memory: "1024Mi" |
| 388 | cpu: "2000m" |
| 389 | jobs: |
| 390 | db_init: |
| 391 | requests: |
| 392 | memory: "128Mi" |
| 393 | cpu: "100m" |
| 394 | limits: |
| 395 | memory: "1024Mi" |
| 396 | cpu: "2000m" |
| 397 | db_sync: |
| 398 | requests: |
| 399 | memory: "128Mi" |
| 400 | cpu: "100m" |
| 401 | limits: |
| 402 | memory: "1024Mi" |
| 403 | cpu: "2000m" |
| 404 | db_drop: |
| 405 | requests: |
| 406 | memory: "128Mi" |
| 407 | cpu: "100m" |
| 408 | limits: |
| 409 | memory: "1024Mi" |
| 410 | cpu: "2000m" |
| 411 | db_migrate: |
| 412 | requests: |
| 413 | memory: "128Mi" |
| 414 | cpu: "100m" |
| 415 | limits: |
| 416 | memory: "1024Mi" |
| 417 | cpu: "2000m" |
| 418 | ks_endpoints: |
| 419 | requests: |
| 420 | memory: "128Mi" |
| 421 | cpu: "100m" |
| 422 | limits: |
| 423 | memory: "1024Mi" |
| 424 | cpu: "2000m" |
| 425 | ks_service: |
| 426 | requests: |
| 427 | memory: "128Mi" |
| 428 | cpu: "100m" |
| 429 | limits: |
| 430 | memory: "1024Mi" |
| 431 | cpu: "2000m" |
| 432 | ks_user: |
| 433 | requests: |
| 434 | memory: "128Mi" |
| 435 | cpu: "100m" |
| 436 | limits: |
| 437 | memory: "1024Mi" |
| 438 | cpu: "2000m" |
| 439 | |
| 440 | secrets: |
| 441 | identity: |
| 442 | admin: placement-keystone-admin |
| 443 | placement: placement-keystone-user |
| 444 | oslo_db: |
| 445 | admin: placement-db-admin |
| 446 | placement: placement-db-user |
| 447 | tls: |
| 448 | placement: |
| 449 | api: |
| 450 | public: placement-tls-public |
| 451 | internal: placement-tls-api |
| 452 | oci_image_registry: |
| 453 | placement: placement-oci-image-registry |
| 454 | |
| 455 | dependencies: |
| 456 | dynamic: |
| 457 | common: |
| 458 | local_image_registry: |
| 459 | jobs: |
| 460 | - image-repo-sync |
| 461 | services: |
| 462 | - endpoint: node |
| 463 | service: local_image_registry |
| 464 | static: |
| 465 | api: |
| 466 | jobs: |
| 467 | - placement-db-sync |
| 468 | - placement-ks-service |
| 469 | - placement-ks-user |
| 470 | - placement-ks-endpoints |
| 471 | ks_endpoints: |
| 472 | jobs: |
| 473 | - placement-ks-user |
| 474 | - placement-ks-service |
| 475 | services: |
| 476 | - endpoint: internal |
| 477 | service: identity |
| 478 | ks_service: |
| 479 | services: |
| 480 | - endpoint: internal |
| 481 | service: identity |
| 482 | ks_user: |
| 483 | services: |
| 484 | - endpoint: internal |
| 485 | service: identity |
| 486 | db_drop: |
| 487 | services: |
| 488 | - endpoint: internal |
| 489 | service: oslo_db |
| 490 | db_init: |
| 491 | services: |
| 492 | - endpoint: internal |
| 493 | service: oslo_db |
| 494 | db_migrate: |
| 495 | jobs: |
| 496 | - placement-db-init |
| 497 | - nova-db-sync |
| 498 | services: |
| 499 | - endpoint: internal |
| 500 | service: oslo_db |
| 501 | db_sync: |
| 502 | jobs: |
| 503 | - placement-db-init |
| 504 | # NOTE: This needs to be enabled if placement migration is required. |
| 505 | # - placement-db-migrate |
| 506 | services: |
| 507 | - endpoint: internal |
| 508 | service: oslo_db |
| 509 | |
| 510 | # NOTE(helm_hook): helm_hook might break for helm2 binary. |
| 511 | # set helm3_hook: false when using the helm2 binary. |
| 512 | helm3_hook: true |
| 513 | |
| 514 | manifests: |
| 515 | certificates: false |
| 516 | configmap_bin: true |
| 517 | configmap_etc: true |
| 518 | deployment: true |
| 519 | job_image_repo_sync: true |
| 520 | job_db_init: true |
| 521 | job_db_sync: true |
| 522 | job_db_drop: false |
| 523 | job_db_migrate: false |
| 524 | job_ks_endpoints: true |
| 525 | job_ks_service: true |
| 526 | job_ks_user: true |
| 527 | network_policy: false |
| 528 | secret_db: true |
| 529 | secret_ingress_tls: true |
| 530 | secret_registry: true |
| 531 | pdb: true |
| 532 | ingress: true |
| 533 | secret_keystone: true |
| 534 | service_ingress: true |
| 535 | service: true |
| 536 | ... |