58f172387cc06341b6fbccf39a068faa34184c35
[oom.git] / kubernetes / aai / values.yaml
1 # Copyright (c) 2017 Amdocs, Bell Canada
2 # Modifications Copyright (c) 2018 AT&T
3 # Modifications Copyright (c) 2020 Nokia, Orange
4 # Modifications Copyright (c) 2021 Orange
5 # Modifications Copyright © 2023 Nordix Foundation
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #       http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18
19 # Default values for aai.
20 # This is a YAML-formatted file.
21 # Declare variables to be passed into your templates.
22 global: # global defaults
23   nodePortPrefix: 302
24   repository: nexus3.onap.org:10001
25   dockerhubRepository: docker.io
26   busyboxImage: busybox
27
28   readinessImage: onap/oom/readiness:3.0.1
29
30   loggingRepository: docker.elastic.co
31   loggingImage: beats/filebeat:5.5.0
32
33   restartPolicy: Always
34
35   msbEnabled: false
36   centralizedLoggingEnabled: false
37
38   cassandra:
39     #This will instantiate AAI cassandra cluster, default:shared cassandra.
40     localCluster: false
41
42     #Service Name of the cassandra cluster to connect to.
43     #Override it to aai-cassandra if localCluster is enabled.
44     serviceName: cassandra
45
46     #This should be same as shared cassandra instance or if localCluster is enabled
47     #then it should be same as aai-cassandra replicaCount
48     replicas: 3
49
50     #Cassanara login details
51     username: cassandra
52     password: cassandra
53
54   aai:
55     serviceName: aai
56   babel:
57     serviceName: aai-babel
58   aaiElasticsearch:
59     serviceName: aai-elasticsearch
60   resources:
61     serviceName: aai-resources
62   sparkyBe:
63     serviceName: aai-sparky-be
64   modelloader:
65     serviceName: aai-modelloader
66   searchData:
67     serviceName: aai-search-data
68   traversal:
69     serviceName: aai-traversal
70   graphadmin:
71     serviceName: aai-graphadmin
72
73   initContainers:
74     enabled: true
75   # Specifies a list of jobs to be run
76   jobs:
77     # When enabled, it will create the schema based on oxm and edge rules
78     createSchema:
79       enabled: true
80     # When enabled, it will create the widget models via REST API to haproxy
81     updateQueryData:
82       enabled: true
83     #migration using helm hooks
84     migration:
85       enabled: false
86       remoteCassandra:
87         enabled: false
88         storage:
89           backend: cassandra
90           hostname: 10.10.10.10
91           connectionTimeout: 100000
92           cacheSize: 1000000
93           keyConsistent: true
94
95           #If backend is cql or cassandra it should be keyspace name
96           #else backend is hbase it should be hbase table name
97           name: aaigraph
98
99        ## CQL driver specific properties for janusgraph
100        #  cql:
101        #    #Name of the Cassandra Cluster
102        #    cluster: someclustername
103        #    readConsistency: QUORUM
104        #    writeConsistency: QUORUM
105        #    replicationFactor: 3
106        #    localConsistencyForSysOps: true
107
108        ## Cassandra driver specific properties for janusgraph
109           cassandra:
110             #Name of the Cassandra Cluster
111             clusterName: aai-cluster
112             localDataCenter: Pod lab
113             readConsistency: LOCAL_QUORUM
114             writeConsistency: LOCAL_QUORUM
115             replicationFactor: 3
116
117         #storage:
118         #  backend: cassandra
119         #  hostname: somehost1,somehost2,somehost3
120         #  connectionTimeout: 100000
121         #  cacheSize: 1000000
122         #  clusterName: someClusterName
123         #  localDataCenter: someDataCenter
124         #  keyConsistent: true
125         #  #If backend is cql or cassandra it should be keyspace name
126         #  #else backend is hbase it should be hbase table name
127         #  name: your_hbase_table_or_keyspace_name
128
129         ## CQL driver specific properties for janusgraph
130         #  cql:
131         #    #Name of the Cassandra Cluster
132         #    cluster: someclustername
133         #    readConsistency: QUORUM
134         #    writeConsistency: QUORUM
135         #    replicationFactor: 3
136         #    localConsistencyForSysOps: true
137
138         ## Cassandra driver specific properties for janusgraph
139         #  cassandra:
140         #    #Name of the Cassandra Cluster
141         #    cluster: someclustername
142         #    readConsistency: LOCAL_QUORUM
143         #    writeConsistency: LOCAL_QUORUM
144         #    replicationFactor: 3
145
146
147   # Common configuration for resources traversal and graphadmin
148   config:
149     # User information for the admin user in container
150     userId: 1000
151     groupId: 1000
152
153     # Specifies that the cluster connected to a dynamic
154     # cluster being spinned up by kubernetes deployment
155     cluster:
156       cassandra:
157         dynamic: true
158
159     # If cluster.cassandra.dynamic is set to false
160     # Then the following configuration should be uncommented
161     # This is if you are planning to connect to a existing
162     # Cassandra cluster instead of doing the deployment
163     #storage:
164     #  backend: cassandra
165     #  hostname: somehost1,somehost2,somehost3
166     #  connectionTimeout: 100000
167     #  cacheSize: 1000000
168     #  clusterName: someClusterName
169     #  localDataCenter: someDataCenter
170     #  keyConsistent: true
171     #  # If backend is cql or cassandra it should be keyspace name
172     #  # else backend is hbase it should be hbase table name
173     #  name: your_hbase_table_or_keyspace_name
174
175     #  # CQL driver specific properties for janusgraph
176     #  cql:
177     #    # Name of the Cassandra Cluster
178     #    cluster: someclustername
179     #    readConsistency: QUORUM
180     #    writeConsistency: QUORUM
181     #    replicationFactor: 3
182     #    localConsistencyForSysOps: true
183
184     #  # Cassandra driver specific properties for janusgraph
185     #  cassandra:
186     #    # Name of the Cassandra Cluster
187     #    cluster: someclustername
188     #    readConsistency: LOCAL_QUORUM
189     #    writeConsistency: LOCAL_QUORUM
190     #    replicationFactor: 3
191
192     # Specifies if the basic authorization is enabled
193     basic:
194       auth:
195         enabled: true
196         username: AAI
197         passwd: AAI
198
199     # Active spring profiles for the resources microservice
200     # aaf-auth profile will be automatically set if aaf enabled is set to true
201     profiles:
202       active: production,dmaap #,aaf-auth
203
204     # Notification event specific properties
205     notification:
206       eventType: AAI-EVENT
207       domain: dev
208
209     # Schema specific properties that include supported versions of api
210     schema:
211       # Specifies if the connection should be one way ssl, two way ssl or no auth
212       # will be set to no-auth if tls is disabled
213       service:
214         client: no-auth
215       # Specifies which translator to use if it has schema-service, then it will make a rest request to schema service
216       translator:
217         list: schema-service
218       source:
219         # Specifies which folder to take a look at
220         name: onap
221       uri:
222         # Base URI Path of the application
223         base:
224           path: /aai
225       version:
226         # Current version of the REST API
227         api:
228           default: v27
229         # Specifies which version the depth parameter is configurable
230         depth: v11
231         # List of all the supported versions of the API
232         list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27
233         # Specifies from which version related link should appear
234         related:
235           link: v11
236         # Specifies from which version the app root change happened
237         app:
238           root: v11
239         # Specifies from which version the xml namespace changed
240         namespace:
241           change: v12
242         # Specifies from which version the edge label appeared in API
243         edge:
244           label: v12
245
246     # Keystore configuration password and filename
247     keystore:
248       filename: aai_keystore
249       passwd: OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0 # changeit
250
251     # Truststore configuration password and filename
252     truststore:
253       filename: aai_keystore
254       passwd: OBF:1vn21ugu1saj1v9i1v941sar1ugw1vo0 # changeit
255
256     # Specifies a list of files to be included in auth volume
257     auth:
258       files:
259         - aai_keystore
260
261     # Specifies which clients should always default to realtime graph connection
262     realtime:
263       clients: SDNC,MSO,SO,robot-ete
264
265     # Logback debug enabled
266     logback:
267       console:
268         # If enabled, container will print all logback to standard output
269         # This will make debugging much easier but it should only be done
270         # when debugging the issue and changed back as it can affect performance
271         # since when this is enabled, it prints a lot of information to console
272         enabled: false
273
274 aai-babel:
275   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
276 aai-graphadmin:
277   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
278 aai-modelloader:
279   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
280 aai-resources:
281   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
282 aai-schema-service:
283   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
284 aai-sparky-be:
285   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
286 aai-traversal:
287   logConfigMapNamePrefix: '{{ include "common.release" . }}-aai'
288
289 # application image
290 dockerhubRepository: registry.hub.docker.com
291 image: onap/aai-haproxy:1.11.0
292 pullPolicy: Always
293
294 flavor: small
295 flavorOverride: small
296
297 # flag to enable debugging - application support required
298 debugEnabled: false
299
300 # application configuration
301 config:
302   logstashServiceName: log-ls
303   logstashPort: 5044
304
305 # default number of instances
306 replicaCount: 1
307
308 updateStrategy:
309   type: RollingUpdate
310   maxUnavailable: 0
311   maxSurge: 1
312
313 nodeSelector: {}
314
315 affinity: {}
316
317 # HAProxy configuration to block HTTP requests to AAI based on configurable URL patterns
318 haproxy:
319   initContainers:
320     resources:
321       memory: 100Mi
322       cpu: 50m
323   requestBlocking:
324     enabled: false
325     customConfigs: []
326   replicas:
327     aaiResources: 1
328     aaiTraversal: 1
329
330 # probe configuration parameters
331 liveness:
332   initialDelaySeconds: 10
333   periodSeconds: 10
334   # necessary to disable liveness probe when setting breakpoints
335   # in debugger so K8s doesn't restart unresponsive container
336   enabled: true
337
338 #This section is used when localCluster is enabled. AAI will create its own cassandra cluster for its specific use.
339 #Below command will instantiate the aai cassandra instances:
340 #helm deploy demo local/onap --version=4.0.0 --namespace onap --set aai.enabled=true \
341 #                            --set aai.global.cassandra.localCluster=true \
342 #                            --set aai.global.cassandra.serviceName=aai-cassandra
343 cassandra:
344   nameOverride: aai-cassandra
345   serviceAccount:
346     nameOverride: aai-cassandra
347   replicaCount: 3
348   service:
349     name: aai-cassandra
350   persistence:
351     mountSubPath: aai/cassandra
352     enabled: true
353
354 readiness:
355   initialDelaySeconds: 10
356   periodSeconds: 10
357
358 service:
359   type: NodePort
360   portName: http
361   externalPort: 80
362   internalPort: 8080
363   nodePort: 33
364   sessionAffinity: None
365
366 metricsService:
367   type: ClusterIP
368   portName: http-prometheus
369   externalPort: 8448
370   internalPort: 8448
371
372 metrics:
373   serviceMonitor:
374     enabled: false
375     targetPort: 8448
376     path: /metrics
377     basicAuth:
378       enabled: false
379
380     selector:
381       app: '{{ include "common.name" . }}-metrics'
382       chart: '{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}'
383       release: '{{ include "common.release" . }}'
384       heritage: '{{ .Release.Service }}'
385
386     relabelings: []
387
388     metricRelabelings: []
389
390 ingress:
391   enabled: false
392   service:
393     - baseaddr: "aai-api"
394       name: "aai"
395       port: 80
396       config:
397        ssl: "redirect"
398
399 resources:
400   small:
401     limits:
402       cpu: 2
403       memory: 4Gi
404     requests:
405       cpu: 1
406       memory: 1Gi
407   large:
408     limits:
409       cpu: 4
410       memory: 8Gi
411     requests:
412       cpu: 2
413       memory: 2Gi
414   unlimited: {}
415
416 #Pods Service Account
417 serviceAccount:
418   nameOverride: aai
419   roles:
420     - read