1 # Copyright © 2020 Samsung Electronics, highstreet technologies GmbH
2 # Copyright © 2017 Amdocs, Bell Canada
3 # Copyright © 2021 Nokia
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 #################################################################
18 # Global configuration defaults.
19 #################################################################
22 nodePortPrefixExt: 304
24 mountPath: /dockerdata-nfs
25 centralizedLoggingEnabled: true
27 # flag to enable the DB creation via mariadb-operator
29 #This flag allows SO to instantiate its own mariadb-galera cluster
30 #If shared instance is used, this chart assumes that DB already exists
32 service: &mariadbService mariadb-galera
34 nameOverride: &mariadbName mariadb-galera
37 #################################################################
39 #################################################################
41 - uid: db-root-password
42 name: &rootDbSecret '{{ include "common.release" . }}-sdnc-db-root-password'
44 # If we're using shared mariadb, we need to use the secret name (second
46 # If not, we do the same trick than for user db secret hat allows you
47 # override this secret using external one with the same field that is used
48 # to pass this to subchart.
49 externalSecret: '{{ .Values.global.mariadbGalera.localCluster |
50 ternary ((hasSuffix "sdnc-db-root-password" (index .Values "mariadb-galera" "rootUser" "externalSecret")) |
53 (tpl (default "" (index .Values "mariadb-galera" "rootUser" "externalSecret")) .))
54 (include "common.mariadb.secret.rootPassSecretName"
56 "chartName" .Values.global.mariadbGalera.nameOverride)) }}'
57 password: '{{ (index .Values "mariadb-galera" "rootUser" "password") }}'
59 name: &dbSecretName '{{ include "common.release" . }}-sdnc-db-secret'
61 # This is a nasty trick that allows you override this secret using external one
62 # with the same field that is used to pass this to subchart
63 externalSecret: '{{ (hasSuffix "sdnc-db-secret" (index .Values "mariadb-galera" "db" "externalSecret")) |
66 (tpl (default "" (index .Values "mariadb-galera" "db" "externalSecret")) .) }}'
67 login: '{{ index .Values "mariadb-galera" "db" "user" }}'
68 password: '{{ index .Values "mariadb-galera" "db" "password" }}'
70 name: &odlCredsSecretName '{{ include "common.release" . }}-sdnc-odl-creds'
72 externalSecret: '{{ .Values.config.odlCredsExternalSecret }}'
73 login: '{{ .Values.config.odlUser }}'
74 password: '{{ .Values.config.odlPassword }}'
75 # For now this is left hardcoded but should be revisited in a future
76 passwordPolicy: required
79 externalSecret: '{{ .Values.config.netboxApikeyExternalSecret }}'
80 password: '{{ .Values.config.netboxApikey }}'
81 passwordPolicy: required
82 - uid: aai-truststore-password
84 externalSecret: '{{ .Values.config.aaiTruststoreExternalSecret }}'
85 password: '{{ .Values.config.aaiTruststorePassword }}'
86 passwordPolicy: required
87 - uid: ansible-truststore-password
89 externalSecret: '{{ .Values.config.ansibleTruststoreExternalSecret }}'
90 password: '{{ .Values.config.ansibleTruststorePassword }}'
91 passwordPolicy: required
92 - uid: truststore-password
94 externalSecret: '{{ .Values.config.truststoreExternalSecret }}'
95 password: '{{ .Values.config.truststorePassword }}'
96 passwordPolicy: required
97 - uid: keystore-password
99 externalSecret: '{{ .Values.config.keystoreExternalSecret }}'
100 password: '{{ .Values.config.keystorePassword }}'
101 passwordPolicy: required
104 externalSecret: '{{ .Values.config.dmaapAuthKeyExternalSecret }}'
105 password: '{{ .Values.config.dmaapAuthKey }}'
106 passwordPolicy: required
107 - uid: aai-user-creds
109 externalSecret: '{{ .Values.config.aaiCredsExternalSecret}}'
110 login: '{{ .Values.config.aaiUser }}'
111 password: '{{ .Values.config.aaiPassword }}'
112 passwordPolicy: required
115 externalSecret: '{{ .Values.config.soCredsExternalSecret}}'
116 login: '{{ .Values.config.soUser }}'
117 password: '{{ .Values.config.soPassword }}'
118 passwordPolicy: required
119 - uid: neng-user-creds
121 externalSecret: '{{ .Values.config.nengCredsExternalSecret}}'
122 login: '{{ .Values.config.nengUser }}'
123 password: '{{ .Values.config.nengPassword }}'
124 passwordPolicy: required
125 - uid: cds-user-creds
127 externalSecret: '{{ .Values.config.cdsCredsExternalSecret}}'
128 login: '{{ .Values.config.cdsUser }}'
129 password: '{{ .Values.config.cdsPassword }}'
130 passwordPolicy: required
131 - uid: honeycomb-user-creds
133 externalSecret: '{{ .Values.config.honeycombCredsExternalSecret}}'
134 login: '{{ .Values.config.honeycombUser }}'
135 password: '{{ .Values.config.honeycombPassword }}'
136 passwordPolicy: required
137 - uid: dmaap-user-creds
139 externalSecret: '{{ .Values.config.dmaapCredsExternalSecret}}'
140 login: '{{ .Values.config.dmaapUser }}'
141 password: '{{ .Values.config.dmaapPassword }}'
142 passwordPolicy: required
143 - uid: modeling-user-creds
145 externalSecret: '{{ .Values.config.modelingCredsExternalSecret}}'
146 login: '{{ .Values.config.modelingUser }}'
147 password: '{{ .Values.config.modelingPassword }}'
148 passwordPolicy: required
149 - uid: restconf-creds
151 externalSecret: '{{ .Values.config.restconfCredsExternalSecret}}'
152 login: '{{ .Values.config.restconfUser }}'
153 password: '{{ .Values.config.restconfPassword }}'
154 passwordPolicy: required
156 name: &ansibleSecretName '{{ include "common.release" . }}-sdnc-ansible-creds'
158 externalSecret: '{{ .Values.config.ansibleCredsExternalSecret}}'
159 login: '{{ .Values.config.ansibleUser }}'
160 password: '{{ .Values.config.ansiblePassword }}'
161 passwordPolicy: required
162 - uid: scaleout-creds
164 externalSecret: '{{ .Values.config.scaleoutCredsExternalSecret}}'
165 login: '{{ .Values.config.scaleoutUser }}'
166 password: '{{ .Values.config.scaleoutPassword }}'
167 passwordPolicy: required
168 - uid: oauth-token-secret
170 externalSecret: '{{ ternary (tpl (default "" .Values.config.sdnr.oauth.tokenExternalSecret) .) "oauth-disabled" .Values.config.sdnr.oauth.enabled }}'
171 password: '{{ .Values.config.sdnr.oauth.tokenSecret }}'
172 passwordPolicy: required
173 - uid: keycloak-secret
175 externalSecret: '{{ ternary (tpl (default "" .Values.config.sdnr.oauth.providersSecrets.keycloakExternalSecret) .) "oauth-disabled" .Values.config.sdnr.oauth.enabled }}'
176 password: '{{ .Values.config.sdnr.oauth.providersSecrets.keycloak }}'
177 passwordPolicy: required
178 - uid: ves-collector-secret
180 login: '{{ .Values.config.sdnr.vesCollector.username }}'
181 password: '{{ .Values.config.sdnr.vesCollector.password }}'
183 name: &sdnrdbSecretName '{{ include "common.release" . }}-sdnc-sdnrdb-secret'
185 login: '{{ index .Values "config" "sdnr" "mariadb" "user" }}'
186 password: '{{ index .Values "config" "sdnr" "mariadb" "password" }}'
187 #################################################################
189 #################################################################
191 - mountPath: /var/custom-certs
192 commonName: sdnc.simpledemo.onap.org
194 - sdnc.simpledemo.onap.org
200 name: sdnc-cmpv2-keystore-password
203 group: certmanager.onap.org
205 name: cmpv2-issuer-onap
206 #################################################################
207 # Application configuration defaults.
208 #################################################################
212 image: onap/sdnc-image:2.5.5
214 # flag to enable debugging - application support required
217 # application configuration
222 odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
223 # odlCredsExternalSecret: some secret
224 netboxApikey: onceuponatimeiplayedwithnetbox20180814
225 # netboxApikeyExternalSecret: some secret
226 aaiTruststorePassword: changeit
227 # aaiTruststoreExternalSecret: some secret
228 ansibleTruststorePassword: changeit
229 # ansibleTruststoreExternalSecret: some secret
230 truststorePassword: adminadmin
231 # truststoreExternalSecret: some secret
232 keystorePassword: adminadmin
233 # keystoreExternalSecret: some secret
234 aaiUser: sdnc@sdnc.onap.org
235 aaiPassword: demo123456!
236 # aaiCredsExternalSecret: some secret
238 soPassword: password1$
239 # soCredsExternalSecret: some secret
241 nengPassword: ccsdkapps
242 # nengCredsExternalSecret: some secret
244 cdsPassword: ccsdkapps
245 # cdsCredsExternalSecret: some secret
247 honeycombPassword: admin
248 # honeycombCredsExternalSecret: some secret
251 dmaapAuthKey: "fs20cKwalJ6ry4kX:7Hqm6BDZK47IKxGRkOPFk33qMYs="
252 # dmaapCredsExternalSecret: some secret
253 # dmaapAuthKeyExternalSecret: some secret
254 modelingUser: ccsdkapps
255 modelingPassword: ccsdkapps
256 # modelingCredsExternalSecret: some secret
258 restconfPassword: admin
259 # restconfCredsExternalSecret: some secret
261 scaleoutPassword: admin
262 # scaleoutExternalSecret: some secret
264 ansiblePassword: sdnc
265 # ansibleCredsExternalSecret: some secret
267 dbSdnctlDatabase: &sdncDbName sdnctl
268 enableClustering: true
269 sdncHome: /opt/onap/sdnc
270 binDir: /opt/onap/sdnc/bin
271 etcDir: /opt/onap/sdnc/data
273 # if geoEnabled is set to true here, mysql.geoEnabled must be set to true
274 # if geoEnabled is set to true the following 3 values must be set to their proper values
275 myODLCluster: 127.0.0.1
276 peerODLCluster: 127.0.0.1
277 isPrimaryCluster: true
278 configDir: /opt/onap/sdnc/data/properties
279 ccsdkConfigDir: /opt/onap/ccsdk/data/properties
282 logstashServiceName: log-ls
284 ansibleServiceName: sdnc-ansible-server
286 javaHome: /opt/java/openjdk
289 etcDir: /opt/opendaylight/etc
290 binDir: /opt/opendaylight/bin
291 gcLogDir: /opt/opendaylight/data/log
292 salConfigDir: /opt/opendaylight/system/org/opendaylight/controller/sal-clustering-config
293 salConfigVersion: 1.10.4
300 recoveryEventTimeout: 90s
302 persistentActorRestartMinBackoffInSeconds: 10
303 persistentActorRestartMaxBackoffInSeconds: 40
304 persistentActorRestartResetBackoffInSeconds: 20
305 shardTransactionCommitTimeoutInSeconds: 120
306 shardIsolatedLeaderCheckIntervalInMillis: 30000
307 operationTimeoutInSeconds: 120
309 maxGCPauseMillis: 100
310 parallelGCThreads : 3
315 # Next line enables gc logging
316 # gcLogOptions: "-Xlog:gc=trace:file={{.Values.config.odl.gcLogDir}}/gc-%t.log}:time,level,tags:filecount={{.Values.config.odl.javaOptions.numberGCLogFiles}}"
317 # enables sdnr functionality
320 # mode: web - SDNC contains device manager only plus dedicated webserver service for ODLUX (default),
321 # mode: dm - SDNC contains sdnr device manager + ODLUX components
323 # sdnronly: true starts sdnc container with odl and sdnrwt features only
325 sdnrdbTrustAllCerts: true
327 ## for legacy eleasticsearch database
328 enabled: &esdbenabled true
329 # enabled: &esdbenabled false
331 ## for legacy eleasticsearch database
336 externalSecret: *sdnrdbSecretName
341 consumerGroupPrefix: &consumerGroupPrefix sdnr
342 # Strimzi KafkaUser config see configuration below
343 kafkaUser: &kafkaUser
345 - name: unauthenticated.SEC_
349 - name: unauthenticated.VES_PNFREG_OUTPUT
353 - name: *consumerGroupPrefix
357 ## set if bootstrap server is not OOM standard
358 # bootstrapServers: []
359 ## set connection parameters if not default
360 # securityProtocol: PLAINTEXT
361 # saslMechanism: SCRAM-SHA-512
362 ## saslJassConfig: provided by secret
365 mountpointStateProviderEnabled: false
372 tokenIssuer: ONAP SDNC
374 supportOdlusers: true
379 # example definition for a oauth provider
381 keycloak: d8d7ed52-0691-4353-9ac6-5383e72e9c46
385 host: http://keycloak:8080
387 secret: ${KEYCLOAK_SECRET}
389 title: ONAP Keycloak Provider
396 trustAllCertificates: false
399 address: dcae-ves-collector.onap
402 reportingEntityName: ONAP SDN-R
403 eventLogMsgDetail: SHORT
405 # Strimzi KafkaUser/Topic config on top level
406 kafkaUser: *kafkaUser
409 # dependency / sub-chart configuration
412 mariadb-galera: &mariadbGalera
413 nameOverride: &sdnc-db sdnc-db
414 config: &mariadbGaleraConfig
415 rootPasswordExternalSecret: *rootDbSecret
416 userName: &dbUser sdnctl
417 userCredentialsExternalSecret: *dbSecretName
419 externalSecret: *rootDbSecret
423 externalSecret: *dbSecretName
428 mountSubPath: sdnc/mariadb-galera
435 nameOverride: *sdnc-db
442 nameOverride: sdnc-dmaap-listener
446 <<: *mariadbGaleraConfig
447 mysqlDatabase: *sdncDbName
452 configDir: /opt/onap/sdnc/data/properties
453 odlCredsExternalSecret: *odlCredsSecretName
460 <<: *mariadbGaleraConfig
461 mysqlDatabase: *sdncDbName
462 nameOverride: sdnc-ueb-listener
466 configDir: /opt/onap/sdnc/data/properties
467 odlCredsExternalSecret: *odlCredsSecretName
472 restCredsExternalSecret: *ansibleSecretName
476 <<: *mariadbGaleraConfig
477 mysqlDatabase: ansible
479 name: sdnc-ansible-server
484 nameOverride: sdnc-dgbuilder
488 rootPasswordExternalSecret: '{{ .Values.global.mariadbGalera.localCluster |
490 (printf "%s-sdnc-db-root-password" (include "common.release" .))
491 (include "common.mariadb.secret.rootPassSecretName"
492 (dict "dot" . "chartName" "mariadb-galera")) }}'
493 userCredentialsExternalSecret: *dbSecretName
494 dbPodName: *mariadbName
495 dbServiceName: *mariadbService
496 # This should be revisited and changed to plain text
497 dgUserPassword: cc03e747a6afbbcbf8be7668acfebee5
499 nameOverride: sdnc-dgbuilder
511 - baseaddr: "sdnc-dgbuilder-ui"
512 name: "sdnc-dgbuilder"
519 # local elasticsearch cluster
520 localElasticCluster: true
522 enabled: *esdbenabled
523 nameOverride: &elasticSearchName sdnrdb
526 name: *elasticSearchName
529 # dedicatednode: "yes"
530 # working as master node only, in this case increase replicaCount for elasticsearch-data
531 # dedicatednode: "no"
532 # handles master and data node functionality
534 nameOverride: *elasticSearchName
535 cluster_name: sdnrdb-cluster
540 ## set if web socket port should not be default
541 # sdnrWebsocketPort: *sdnrWebsocketPort
542 # default number of instances
549 # probe configuration parameters
551 initialDelaySeconds: 10
553 # necessary to disable liveness probe when setting breakpoints
554 # in debugger so K8s doesn't restart unresponsive container
558 initialDelaySeconds: 10
589 callHomePort: &chport 4334
591 ## set if web socket port should not be default
592 ## change in sdnc-web section as well
593 # sdnrWebsocketPort: &sdnrWebsocketPort 8182
596 ## Persist data to a persitent volume
600 ## A manually managed Persistent Volume and Claim
601 ## Requires persistence.enabled: true
602 ## If defined, PVC must be created manually before volume will be bound
604 volumeReclaimPolicy: Retain
606 ## database data Persistent Volume Storage Class
607 ## If defined, storageClassName: <storageClass>
608 ## If set to "-", storageClassName: "", which disables dynamic provisioning
609 ## If undefined (the default) or set to null, no storageClassName spec is
610 ## set, choosing the default provisioner. (gp2 on AWS, standard on
611 ## GKE, AWS & OpenStack)
612 accessMode: ReadWriteOnce
614 mountPath: /dockerdata-nfs
615 mountSubPath: sdnc/mdsal
616 mdsalPath: /opt/opendaylight/mdsal
617 daeximPath: /opt/opendaylight/mdsal/daexim
618 journalPath: /opt/opendaylight/segmented-journal
619 snapshotsPath: /opt/opendaylight/snapshots
624 - baseaddr: "sdnc-api"
627 - baseaddr: "sdnc-callhome"
628 name: "sdnc-callhome"
638 authorizedPrincipals:
639 - serviceAccount: a1policymanagement-read
640 - serviceAccount: cds-blueprints-processor-read
641 - serviceAccount: consul-read
642 - serviceAccount: ncmp-dmi-plugin-read
643 - serviceAccount: policy-drools-pdp-read
644 - serviceAccount: robot-read
645 - serviceAccount: sdnc-ansible-server-read
646 - serviceAccount: sdnc-dmaap-listener-read
647 - serviceAccount: sdnc-prom-read
648 - serviceAccount: sdnc-ueb-listener-read
649 - serviceAccount: sdnc-web-read
650 - serviceAccount: so-sdnc-adapter-read
651 - serviceAccount: istio-ingress
652 namespace: istio-ingress
653 authorizedPrincipalsSdnHosts:
654 - serviceAccount: sdnc-read
656 #Resource Limit flavor -By Default using small
658 #segregation for different envionment (Small and Large)
677 #Pods Service Account