blob: 1a02c5a6182914748a441334bfb3b446c756960c [file] [log] [blame]
garciadeblas8080e4b2023-04-14 09:57:17 +02001#######################################################################################
2# Copyright ETSI Contributors and Others.
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
13# implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#######################################################################################
17# Default values for osm.
18# This is a YAML-formatted file.
19# Declare variables to be passed into your templates.
20
21global:
22 replicaCount: 1
garciadeblas29484f12023-05-25 10:36:17 +020023 logLevel: INFO
garciadeblas18582e92024-05-21 12:13:50 +020024 # hostname to be used for the ingress objects
25 hostname: ~
garciadeblas8080e4b2023-04-14 09:57:17 +020026 image:
27 repositoryBase: docker.io/opensourcemano
28 pullPolicy: IfNotPresent
29 # Overrides the image tag whose default is the chart appVersion.
garciadeblas6e459782023-06-01 00:04:35 +020030 tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +020031
32 imagePullSecrets: []
33 nameOverride: ""
34 fullnameOverride: ""
35
36 serviceAccount:
37 # Specifies whether a service account should be created
38 create: true
39 # Annotations to add to the service account
40 annotations: {}
41 # The name of the service account to use.
42 # If not set and create is true, a name is generated using the fullname template
43 name: ""
44
Luisc5176c62024-03-21 19:39:22 +000045 db:
46 mysql:
47 mysqlSecretName: mysql
48 mysqlSecretKey: mysql-root-password
49 mysqlService: mysql
50 mongo:
51 mongoService: mongodb-k8s
52 auth:
53 enabled: false
54 # secretName: mongodb-k8s
55 # secretKeyRootPassword: mongodb-root-password
56
garciadeblas8d8cd992024-05-21 16:04:14 +020057 gitops:
58 enabled: true
59 auxcluster:
60 secretName: auxcluster-secret
61 secretKey: kubeconfig
62 mgmtcluster:
63 secretName: mgmtcluster-secret
64 secretKey: kubeconfig
garciadeblas1f6e09a2024-09-10 18:50:29 +020065 gitUser: osm-developer
66 # gitBaseUrl: http://git.<IP_ADDRESS>.nip.io
67 # pubkey: AGEKEY
garciadeblas8d8cd992024-05-21 16:04:14 +020068
garciadeblas8080e4b2023-04-14 09:57:17 +020069 podAnnotations: {}
70
71 podSecurityContext:
72 # runAsUser: 1000
73 # runAsGroup: 1000
74 fsGroup: 1000
75
76 securityContext:
77 runAsUser: 1000
78
79 nodeSelector: {}
80
81 tolerations: []
82
83 affinity: {}
84
85 behindHttpProxy: false
86 httpProxy: {}
87 # HTTP_PROXY: <HTTP_PROXY>
88 # HTTPS_PROXY: <HTTPS_PROXY>
89 # NO_PROXY: <NO_PROXY>
90
91 oldServiceAssurance: false
92
garciadeblasb6c30b42023-05-26 11:10:11 +020093airflow:
94 enabled: true
95
garciadeblas18582e92024-05-21 12:13:50 +020096alertmanager:
97 enabled: true
98 ingress: {}
99 # host: alertmanager.<IP_ADDRESS>.nip.io
100
garciadeblas8080e4b2023-04-14 09:57:17 +0200101certauth:
102 enabled: true
103
104grafana:
105 enabled: true
zamreabf67702024-02-07 15:06:16 +0000106 fullnameOverride: "grafana"
garciadeblas18582e92024-05-21 12:13:50 +0200107 # service:
108 # type: NodePort
109 # nodePort: 3000
110 # port: 3000
111 ingress:
112 enabled: true
113 ingressClassName: nginx
114 # hosts:
115 # - grafana.<IP_ADDRESS>.nip.io
zamreabf67702024-02-07 15:06:16 +0000116 extraVolumes:
117 - emptyDir: {}
118 name: sc-dashboard-volume-k8s
119 - emptyDir: {}
120 name: sc-dashboard-volume-osm
121 extraVolumeMounts:
122 - name: sc-dashboard-volume-k8s
123 mountPath: "/tmp/dashboards/Kubernetes Cluster"
124 - name: sc-dashboard-volume-osm
125 mountPath: "/tmp/dashboards/Open Source MANO"
126 rbac:
127 extraClusterRoleRules:
128 - apiGroups:
129 - ""
130 resources:
131 - configmaps
132 - secrets
133 verbs:
134 - get
135 - watch
136 - list
137 datasources:
138 datasource.yaml:
139 apiVersion: 1
140 datasources:
141 - name: osm_prometheus
142 type: prometheus
143 url: http://prometheus:9090
144 access: proxy
145 allowUiUpdates: true
146 isDefault: true
147 - name: Prometheus
148 type: prometheus
149 url: http://osm-monitoring-kube-promet-prometheus.monitoring:9090
150 access: proxy
151 allowUiUpdates: true
152 isDefault: false
153 dashboardProviders:
154 provider.yaml:
155 apiVersion: 1
156 providers:
157 - name: 'Kubernetes Cluster'
158 orgId: 1
159 folder: 'Kubernetes Cluster'
160 type: file
161 disableDeletion: false
162 options:
163 path: '/tmp/dashboards/Kubernetes Cluster'
164 - name: 'Open Source MANO'
165 orgId: 1
166 folder: 'Open Source MANO'
167 type: file
168 disableDeletion: false
169 options:
170 path: '/tmp/dashboards/Open Source MANO'
171 sidecar:
172 dashboards:
173 enabled: true
174 folder: "/tmp/dashboards/"
175 resource: both
176 searchNamespace: osm
garciadeblase6d45882024-05-22 15:03:00 +0200177 extraMounts:
zamreabf67702024-02-07 15:06:16 +0000178 - name: sc-dashboard-volume-k8s
179 mountPath: "/tmp/dashboards/Kubernetes Cluster"
180 - name: sc-dashboard-volume-osm
181 mountPath: "/tmp/dashboards/Open Source MANO"
182 extraInitContainers:
183 - env:
184 - name: METHOD
185 value: LIST
186 - name: LABEL
187 value: grafana_datasource
188 - name: FOLDER
189 value: /etc/grafana/provisioning/datasources
190 - name: RESOURCE
191 value: both
192 image: kiwigrid/k8s-sidecar:1.15.6
193 imagePullPolicy: IfNotPresent
194 name: grafana-sc-datasources
195 resources: {}
196 terminationMessagePath: /dev/termination-log
197 terminationMessagePolicy: File
198 volumeMounts:
199 - mountPath: /etc/grafana/provisioning/datasources
200 name: config
garciadeblas8080e4b2023-04-14 09:57:17 +0200201
202kafka:
203 enabled: true
almagiaf976ab82023-12-07 15:19:15 +0100204 listeners:
205 client:
206 protocol: "PLAINTEXT"
207 fullnameOverride: "kafka"
garciadeblas85795872024-10-14 15:33:04 +0200208 replicaCount: 1
209 controller:
210 replicaCount: 1
211 extraConfigYaml:
212 default.replication.factor: 1
213 offsets.topic.replication.factor: 1
214 transaction.state.log.replication.factor: 1
215 transaction.state.log.min.isr: 1
garciadeblas8080e4b2023-04-14 09:57:17 +0200216
217keystone:
vegall7badcae2024-07-02 15:30:30 +0000218 enabled: false
garciadeblas8080e4b2023-04-14 09:57:17 +0200219 service:
220 port: 5000
221 image: {}
222 # repository: opensourcemano/keystone
garciadeblas6e459782023-06-01 00:04:35 +0200223 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200224 # replicaCount: 1
225 useOsmSecret: true
226 # secretName: "keystone-secret"
227
228lcm:
229 enabled: true
garciadeblas29484f12023-05-25 10:36:17 +0200230 logLevel: DEBUG
garciadeblas8080e4b2023-04-14 09:57:17 +0200231 image: {}
232 # repository: opensourcemano/lcm
garciadeblas6e459782023-06-01 00:04:35 +0200233 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200234 # replicaCount: 1
235 useOsmSecret: true
236 # secretName: "lcm-secret"
Pedro Pereirac09bd232024-06-19 20:59:36 +0100237 mainPostRenderer:
238 scriptName: mainPostRenderer
garciadeblas2ed535b2024-12-16 17:02:11 +0100239 path: /usr/lib/python3/dist-packages/osm_lcm/n2vc/post-renderer-scripts/mainPostRenderer/
Pedro Pereirac09bd232024-06-19 20:59:36 +0100240 podLabelsPostRenderer:
241 scriptName: podLabels
garciadeblas2ed535b2024-12-16 17:02:11 +0100242 path: /usr/lib/python3/dist-packages/osm_lcm/n2vc/post-renderer-scripts/podLabels/
Pedro Pereirab54e51a2024-08-23 10:01:42 +0100243 nodeSelectorPostRenderer:
244 scriptName: nodeSelector
garciadeblas2ed535b2024-12-16 17:02:11 +0100245 path: /usr/lib/python3/dist-packages/osm_lcm/n2vc/post-renderer-scripts/nodeSelector/
garciadeblas8080e4b2023-04-14 09:57:17 +0200246 config:
247 OSMLCM_VCA_CLOUD: "lxd-cloud"
248 OSMLCM_VCA_K8S_CLOUD: "k8scloud"
249 # OSMLCM_VCA_APIPROXY: "<VCA API proxy>"
250 # OSMLCM_VCA_ENABLEOSUPGRADE: true
251 # OSMLCM_VCA_APTMIRROR: "http://archive.ubuntu.com/ubuntu/"
252
253mon:
254 enabled: true
garciadeblas29484f12023-05-25 10:36:17 +0200255 # logLevel: DEBUG
garciadeblas8080e4b2023-04-14 09:57:17 +0200256 image: {}
257 # repository: opensourcemano/mon
garciadeblas6e459782023-06-01 00:04:35 +0200258 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200259 # replicaCount: 1
260 useOsmSecret: true
261 # secretName: "mon-secret"
262 config: {}
garciadeblas8080e4b2023-04-14 09:57:17 +0200263
264mysql:
vegall7badcae2024-07-02 15:30:30 +0000265 enabled: false
almagiaf976ab82023-12-07 15:19:15 +0100266 image:
267 tag: "8.1-debian-11"
268 fullnameOverride: "mysql"
garciadeblas8080e4b2023-04-14 09:57:17 +0200269
270nbi:
271 enabled: true
garciadeblas18582e92024-05-21 12:13:50 +0200272 ingress: {}
273 # host: nbi.<IP_ADDRESS>.nip.io
garciadeblas29484f12023-05-25 10:36:17 +0200274 logLevel: DEBUG
garciadeblas18582e92024-05-21 12:13:50 +0200275 service: {}
276 # type: NodePort
277 # port: 9999
278 # nodePort: 9999
garciadeblas8080e4b2023-04-14 09:57:17 +0200279 image: {}
280 # repository: opensourcemano/nbi
garciadeblas6e459782023-06-01 00:04:35 +0200281 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200282 # replicaCount: 1
283 useOsmSecret: true
284 # secretName: "nbi-secret"
jeganbabd7db2024-07-05 05:50:07 +0000285 smtp:
286 enabled: false
287 server: ""
288 port: ""
289 senderEmail: ""
290 otpRetryCount: 3
291 otpExpiryTime: 300
292 secretName: "osmnbi-email-password"
293 secretKey: "OSMNBI_EMAIL_PASSWORD"
294
garciadeblas8080e4b2023-04-14 09:57:17 +0200295
296ngui:
297 enabled: true
garciadeblas18582e92024-05-21 12:13:50 +0200298 service: {}
299 # type: NodePort
300 # port: 80
301 # nodePort: 80
302 ingress: {}
303 # host: <IP_ADDRESS>.nip.io
garciadeblas8080e4b2023-04-14 09:57:17 +0200304 image: {}
305 # repository: opensourcemano/ng-ui
garciadeblas6e459782023-06-01 00:04:35 +0200306 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200307 # replicaCount: 1
308
309# pla module is disabled by default unless global.oldServiceAssurance and pla.enabled are set to true
310pla:
311 enabled: false
garciadeblas29484f12023-05-25 10:36:17 +0200312 # logLevel: DEBUG
garciadeblas8080e4b2023-04-14 09:57:17 +0200313 image: {}
314 # repository: opensourcemano/pla
garciadeblas6e459782023-06-01 00:04:35 +0200315 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200316 # replicaCount: 1
317
318# pol module is disabled by default unless global.oldServiceAssurance and pol.enabled are set to true
319pol:
320 enabled: true
garciadeblas29484f12023-05-25 10:36:17 +0200321 # logLevel: DEBUG
garciadeblas8080e4b2023-04-14 09:57:17 +0200322 image: {}
323 # repository: opensourcemano/pol
garciadeblas6e459782023-06-01 00:04:35 +0200324 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200325 # replicaCount: 1
326 useOsmSecret: true
327 # secretName: "pol-secret"
328
329prometheus:
330 enabled: true
almagia027f8ee2024-06-03 17:29:12 +0200331 configmapReload:
332 prometheus:
333 enabled: true
334 prometheus-node-exporter:
335 enabled: false
336 kube-state-metrics:
337 enabled: false
338 server:
339 extraFlags:
340 - web.enable-lifecycle
341 statefulSet:
342 enabled: true
343 configPath: /etc/prometheus/prometheus.yml
344 fullnameOverride: "prometheus"
345 service:
346 servicePort: 9090
347 # type: NodePort
348 # nodePort: 9091
349 ingress:
350 enabled: true
351 ingressClassName: nginx
352 # hosts:
353 # - prometheus.<IP_ADDRESS>.nip.io
354 sidecarContainers:
355 prometheus-config-sidecar:
356 securityContext:
357 # readOnlyRootFilesystem: true
358 allowPrivilegeEscalation: false
359 # runAsNonRoot: true
360 image: opensourcemano/prometheus:testing-daily
361 imagePullPolicy: IfNotPresent
362 command: ["/bin/sh", "-c"]
363 args: ["sleep 50; python -u ./app.py"]
364 volumeMounts:
365 - name: prom-config
366 mountPath: /etc/prometheus
367 - name: prom-config-base
368 mountPath: /etc/prometheus_base
369 resources:
370 limits:
371 memory: 1024Mi
372 requests:
373 memory: 128Mi
374 envFrom:
375 - configMapRef:
376 name: osm-prometheus-sidecar-configmap
377 extraInitContainers:
378 - name: prometheus-init-config
379 image: busybox
380 command: ["/bin/sh", "-c"]
381 #args: [' sleep 100000 ']
382 args: ['if [ ! -f "/etc/prometheus/prometheus.yml" ]; then cp /config/prometheus.yml /etc/prometheus; fi; cp /config/osm_metric_rules.yml /config/osm_alert_rules.yml /etc/prometheus']
383 volumeMounts:
384 - name: prom-config
385 mountPath: /etc/prometheus
386 - name: prom-config-base
387 mountPath: /config
388 extraVolumeMounts:
389 - name: prom-config
390 mountPath: /etc/prometheus
391 extraVolumes:
392 - name: prom-config
393 emptyDir: {}
394 - name: prom-config-base
395 projected:
396 sources:
397 - configMap:
398 name: osm-prom-configmap
399 items:
400 - key: prometheus.yml
401 path: prometheus.yml
402 - configMap:
403 name: osm-prometheus-recordingrules-configmap
404 items:
405 - key: osm_metric_rules.yml
406 path: osm_metric_rules.yml
407 - configMap:
408 name: osm-prometheus-alertingrules-configmap
409 items:
410 - key: osm_alert_rules.yml
411 path: osm_alert_rules.yml
412 extraManifests:
413 - |
414 apiVersion: v1
415 kind: ConfigMap
416 metadata:
417 name: osm-prometheus-alertingrules-configmap
418 data:
419 osm_alert_rules.yml: |
420 groups:
421 - name: osm_alert_rules
422 rules:
423 - alert: vdu_down
424 expr: vm_status_extended != 1
425 for: 3m
426 annotations:
427 summary: "VDU {{ "{{" }} $labels.vm_id }} in VIM {{ "{{" }} $labels.vim_id }} is down"
428 description: "VDU {{ "{{" }} $labels.vm_id }} in VIM {{ "{{" }} $labels.vim_id }} has been down for more than 3 minutes. NS instance id is {{ "{{" }} $labels.ns_id }}"
429 - |
430 apiVersion: v1
431 kind: ConfigMap
432 metadata:
433 name: osm-prometheus-recordingrules-configmap
434 data:
435 osm_metric_rules.yml: |
436 groups:
437 - name: osm_metric_rules
438 rules:
439 - record: vm_status_extended
Rahul Zamre435b4c62024-06-04 09:26:57 +0100440 expr: (last_over_time(vm_status[1m]) * on (vm_id, vim_id) group_left(ns_id, vnf_id, vdu_id, project_id, job, vdu_name, ns_name, vnf_member_index) last_over_time(ns_topology[1m])) or (last_over_time(ns_topology[1m]) * -1)
almagia027f8ee2024-06-03 17:29:12 +0200441 labels:
442 job: osm_prometheus
443 - record: vnf_status
444 expr: (0 * (count (vm_status_extended==0) by (ns_id, vnf_id)>=0)) or (min by (ns_id, vnf_id) (vm_status_extended))
445 labels:
446 job: osm_prometheus
447 - record: ns_status
448 expr: (0 * (count (vm_status_extended==0) by (ns_id)>=0)) or (min by (ns_id) (vm_status_extended))
449 labels:
450 job: osm_prometheus
451 - |
452 apiVersion: v1
453 kind: ConfigMap
454 metadata:
455 name: osm-prometheus-sidecar-configmap
456 data:
457 MONGODB_URL: "mongodb://mongodb-k8s:27017/?replicaSet=rs0"
458 PROMETHEUS_CONFIG_FILE: "/etc/prometheus/prometheus.yml"
459 PROMETHEUS_BASE_CONFIG_FILE: "/etc/prometheus_base/prometheus.yml"
460 TARGET_DATABASE: "osm"
461 PROMETHEUS_URL: "http://prometheus:9090"
462 - |
463 apiVersion: v1
464 kind: ConfigMap
465 metadata:
466 name: osm-prom-configmap
467 data:
468 prometheus.yml: |
469 global:
470 scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
471 evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
472 # scrape_timeout is set to the global default (10s).
473 # Alertmanager configuration
474 alerting:
475 alertmanagers:
476 - static_configs:
477 - targets:
478 - alertmanager:9093
479 rule_files:
480 - "osm_metric_rules.yml"
481 - "osm_alert_rules.yml"
482 scrape_configs:
483 - job_name: 'mon_exporter'
484 static_configs:
485 - targets: ['mon:8000']
486 - job_name: pushgateway
487 honor_labels: true
488 scrape_interval: 30s
489 static_configs:
490 - targets:
491 - pushgateway-prometheus-pushgateway:9091
492 - job_name: prometheus
493 static_configs:
494 - targets:
495 - localhost:9090
496 - job_name: node
497 static_configs:
498 - targets: ['prometheus-node-exporter:9100']
499 alertmanager:
500 enabled: true
501 fullnameOverride: "alertmanager"
502 extraArgs:
503 log.level: debug
504 # service:
505 # type: NodePort
506 # nodePort: 9093
507 # port: 9093
508 # ingress:
509 # enabled: True
510 # className: nginx
511 # hosts:
512 # - host: localhost
513 # paths:
514 # - path: /
515 # pathType: ImplementationSpecific
516 # tls: []
517 config:
518 receivers:
519 - name: default-receiver
520 - name: vdu-webhook
521 webhook_configs:
522 - url: http://webhook-translator:9998/vdu_down
523 - name: scaleout-webhook
524 webhook_configs:
525 - url: http://webhook-translator:9998/scaleout_vdu
526 - name: scalein-webhook
527 webhook_configs:
528 - url: http://webhook-translator:9998/scalein_vdu
529 - name: alarm-webhook
530 webhook_configs:
531 - url: http://webhook-translator:9998/vdu_alarm
532 route:
533 group_wait: 10s
534 group_interval: 2m
535 receiver: default-receiver
536 routes:
537 - receiver: vdu-webhook
538 repeat_interval: 15m
539 matchers:
540 - alertname = "vdu_down"
541 - receiver: 'scaleout-webhook'
542 repeat_interval: 5m
543 matchers:
544 - alertname =~ "^scaleout_.*"
545 - receiver: 'scalein-webhook'
546 repeat_interval: 5m
547 matchers:
548 - alertname =~ "^scalein_.*"
549 - receiver: 'alarm-webhook'
550 repeat_interval: 5m
551 matchers:
552 - alertname =~ "^vdu_alarm_.*"
553 prometheus-pushgateway:
554 fullnameOverride: "pushgateway-prometheus-pushgateway"
555
garciadeblas8080e4b2023-04-14 09:57:17 +0200556ro:
557 enabled: true
garciadeblas29484f12023-05-25 10:36:17 +0200558 # logLevel: DEBUG
garciadeblas8080e4b2023-04-14 09:57:17 +0200559 service:
560 port: 9090
561 image: {}
562 # repository: opensourcemano/ro
garciadeblas6e459782023-06-01 00:04:35 +0200563 # tag: "testing-daily"
garciadeblas8080e4b2023-04-14 09:57:17 +0200564 # replicaCount: 1
565 useOsmSecret: true
566 # secretName: "ro-secret"
567
568vca:
garciadeblas8375da12023-10-10 10:52:29 +0200569 enabled: false
garciadeblas8080e4b2023-04-14 09:57:17 +0200570 # host: ""
571 # secret: ""
572 # cacert: ""
573 # pubkey: ""
574
575webhookTranslator:
576 enabled: true
garciadeblas18582e92024-05-21 12:13:50 +0200577 # replicaCount: 1
garciadeblas8080e4b2023-04-14 09:57:17 +0200578 image: {}
579 # repository: opensourcemano/webhook
garciadeblas6e459782023-06-01 00:04:35 +0200580 # tag: "testing-daily"
garciadeblas18582e92024-05-21 12:13:50 +0200581 ingress: {}
582 # host: webhook.<IP_ADDRESS>.nip.io
garciadeblas8080e4b2023-04-14 09:57:17 +0200583 # replicaCount: 1
garciadeblas18582e92024-05-21 12:13:50 +0200584 service: {}
585 # type: NodePort
586 # nodePort: 9998
587 # port: 9998