blob: 07f5c0a59459e2e70bb70e1ec8c35988849bebd7 [file] [log] [blame]
Yaguang Tang9c139d72024-07-31 21:52:52 +08001# Licensed under the Apache License, Version 2.0 (the "License");
2# you may not use this file except in compliance with the License.
3# You may obtain a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS,
9# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10# See the License for the specific language governing permissions and
11# limitations under the License.
12
13# Default values for ironic.
14# This is a YAML-formatted file.
15# Declare name/value pairs to be passed into your templates.
16# name: value
17
18---
19release_group: null
20
21helm3_hook: true
22
23labels:
24 api:
25 node_selector_key: openstack-control-plane
26 node_selector_value: enabled
27 conductor:
28 node_selector_key: openstack-control-plane
29 node_selector_value: enabled
30 job:
31 node_selector_key: openstack-control-plane
32 node_selector_value: enabled
33
34images:
35 tags:
36 ironic_manage_cleaning_network: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
37 ironic_retrive_cleaning_network: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
38 ironic_retrive_swift_config: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
39 # Bootstrap image requires curl
40 bootstrap: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
41 db_drop: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
42 db_init: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
43 ironic_db_sync: docker.io/openstackhelm/ironic:2024.1-ubuntu_jammy
44 ks_user: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
45 ks_service: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
46 ks_endpoints: docker.io/openstackhelm/heat:2024.1-ubuntu_jammy
47 rabbit_init: docker.io/rabbitmq:3.13-management
48 ironic_api: docker.io/openstackhelm/ironic:2024.1-ubuntu_jammy
49 ironic_conductor: docker.io/openstackhelm/ironic:2024.1-ubuntu_jammy
50 ironic_pxe: docker.io/openstackhelm/ironic:2024.1-ubuntu_jammy
51 ironic_pxe_init: docker.io/openstackhelm/ironic:2024.1-ubuntu_jammy
52 ironic_pxe_http: docker.io/nginx:1.13.3
53 dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
54 image_repo_sync: docker.io/docker:17.07.0
55 pull_policy: "IfNotPresent"
56 local_registry:
57 active: false
58 exclude:
59 - dep_check
60 - image_repo_sync
61
62conf:
63 paste:
64 override:
65 append:
66 policy: {}
67 tftp_map_file: |
68 re ^(/tftpboot/) /tftpboot/\2
69 re ^/tftpboot/ /tftpboot/
70 re ^(^/) /tftpboot/\1
71 re ^([^/]) /tftpboot/\1
72 nginx: |
73 user nginx;
74 worker_processes 1;
75 error_log /var/log/nginx/error.log warn;
76 pid /var/run/nginx.pid;
77 events {
78 worker_connections 1024;
79 }
80 http {
81 include /etc/nginx/mime.types;
82 default_type application/octet-stream;
83 log_format main '$remote_addr - $remote_user [$time_local] "$request" '
84 '$status $body_bytes_sent "$http_referer" '
85 '"$http_user_agent" "$http_x_forwarded_for"';
86 access_log /var/log/nginx/access.log main;
87 sendfile on;
88 #tcp_nopush on;
89 keepalive_timeout 65;
90 #gzip on;
91 server {
92 listen OSH_PXE_IP:{{ tuple "baremetal" "internal" "pxe_http" . | include "helm-toolkit.endpoints.endpoint_port_lookup" }};
93 server_name localhost;
94 #charset koi8-r;
95 #access_log /var/log/nginx/host.access.log main;
96 location / {
97 root /var/lib/openstack-helm/httpboot;
98 }
99 }
100 }
101 ironic:
102 DEFAULT:
103 log_config_append: /etc/ironic/logging.conf
104 api:
105 port: null
106 conductor:
107 api_url: null
108 database:
109 connection: null
110 deploy:
111 http_root: /var/lib/openstack-helm/httpboot
112 glance:
113 auth_type: password
114 swift_temp_url_duration: 86400
115 temp_url_endpoint_type: swift
116 swift_container: glance
117 swift_api_version: v1
118 auth_section: glance
119 inspector:
120 auth_type: password
121 keystone_authtoken:
122 auth_type: password
123 auth_version: v3
124 neutron:
125 auth_type: password
126 pxe:
127 pxe_append_params: "nofb nomodeset vga=normal ipa-debug=1"
128 images_path: /var/lib/openstack-helm/ironic/images
129 instance_master_path: /var/lib/openstack-helm/ironic/master_images
130 pxe_config_template: $pybasedir/drivers/modules/ipxe_config.template
131 uefi_pxe_config_template: $pybasedir/drivers/modules/ipxe_config.template
132 tftp_root: /var/lib/openstack-helm/tftpboot
133 tftp_master_path: /var/lib/openstack-helm/tftpboot/master_images
134 pxe_bootfile_name: undionly.kpxe
135 uefi_pxe_bootfile_name: ipxe.efi
136 ipxe_enabled: true
137 service_catalog:
138 auth_type: password
139 swift:
140 auth_url: null
141 oslo_policy:
142 policy_file: /etc/ironic/policy.yaml
143 logging:
144 loggers:
145 keys:
146 - root
147 - ironic
148 handlers:
149 keys:
150 - stdout
151 - stderr
152 - "null"
153 formatters:
154 keys:
155 - context
156 - default
157 logger_root:
158 level: WARNING
159 handlers: 'null'
160 logger_ironic:
161 level: INFO
162 handlers:
163 - stdout
164 qualname: ironic
165 logger_amqp:
166 level: WARNING
167 handlers: stderr
168 qualname: amqp
169 logger_amqplib:
170 level: WARNING
171 handlers: stderr
172 qualname: amqplib
173 logger_eventletwsgi:
174 level: WARNING
175 handlers: stderr
176 qualname: eventlet.wsgi.server
177 logger_sqlalchemy:
178 level: WARNING
179 handlers: stderr
180 qualname: sqlalchemy
181 logger_boto:
182 level: WARNING
183 handlers: stderr
184 qualname: boto
185 handler_null:
186 class: logging.NullHandler
187 formatter: default
188 args: ()
189 handler_stdout:
190 class: StreamHandler
191 args: (sys.stdout,)
192 formatter: context
193 handler_stderr:
194 class: StreamHandler
195 args: (sys.stderr,)
196 formatter: context
197 formatter_context:
198 class: oslo_log.formatters.ContextFormatter
199 datefmt: "%Y-%m-%d %H:%M:%S"
200 formatter_default:
201 format: "%(message)s"
202 datefmt: "%Y-%m-%d %H:%M:%S"
203
204network:
205 pxe:
206 device: ironic-pxe
207 neutron_network_name: baremetal
208 neutron_subnet_name: baremetal
209 neutron_provider_network: ironic
210 neutron_subnet_gateway: 172.24.6.1/24
211 neutron_subnet_cidr: 172.24.6.0/24
212 neutron_subnet_alloc_start: 172.24.6.100
213 neutron_subnet_alloc_end: 172.24.6.200
214 neutron_subnet_dns_nameserver: 10.96.0.10
215 api:
216 ingress:
217 public: true
218 classes:
219 namespace: "nginx"
220 cluster: "nginx-cluster"
221 annotations:
222 nginx.ingress.kubernetes.io/rewrite-target: /
223 node_port:
224 enabled: false
225 port: 30511
226
227bootstrap:
228 image:
229 enabled: true
230 openstack:
231 enabled: true
232 ks_user: ironic
233 # NOTE: if source_base is null the source will be used as is
234 source_base: http://tarballs.openstack.org/ironic-python-agent/tinyipa/files
235 structured:
236 ironic-agent.initramfs:
237 source: tinyipa-stable-wallaby.gz
238 disk_format: ari
239 container_format: ari
240 ironic-agent.kernel:
241 source: tinyipa-stable-wallaby.vmlinuz
242 disk_format: aki
243 container_format: aki
244 network:
245 enabled: true
246 openstack:
247 enabled: true
248 object_store:
249 enabled: true
250 openstack:
251 enabled: true
252
253dependencies:
254 dynamic:
255 common:
256 local_image_registry:
257 jobs:
258 - ironic-image-repo-sync
259 services:
260 - endpoint: node
261 service: local_image_registry
262 static:
263 api:
264 jobs:
265 - ironic-db-sync
266 - ironic-ks-user
267 - ironic-ks-endpoints
268 - ironic-manage-cleaning-network
269 - ironic-rabbit-init
270 services:
271 - endpoint: internal
272 service: oslo_db
273 - endpoint: internal
274 service: identity
275 - endpoint: internal
276 service: oslo_messaging
277 bootstrap:
278 jobs: null
279 services:
280 - endpoint: internal
281 service: identity
282 - endpoint: internal
283 service: image
284 - endpoint: internal
285 service: baremetal
286 conductor:
287 jobs:
288 - ironic-db-sync
289 - ironic-ks-user
290 - ironic-ks-endpoints
291 - ironic-manage-cleaning-network
292 - ironic-rabbit-init
293 services:
294 - endpoint: internal
295 service: oslo_db
296 - endpoint: internal
297 service: identity
298 - endpoint: internal
299 service: baremetal
300 - endpoint: internal
301 service: oslo_messaging
302 db_drop:
303 services:
304 - endpoint: internal
305 service: oslo_db
306 db_init:
307 services:
308 - endpoint: internal
309 service: oslo_db
310 db_sync:
311 jobs:
312 - ironic-db-init
313 services:
314 - endpoint: internal
315 service: oslo_db
316 ks_endpoints:
317 jobs:
318 - ironic-ks-service
319 services:
320 - endpoint: internal
321 service: identity
322 ks_service:
323 services:
324 - endpoint: internal
325 service: identity
326 ks_user:
327 services:
328 - endpoint: internal
329 service: identity
330 rabbit_init:
331 services:
332 - endpoint: internal
333 service: oslo_messaging
334 manage_cleaning_network:
335 services:
336 - endpoint: internal
337 service: network
338 image_repo_sync:
339 services:
340 - endpoint: internal
341 service: local_image_registry
342
343# Names of secrets used by bootstrap and environmental checks
344secrets:
345 identity:
346 admin: ironic-keystone-admin
347 ironic: ironic-keystone-user
348 glance: ironic-glance-keystone-user
349 oslo_db:
350 admin: ironic-db-admin
351 ironic: ironic-db-user
352 oslo_messaging:
353 admin: ironic-rabbitmq-admin
354 ironic: ironic-rabbitmq-user
355 oci_image_registry:
356 ironic: ironic-oci-image-registry
357
358# typically overridden by environmental
359# values, but should include all endpoints
360# required by this chart
361endpoints:
362 cluster_domain_suffix: cluster.local
363 local_image_registry:
364 name: docker-registry
365 namespace: docker-registry
366 hosts:
367 default: localhost
368 internal: docker-registry
369 node: localhost
370 host_fqdn_override:
371 default: null
372 port:
373 registry:
374 node: 5000
375 oci_image_registry:
376 name: oci-image-registry
377 namespace: oci-image-registry
378 auth:
379 enabled: false
380 ironic:
381 username: ironic
382 password: password
383 hosts:
384 default: localhost
385 host_fqdn_override:
386 default: null
387 port:
388 registry:
389 default: null
390 identity:
391 name: keystone
392 auth:
393 admin:
394 region_name: RegionOne
395 username: admin
396 password: password
397 project_name: admin
398 user_domain_name: default
399 project_domain_name: default
400 glance:
401 role: admin
402 region_name: RegionOne
403 username: glance
404 password: password
405 project_name: service
406 user_domain_name: service
407 project_domain_name: service
408 ironic:
409 role: admin,service
410 region_name: RegionOne
411 username: ironic
412 password: password
413 project_name: service
414 user_domain_name: service
415 project_domain_name: service
416 hosts:
417 default: keystone
418 internal: keystone-api
419 host_fqdn_override:
420 default: null
421 path:
422 default: /v3
423 scheme:
424 default: http
425 port:
426 api:
427 default: 80
428 internal: 5000
429 baremetal:
430 name: ironic
431 hosts:
432 default: ironic-api
433 public: ironic
434 host_fqdn_override:
435 default: null
436 path:
437 default: null
438 scheme:
439 default: http
440 port:
441 api:
442 default: 6385
443 public: 80
444 pxe_http:
445 default: 8080
446 image:
447 name: glance
448 hosts:
449 default: glance-api
450 public: glance
451 host_fqdn_override:
452 default: null
453 path:
454 default: null
455 scheme:
456 default: http
457 port:
458 api:
459 default: 9292
460 public: 80
461 oslo_db:
462 auth:
463 admin:
464 username: root
465 password: password
466 ironic:
467 username: ironic
468 password: password
469 hosts:
470 default: mariadb
471 host_fqdn_override:
472 default: null
473 path: /ironic
474 scheme: mysql+pymysql
475 port:
476 mysql:
477 default: 3306
478 oslo_cache:
479 auth:
480 # NOTE(portdirect): this is used to define the value for keystone
481 # authtoken cache encryption key, if not set it will be populated
482 # automatically with a random value, but to take advantage of
483 # this feature all services should be set to use the same key,
484 # and memcache service.
485 memcache_secret_key: null
486 hosts:
487 default: memcached
488 host_fqdn_override:
489 default: null
490 port:
491 memcache:
492 default: 11211
493 oslo_messaging:
494 auth:
495 admin:
496 username: rabbitmq
497 password: password
498 ironic:
499 username: ironic
500 password: password
501 statefulset:
502 replicas: 2
503 name: rabbitmq-rabbitmq
504 hosts:
505 default: rabbitmq
506 host_fqdn_override:
507 default: null
508 path: /ironic
509 scheme: rabbit
510 port:
511 amqp:
512 default: 5672
513 http:
514 default: 15672
515 network:
516 name: neutron
517 hosts:
518 default: neutron-server
519 public: neutron
520 host_fqdn_override:
521 default: null
522 path:
523 default: null
524 scheme:
525 default: 'http'
526 port:
527 api:
528 default: 9696
529 public: 80
530 object_store:
531 name: swift
532 namespace: ceph
533 auth:
534 glance:
535 tmpurlkey: supersecret
536 hosts:
537 default: ceph-rgw
538 host_fqdn_override:
539 default: null
540 path:
541 default: /swift/v1/KEY_$(tenant_id)s
542 scheme:
543 default: http
544 port:
545 api:
546 default: 8088
547 fluentd:
548 namespace: null
549 name: fluentd
550 hosts:
551 default: fluentd-logging
552 host_fqdn_override:
553 default: null
554 path:
555 default: null
556 scheme: 'http'
557 port:
558 service:
559 default: 24224
560 metrics:
561 default: 24220
562
563pod:
564 affinity:
565 anti:
566 type:
567 default: preferredDuringSchedulingIgnoredDuringExecution
568 topologyKey:
569 default: kubernetes.io/hostname
570 weight:
571 default: 10
572 tolerations:
573 ironic:
574 enabled: false
575 tolerations:
576 - key: node-role.kubernetes.io/master
577 operator: Exists
578 effect: NoSchedule
579 - key: node-role.kubernetes.io/control-plane
580 operator: Exists
581 effect: NoSchedule
582 mounts:
583 ironic_api:
584 init_container: null
585 ironic_api:
586 volumeMounts:
587 volumes:
588 ironic_conductor:
589 init_container: null
590 ironic_conductor:
591 volumeMounts:
592 volumes:
593 ironic_bootstrap:
594 init_container: null
595 ironic_bootstrap:
596 volumeMounts:
597 volumes:
598 ironic_db_sync:
599 ironic_db_sync:
600 volumeMounts:
601 volumes:
602 replicas:
603 api: 1
604 conductor: 1
605 lifecycle:
606 upgrades:
607 deployments:
608 revision_history: 3
609 pod_replacement_strategy: RollingUpdate
610 rolling_update:
611 max_unavailable: 1
612 max_surge: 3
613 disruption_budget:
614 api:
615 min_available: 0
616 termination_grace_period:
617 api:
618 timeout: 30
619 resources:
620 enabled: false
621 api:
622 requests:
623 memory: "128Mi"
624 cpu: "100m"
625 limits:
626 memory: "1024Mi"
627 cpu: "2000m"
628 conductor:
629 requests:
630 memory: "128Mi"
631 cpu: "100m"
632 limits:
633 memory: "1024Mi"
634 cpu: "2000m"
635 jobs:
636 bootstrap:
637 requests:
638 memory: "128Mi"
639 cpu: "100m"
640 limits:
641 memory: "1024Mi"
642 cpu: "2000m"
643 db_drop:
644 requests:
645 memory: "128Mi"
646 cpu: "100m"
647 limits:
648 memory: "1024Mi"
649 cpu: "2000m"
650 db_init:
651 requests:
652 memory: "128Mi"
653 cpu: "100m"
654 limits:
655 memory: "1024Mi"
656 cpu: "2000m"
657 db_sync:
658 requests:
659 memory: "128Mi"
660 cpu: "100m"
661 limits:
662 memory: "1024Mi"
663 cpu: "2000m"
664 ks_endpoints:
665 requests:
666 memory: "128Mi"
667 cpu: "100m"
668 limits:
669 memory: "1024Mi"
670 cpu: "2000m"
671 ks_service:
672 requests:
673 memory: "128Mi"
674 cpu: "100m"
675 limits:
676 memory: "1024Mi"
677 cpu: "2000m"
678 ks_user:
679 requests:
680 memory: "128Mi"
681 cpu: "100m"
682 limits:
683 memory: "1024Mi"
684 cpu: "2000m"
685 rabbit_init:
686 requests:
687 memory: "128Mi"
688 cpu: "100m"
689 limits:
690 memory: "1024Mi"
691 cpu: "2000m"
692 tests:
693 requests:
694 memory: "128Mi"
695 cpu: "100m"
696 limits:
697 memory: "1024Mi"
698 cpu: "2000m"
699 image_repo_sync:
700 requests:
701 memory: "128Mi"
702 cpu: "100m"
703 limits:
704 memory: "1024Mi"
705 cpu: "2000m"
706
707network_policy:
708 ironic:
709 ingress:
710 - {}
711 egress:
712 - {}
713
714manifests:
715 configmap_bin: true
716 configmap_etc: true
717 deployment_api: true
718 ingress_api: true
719 job_bootstrap: true
720 job_db_drop: false
721 job_db_init: true
722 job_db_sync: true
723 job_image_repo_sync: true
724 job_ks_endpoints: true
725 job_ks_service: true
726 job_ks_user: true
727 job_manage_cleaning_network: true
728 job_rabbit_init: true
729 pdb_api: true
730 network_policy: false
731 secret_db: true
732 secret_keystone: true
733 secret_rabbitmq: true
734 secret_registry: true
735 service_api: true
736 service_ingress_api: true
737 statefulset_conductor: true
738...