[GENERAL] Use readiness container v3.0.1
[oom.git] / kubernetes / sdnc / values.yaml
1 # Copyright © 2020 Samsung Electronics, highstreet technologies GmbH
2 # Copyright © 2017 Amdocs, Bell Canada
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 implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 #################################################################
17 # Global configuration defaults.
18 #################################################################
19 global:
20   nodePortPrefix: 302
21   nodePortPrefixExt: 304
22   repository: nexus3.onap.org:10001
23   readinessImage: onap/oom/readiness:3.0.1
24   loggingRepository: docker.elastic.co
25   loggingImage: beats/filebeat:5.5.0
26   persistence:
27     mountPath: /dockerdata-nfs
28   aafEnabled: true
29   # envsusbt
30   envsubstImage: dibi/envsubst
31   mariadbGalera:
32     #This flag allows SO to instantiate its own mariadb-galera cluster
33     #If shared instance is used, this chart assumes that DB already exists
34     localCluster: false
35     service: mariadb-galera
36     internalPort: 3306
37     nameOverride: mariadb-galera
38
39 #################################################################
40 # Secrets metaconfig
41 #################################################################
42 secrets:
43   - uid: db-root-password
44     name: '{{ include "common.release" . }}-sdnc-db-root-password'
45     type: password
46     externalSecret: '{{ .Values.global.mariadbGalera.localCluster |
47       ternary (default (include "common.mariadb.secret.rootPassSecretName"
48       (dict "dot" . "chartName"
49       (index .Values "mariadb-galera" "nameOverride")))
50       (index .Values "mariadb-galera" "config"
51       "mariadbRootPasswordExternalSecret"))
52       (include "common.mariadb.secret.rootPassSecretName"
53       (dict "dot" . "chartName" .Values.global.mariadbGalera.nameOverride)) }}'
54     password: '{{ (index .Values "mariadb-galera" "config" "mariadbRootPassword") }}'
55   - uid: db-secret
56     name: &dbSecretName '{{ include "common.release" . }}-sdnc-db-secret'
57     type: basicAuth
58     # This is a nasty trick that allows you override this secret using external one
59     # with the same field that is used to pass this to subchart
60     externalSecret: '{{ ternary "" (tpl (default "" (index .Values "mariadb-galera" "config" "userCredentialsExternalSecret")) .) (hasSuffix "sdnc-db-secret" (index .Values "mariadb-galera" "config" "userCredentialsExternalSecret"))}}'
61     login: '{{ index .Values "mariadb-galera" "config" "userName" }}'
62     password: '{{ index .Values "mariadb-galera" "config" "userPassword" }}'
63   - uid: odl-creds
64     name: &odlCredsSecretName '{{ include "common.release" . }}-sdnc-odl-creds'
65     type: basicAuth
66     externalSecret: '{{ .Values.config.odlCredsExternalSecret }}'
67     login: '{{ .Values.config.odlUser }}'
68     password: '{{ .Values.config.odlPassword }}'
69     # For now this is left hardcoded but should be revisited in a future
70     passwordPolicy: required
71   - uid: netbox-apikey
72     type: password
73     externalSecret: '{{ .Values.config.netboxApikeyExternalSecret }}'
74     password: '{{ .Values.config.netboxApikey }}'
75     passwordPolicy: required
76   - uid: aai-user-creds
77     type: basicAuth
78     externalSecret: '{{ .Values.config.aaiCredsExternalSecret}}'
79     login: '{{ .Values.config.aaiUser }}'
80     password: '{{ .Values.config.aaiPassword }}'
81     passwordPolicy: required
82   - uid: modeling-user-creds
83     type: basicAuth
84     externalSecret: '{{ .Values.config.modelingCredsExternalSecret}}'
85     login: '{{ .Values.config.modelingUser }}'
86     password: '{{ .Values.config.modelingPassword }}'
87     passwordPolicy: required
88   - uid: restconf-creds
89     type: basicAuth
90     externalSecret: '{{ .Values.config.restconfCredsExternalSecret}}'
91     login: '{{ .Values.config.restconfUser }}'
92     password: '{{ .Values.config.restconfPassword }}'
93     passwordPolicy: required
94   - uid: ansible-creds
95     name: &ansibleSecretName '{{ include "common.release" . }}-sdnc-ansible-creds'
96     type: basicAuth
97     externalSecret: '{{ .Values.config.ansibleCredsExternalSecret}}'
98     login: '{{ .Values.config.ansibleUser }}'
99     password: '{{ .Values.config.ansiblePassword }}'
100     passwordPolicy: required
101   - uid: scaleout-creds
102     type: basicAuth
103     externalSecret: '{{ .Values.config.scaleoutCredsExternalSecret}}'
104     login: '{{ .Values.config.scaleoutUser }}'
105     password: '{{ .Values.config.scaleoutPassword }}'
106     passwordPolicy: required
107 #################################################################
108 # Application configuration defaults.
109 #################################################################
110 # application images
111 repository: nexus3.onap.org:10001
112 pullPolicy: Always
113 image: onap/sdnc-image:1.8.4
114
115
116 # flag to enable debugging - application support required
117 debugEnabled: false
118
119 # application configuration
120 config:
121   odlUid: 100
122   odlGid: 101
123   odlUser: admin
124   odlPassword: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
125   # odlCredsExternalSecret: some secret
126   netboxApikey: onceuponatimeiplayedwithnetbox20180814
127   # netboxApikeyExternalSecret: some secret
128   aaiUser: sdnc@sdnc.onap.org
129   aaiPassword: demo123456!
130   # aaiCredsExternalSecret: some secret
131   modelingUser: ccsdkapps
132   modelingPassword: ccsdkapps
133   # modelingCredsExternalSecret: some secret
134   restconfUser: admin
135   restconfPassword: admin
136   # restconfCredsExternalSecret: some secret
137   scaleoutUser: admin
138   scaleoutPassword: admin
139   # scaleoutExternalSecret: some secret
140   ansibleUser: sdnc
141   ansiblePassword: sdnc
142   # ansibleCredsExternalSecret: some secret
143   dbSdnctlDatabase: &sdncDbName sdnctl
144   enableClustering: true
145   sdncHome: /opt/onap/sdnc
146   binDir: /opt/onap/sdnc/bin
147   etcDir: /opt/onap/sdnc/data
148   geoEnabled: false
149 # if geoEnabled is set to true here, mysql.geoEnabled must be set to true
150 # if geoEnabled is set to true the following 3 values must be set to their proper values
151   myODLCluster: 127.0.0.1
152   peerODLCluster: 127.0.0.1
153   isPrimaryCluster: true
154   configDir: /opt/onap/sdnc/data/properties
155   ccsdkConfigDir: /opt/onap/ccsdk/data/properties
156   dmaapTopic: SUCCESS
157   dmaapPort: 3904
158   logstashServiceName: log-ls
159   logstashPort: 5044
160   ansibleServiceName: sdnc-ansible-server
161   ansiblePort: 8000
162   javaHome: /usr/lib/jvm/java-1.8-openjdk
163
164   odl:
165     etcDir: /opt/opendaylight/etc
166     binDir: /opt/opendaylight/bin
167     salConfigDir: /opt/opendaylight/system/org/opendaylight/controller/sal-clustering-config
168     salConfigVersion: 1.9.1
169     akka:
170       seedNodeTimeout: 15s
171       circuitBreaker:
172         maxFailures: 10
173         callTimeout: 90s
174         resetTimeout: 30s
175       recoveryEventTimeout: 90s
176     datastore:
177       persistentActorRestartMinBackoffInSeconds: 10
178       persistentActorRestartMaxBackoffInSeconds: 40
179       persistentActorRestartResetBackoffInSeconds: 20
180       shardTransactionCommitTimeoutInSeconds: 120
181       shardIsolatedLeaderCheckIntervalInMillis: 30000
182       operationTimeoutInSeconds: 120
183     javaOptions:
184       maxGCPauseMillis: 100
185       parallelGCThreads : 3
186       numberGGLogFiles: 10
187         # enables sdnr functionality
188   sdnr:
189     enabled: true
190     # mode: web - SDNC contains device manager only plus dedicated webserver service for ODLUX (default),
191     # mode: dm - SDNC contains sdnr device manager + ODLUX components
192     mode: dm
193     # sdnronly: true starts sdnc container with odl and sdnrwt features only
194     sdnronly: false
195     sdnrdbTrustAllCerts: true
196     mountpointRegistrarEnabled: false
197     mountpointStateProviderEnabled: false
198
199
200
201 # dependency / sub-chart configuration
202 certInitializer:
203   nameOverride: sdnc-cert-initializer
204   truststoreMountpath: /opt/onap/sdnc/data/stores
205   fqdn: "sdnc"
206   app_ns: "org.osaaf.aaf"
207   fqi: "sdnc@sdnc.onap.org"
208   fqi_namespace: org.onap.sdnc
209   public_fqdn: "sdnc.onap.org"
210   aafDeployFqi: "deployer@people.osaaf.org"
211   aafDeployPass: demo123456!
212   cadi_latitude: "38.0"
213   cadi_longitude: "-72.0"
214   credsPath: /opt/app/osaaf/local
215   aaf_add_config: >
216     cd /opt/app/osaaf/local;
217     /opt/app/aaf_config/bin/agent.sh local showpass {{.Values.fqi}} {{ .Values.fqdn }} | grep cadi_keystore_password= | cut -d= -f 2 > {{ .Values.credsPath }}/.pass 2>&1
218
219 # dependency / sub-chart configuration
220 network-name-gen:
221   enabled: true
222 mariadb-galera: &mariadbGalera
223   nameOverride: sdnc-db
224   config: &mariadbGaleraConfig
225     rootPasswordExternalSecret: '{{ ternary (include "common.release" .)-sdnc-db-root-password "" .Values.global.mariadbGalera.localCluster }}'
226     userName: sdnctl
227     userCredentialsExternalSecret: *dbSecretName
228   service:
229     name: sdnc-dbhost
230     internalPort: 3306
231   sdnctlPrefix: sdnc
232   persistence:
233     mountSubPath: sdnc/mariadb-galera
234     enabled: true
235   replicaCount: 1
236
237 cds:
238   enabled: false
239
240 dmaap-listener:
241   enabled: true
242   nameOverride: sdnc-dmaap-listener
243   mariadb-galera:
244     <<: *mariadbGalera
245     config:
246       <<: *mariadbGaleraConfig
247       mysqlDatabase: *sdncDbName
248   config:
249     sdncChartName: sdnc
250     dmaapPort: 3904
251     sdncPort: 8282
252     configDir: /opt/onap/sdnc/data/properties
253     odlCredsExternalSecret: *odlCredsSecretName
254
255 ueb-listener:
256   enabled: true
257   mariadb-galera:
258     <<: *mariadbGalera
259     config:
260       <<: *mariadbGaleraConfig
261       mysqlDatabase: *sdncDbName
262   nameOverride: sdnc-ueb-listener
263   config:
264     sdncPort: 8282
265     sdncChartName: sdnc
266     configDir: /opt/onap/sdnc/data/properties
267     odlCredsExternalSecret: *odlCredsSecretName
268
269 sdnc-ansible-server:
270   enabled: true
271   config:
272     restCredsExternalSecret: *ansibleSecretName
273   mariadb-galera:
274     <<: *mariadbGalera
275     config:
276       <<: *mariadbGaleraConfig
277       mysqlDatabase: ansible
278   service:
279     name: sdnc-ansible-server
280     internalPort: 8000
281
282 dgbuilder:
283   enabled: true
284   nameOverride: sdnc-dgbuilder
285   config:
286     db:
287       dbName: *sdncDbName
288       rootPasswordExternalSecret: '{{ ternary (printf "%s-sdnc-db-root-password" (include "common.release" .)) (include "common.mariadb.secret.rootPassSecretName" (dict "dot" . "chartName" "mariadb-galera")) .Values.global.mariadbGalera.localCluster }}'
289       userCredentialsExternalSecret: *dbSecretName
290     dbPodName: mariadb-galera
291     dbServiceName: mariadb-galera
292     # This should be revisited and changed to plain text
293     dgUserPassword: cc03e747a6afbbcbf8be7668acfebee5
294   mariadb-galera:
295   service:
296     name: sdnc-dgbuilder
297     nodePort: "03"
298
299   ingress:
300     enabled: false
301     service:
302       - baseaddr: "sdnc-dgbuilder"
303         name: "sdnc-dgbuilder"
304         port: 3000
305       - baseaddr: "sdnc-web-service"
306         name: "sdnc-web-service"
307         port: 8443
308     config:
309       ssl: "redirect"
310
311
312
313 # local elasticsearch cluster
314 localElasticCluster: true
315 elasticsearch:
316   nameOverride: sdnrdb
317   name: sdnrdb-cluster
318   certInitializer:
319     fqdn: "sdnc"
320     fqi_namespace: org.onap.sdnc
321     fqi: "sdnc@sdnc.onap.org"
322   service:
323     name: sdnrdb
324   master:
325     replicaCount: 3
326     # dedicatednode: "yes"
327     # working as master node only, in this case increase replicaCount for elasticsearch-data
328     # dedicatednode: "no"
329     # handles master and data node functionality
330     dedicatednode: "no"
331     nameOverride: sdnrdb
332 # enable
333 sdnc-web:
334   enabled: false
335 # default number of instances
336 replicaCount: 1
337
338 nodeSelector: {}
339
340 affinity: {}
341
342 # probe configuration parameters
343 liveness:
344   initialDelaySeconds: 10
345   periodSeconds: 10
346   # necessary to disable liveness probe when setting breakpoints
347   # in debugger so K8s doesn't restart unresponsive container
348   enabled: true
349
350 readiness:
351   initialDelaySeconds: 10
352   periodSeconds: 10
353
354 service:
355   type: NodePort
356   name: sdnc
357   portName: sdnc
358   internalPort: 8181
359   internalPort2: 8101
360   internalPort3: 8080
361   internalPort4: 8443
362
363   #port
364   externalPort: 8282
365
366   externalPort2: 8202
367
368   externalPort3: 8280
369
370   externalPort4: 8443
371   nodePort4: 67
372
373   clusterPort: 2550
374   clusterPort2: 2650
375   clusterPort3: 2681
376
377   geoNodePort1: 61
378   geoNodePort2: 62
379   geoNodePort3: 63
380   geoNodePort4: 64
381   geoNodePort5: 65
382   geoNodePort6: 66
383
384 ## Persist data to a persitent volume
385 persistence:
386   enabled: true
387
388   ## A manually managed Persistent Volume and Claim
389   ## Requires persistence.enabled: true
390   ## If defined, PVC must be created manually before volume will be bound
391   # existingClaim:
392   volumeReclaimPolicy: Retain
393
394   ## database data Persistent Volume Storage Class
395   ## If defined, storageClassName: <storageClass>
396   ## If set to "-", storageClassName: "", which disables dynamic provisioning
397   ## If undefined (the default) or set to null, no storageClassName spec is
398   ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
399   ##   GKE, AWS & OpenStack)
400   accessMode: ReadWriteOnce
401   size: 1Gi
402   mountPath: /dockerdata-nfs
403   mountSubPath: sdnc/mdsal
404   mdsalPath: /opt/opendaylight/current/daexim
405
406 ingress:
407   enabled: false
408   service:
409     - baseaddr: "sdnc.api"
410       name: "sdnc"
411       port: 8443
412   config:
413     ssl: "redirect"
414
415 #Resource Limit flavor -By Default using small
416 flavor: small
417 #segregation for different envionment (Small and Large)
418
419 resources:
420   small:
421     limits:
422       cpu: 2
423       memory: 4Gi
424     requests:
425       cpu: 1
426       memory: 2Gi
427   large:
428     limits:
429       cpu: 4
430       memory: 8Gi
431     requests:
432       cpu: 2
433       memory: 4Gi
434   unlimited: {}