[AAI] Add variables for HEAP and METASPACE sizes
[oom.git] / kubernetes / aai / components / aai-traversal / values.yaml
1 # Copyright (c) 2018 Amdocs, Bell Canada, AT&T
2 # Modifications Copyright (c) 2020 Nokia
3 # Modifications Copyright (c) 2021 Orange
4 # Modifications Copyright © 2023 Nordix Foundation
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 #       http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17
18 # Default values for traversal.
19 # This is a YAML-formatted file.
20 # Declare variables to be passed into your templates.
21 global: # global defaults
22   nodePortPrefix: 302
23
24   cassandra:
25     #Service Name of the cassandra cluster to connect to.
26     #Override it to aai-cassandra if localCluster is enabled.
27     serviceName: cassandra
28
29   # Specifies a list of jobs to be run
30   jobs:
31     # When enabled, it will create the schema based on oxm and edge rules
32     createSchema:
33       enabled: true
34     # When enabled, it will create the widget models via REST API to haproxy
35     updateQueryData:
36       enabled: true
37     #migration using helm hooks
38     migration:
39       enabled: false
40
41   # Common configuration for resources traversal and graphadmin
42   config:
43     # User information for the admin user in container
44     userId: 1000
45     groupId: 1000
46
47     # Specifies that the cluster connected to a dynamic
48     # cluster being spinned up by kubernetes deployment
49     cluster:
50       cassandra:
51         dynamic: true
52
53     # Specifies if the basic authorization is enabled
54     basic:
55       auth:
56         enabled: true
57         username: AAI
58         passwd: AAI
59
60     # Active spring profiles for the resources microservice
61     profiles:
62       active: production,dmaap
63
64     # Notification event specific properties
65     notification:
66       eventType: AAI-EVENT
67       domain: dev
68
69     # Schema specific properties that include supported versions of api
70     schema:
71       # Specifies if the connection should be one way ssl, two way ssl or no auth
72       service:
73         client: no-auth
74       # Specifies which translator to use if it has schema-service, then it will make a rest request to schema service
75       translator:
76         list: schema-service
77       source:
78         # Specifies which folder to take a look at
79         name: onap
80       uri:
81         # Base URI Path of the application
82         base:
83           path: /aai
84       version:
85         # Current version of the REST API
86         api:
87           default: v27
88         # Specifies which version the depth parameter is configurable
89         depth: v11
90         # List of all the supported versions of the API
91         list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27
92         # Specifies from which version related link should appear
93         related:
94           link: v11
95         # Specifies from which version the app root change happened
96         app:
97           root: v11
98         # Specifies from which version the xml namespace changed
99         namespace:
100           change: v12
101         # Specifies from which version the edge label appeared in API
102         edge:
103           label: v12
104
105     # Specifies which clients should always default to realtime graph connection
106     realtime:
107       clients: SDNC,MSO,SO,robot-ete
108
109 # application image
110 image: onap/aai-traversal:1.11.2
111 pullPolicy: Always
112 restartPolicy: Always
113 flavor: small
114 flavorOverride: small
115 # the minimum number of seconds that a newly created Pod should be ready
116 minReadySeconds: 30
117 updateStrategy:
118   type: RollingUpdate
119   # The number of pods that can be unavailable during the update process
120   maxUnavailable: 0
121   # The number of pods that can be created above the desired amount of pods during an update
122   maxSurge: 1
123
124 api_list:
125   - 11
126   - 12
127   - 13
128   - 14
129   - 15
130   - 16
131   - 17
132   - 18
133   - 19
134
135 aai_enpoints:
136   - name: aai-generic-query
137     url: search/generic-query
138   - name: aai-nodes-query
139     url: search/nodes-query
140   - name: aai-nquery
141     url: query
142
143 # application configuration
144 config:
145
146   # configure keycloak according to your environment.
147   # don't forget to add keycloak in active profiles above (global.config.profiles)
148   keycloak:
149     host: keycloak.your.domain
150     port: 8180
151     # Specifies a set of users, credentials, roles, and groups
152     realm: aai-traversal
153     # Used by any client application for enabling fine-grained authorization for their protected resources
154     resource: aai-traversal-app
155     # If set to true, additional criteria will be added into traversal query to returns all the vertices that match
156     # the data-owner property with the given role to the user in keycloak
157     multiTenancy:
158       enabled: true
159
160   # Specifies timeout information such as application specific and limits
161   timeout:
162     # If set to true application will timeout for queries taking longer than limit
163     enabled: true
164     # Specifies which apps (X-FromAppId) header should get overridden and (-1) no timeout
165     appspecific: JUNITTESTAPP1,1|JUNITTESTAPP2,-1|DCAE-CCS,-1|DCAES,-1|AAI-FILEGEN-GFPIP,-1
166     # Specifies how long should it wait before timing out the REST request
167     limit: 180000
168
169   # environment variables added to the launch of the image in deployment
170   env:
171     MIN_HEAP_SIZE: "512m"
172     MAX_HEAP_SIZE: "1024m"
173     MAX_METASPACE_SIZE: "512m"
174
175   # Disables the updateQueryData script to run as part of traversal
176   disableUpdateQuery: true
177
178   # Override of the DSL Timeout Limit
179   dslOverride: 'ZV4V7E3N77SKIB6MR9MHQ6M4P6Q99Z7M76RBODA'
180
181   dsl:
182     # Dsl timeout configuration
183     timeout:
184       # Whether or not the dsl is enabled
185       enabled: true
186       # Default time limit of the DSL query
187       limit: 150000
188       # App Specific Timeout Limit for each of the X-FromAppId
189       appspecific:
190         - JUNITTESTAPP1,1
191         - JUNITTESTAPP2,-1
192         - AAI-TOOLS,-1
193         - DCAE-CCS,1200000
194         - DCAES,1200000
195         - VPESAT,-1
196         - AAI-CACHER,-1
197         - VidAaiController,300000
198         - AAI-UI,180000
199
200 persistence:
201   mountPath: /dockerdata-nfs
202   mountSubPath: aai/aai-traversal
203
204 # default number of instances
205 replicaCount: 1
206
207 nodeSelector: {}
208
209 affinity: {}
210
211 # probe configuration parameters
212 liveness:
213   initialDelaySeconds: 60
214   periodSeconds: 60
215   # necessary to disable liveness probe when setting breakpoints
216   # in debugger so K8s doesn't restart unresponsive container
217   enabled: false
218
219 readiness:
220   initialDelaySeconds: 10
221   periodSeconds: 10
222
223 service:
224   type: ClusterIP
225   portName: http
226   internalPort: 8446
227   portName2: tcp-5005
228   internalPort2: 5005
229   portName3: http-traversal
230   internalPort3: 8448
231   terminationGracePeriodSeconds: 120
232   sessionAffinity: None
233
234 ingress:
235   enabled: false
236
237 serviceMesh:
238   authorizationPolicy:
239     authorizedPrincipals:
240       - serviceAccount: aai-read
241       - serviceAccount: consul-read
242
243 # To make logback capping values configurable
244 logback:
245   logToFileEnabled: true
246   maxHistory: 7
247   totalSizeCap: 6GB
248   queueSize: 1000
249
250 accessLogback:
251   logToFileEnabled: true
252   maxHistory: 7
253   totalSizeCap: 6GB
254
255 # Configure resource requests and limits
256 # ref: http://kubernetes.io/docs/user-guide/compute-resources/
257 resources:
258   small:
259     limits:
260       cpu: 2
261       memory: 4Gi
262     requests:
263       cpu: 1
264       memory: 3Gi
265   large:
266     limits:
267       cpu: 4
268       memory: 8Gi
269     requests:
270       cpu: 2
271       memory: 4Gi
272   unlimited: {}
273
274 metrics:
275   serviceMonitor:
276     enabled: false
277     targetPort: 8448
278     path: /prometheus
279     basicAuth:
280       enabled: false
281       externalSecretName: mysecretname
282       externalSecretUserKey: login
283       externalSecretPasswordKey: password
284
285     ## Namespace in which Prometheus is running
286     ##
287     # namespace: monitoring
288
289     ## Interval at which metrics should be scraped.
290     ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
291     ##
292     #interval: 30s
293
294     ## Timeout after which the scrape is ended
295     ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint
296     ##
297     # scrapeTimeout: 10s
298
299     ## ServiceMonitor selector labels
300     ## ref: https://github.com/bitnami/charts/tree/master/bitnami/prometheus-operator#prometheus-configuration
301     ##
302     selector:
303       app: '{{ include "common.name" . }}'
304       chart: '{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}'
305       release: '{{ include "common.release" . }}'
306       heritage: '{{ .Release.Service }}'
307
308     ## RelabelConfigs to apply to samples before scraping
309     ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#relabelconfig
310     ## Value is evalued as a template
311     ##
312     relabelings: []
313
314     ## MetricRelabelConfigs to apply to samples before ingestion
315     ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#relabelconfig
316     ## Value is evalued as a template
317     ##
318     metricRelabelings: []
319     #  - sourceLabels:
320     #      - "__name__"
321     #    targetLabel: "__name__"
322     #    action: replace
323     #    regex: '(.*)'
324     #    replacement: 'example_prefix_$1'
325
326 #Pods Service Account
327 serviceAccount:
328   nameOverride: aai-traversal
329   roles:
330     - read
331
332 #Log configuration
333 log:
334   path: /var/log/onap
335 logConfigMapNamePrefix: '{{ include "common.fullname" . }}'