/
values.yaml
526 lines (454 loc) · 21.2 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
# @section Docker Registry settings
# @param dgctlDockerRegistry Docker Registry endpoint where On-Premise services' images reside. Format: `host:port`.
dgctlDockerRegistry: ''
# @section Common settings
# @param replicaCount A replica count for the pod.
# @param revisionHistoryLimit Number of replica sets to keep for deployment rollbacks
# @param imagePullSecrets Kubernetes image pull secrets.
# @param nameOverride Base name to use in all the Kubernetes entities deployed by this chart.
# @param fullnameOverride Base fullname to use in all the Kubernetes entities deployed by this chart.
# @param podAnnotations Kubernetes [pod annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/).
# @param podSecurityContext Kubernetes [pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
# @param securityContext Kubernetes [security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/).
# @param nodeSelector Kubernetes [node selectors](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector).
# @param tolerations Kubernetes [tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) settings.
# @param affinity Kubernetes pod [affinity settings](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity).
# @param labels Custom labels to set to Deployment resource.
# @param priorityClassName Kubernetes [Pod Priority](https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/#priorityclass) class name.
# @param preStopDelay Delay in seconds before terminating container.
# @param terminationGracePeriodSeconds Maximum time allowed for graceful shutdown.
replicaCount: 1
revisionHistoryLimit: 1
imagePullSecrets: []
nameOverride: ''
fullnameOverride: ''
podAnnotations: {}
podSecurityContext: {}
securityContext: {}
nodeSelector: {}
tolerations: []
affinity: {}
labels: {}
priorityClassName: ''
preStopDelay: 5
terminationGracePeriodSeconds: 60
# @section Deployment settings
# @param image.repository Repository
# @param image.tag Tag
# @param image.pullPolicy Pull Policy
image:
repository: 2gis-on-premise/navi-back
pullPolicy: IfNotPresent
tag: 7.15.2.4
# @section Navi-Back application settings
# @extra naviback.ecaHost DEPRECATED: Use naviback.ecaUrl. Domain name of the [Traffic Proxy service](https://docs.2gis.com/en/on-premise/traffic-proxy). <br> This URL should be accessible from all the pods within your Kubernetes cluster.
# @extra naviback.ecaUrl URL of the [Traffic Proxy service](https://docs.2gis.com/en/on-premise/traffic-proxy). <br> This URL should be accessible from all the pods within your Kubernetes cluster.
# @extra naviback.forecastHost URL of Traffic forecast service. See the [Traffic Proxy service](https://docs.2gis.com/en/on-premise/traffic-proxy). <br> This URL should be accessible from all the pods within your Kubernetes cluster.
# @skip naviback.appPort
# @param naviback.dmSourcesLimit Size limit for source matrices.
# @param naviback.dmTargetsLimit Size limit for target matrices.
# @param naviback.handlersNumber Number of HTTP handlers.
# @param naviback.maxProcessTime Maximum processing time limit in minutes.
# @param naviback.responseTimelimit Maximum response time limit in minutes.
# @param naviback.requestTimeout Maximum request time limit in minutes.
# @param naviback.timeoutLimitSec Maximum downloading time can be reached after failures.
# @param naviback.timeoutIncrementSec Downloading time increment after failures.
# @param naviback.totalRetryDurationSec Downloading timeout with all failure retries.
# @param naviback.initialRetryIntervalSec Initial timeout for a failure retry.
# @param naviback.dump.result Dump results in logs.
# @param naviback.dump.query Dump queries in logs.
# @param naviback.dump.answer Dump answers in logs.
# @param naviback.logLevel Logging level, one of: Verbose, Info, Warning, Error, Fatal.
# @param naviback.indexFilename Name of index file.
# @param naviback.citiesFilename Name of the cities file on Castle
# @param naviback.sentry.enabled If sending crash dumps to Sentry needed
# @param naviback.sentry.address Sentry URL
# @param naviback.sentry.project Sentry project ID
# @param naviback.sentry.username Sentry username
# @param naviback.sentry.printMessages If outgoing messages needed
# @param naviback.sentry.debug Debugging switch
# @param naviback.sentry.reportPath Local directory to dump
# @param naviback.sentry.handler Handler file location
# @param naviback.castleHost URL of Navi-Castle service, ex: http://navi-castle.svc. <br> This URL should be accessible from all the pods within your Kubernetes cluster.
# @extra naviback.enablePassableBarriers Consider passable barriers.
# @extra naviback.grpcPort GRPC port to serve. Disabled if empty.
# @param naviback.disableUpdates Test switch for disabling runtime background updates
# @extra naviback.indices List of dynamic indices kill switches.
# @skip naviback.indices.carOptions.enabled
# @skip naviback.indices.carOptions.filename
# @skip naviback.indices.countryCarOptions.enabled
# @skip naviback.indices.ctxOptions.enabled
# @skip naviback.indices.entrances.enabled
# @skip naviback.indices.etaCorrectionCores.enabled
# @skip naviback.indices.forecastedSpeeds.enabled
# @skip naviback.indices.forecastedSpeedsIndex.enabled
# @skip naviback.indices.onlineSpeeds.enabled
# @skip naviback.indices.onlineTaxiSpeeds.enabled
# @skip naviback.indices.passZones.enabled
# @skip naviback.indices.projectCarOptions.enabled
# @skip naviback.indices.restrictedTransportIndex.enabled
# @skip naviback.indices.restrictedTransportPlatforms.enabled
# @skip naviback.indices.restrictedTransportRoutes.enabled
# @skip naviback.indices.smatrix.enabled
# @skip naviback.indices.speedCams.enabled
# @skip naviback.indices.speedIndex.enabled
# @skip naviback.indices.taxiReferers.enabled
# @skip naviback.indices.taxiSpeedIndex.enabled
# @skip naviback.indices.tugc2gis.enabled
# @skip naviback.indices.tugc2gisIndex.enabled
# @skip naviback.indices.tugcUsers.enabled
# @skip naviback.indices.tugcUsersIndex.enabled
# @extra naviback.additionalSections Optinal JSON block to be added to config file as-is.
# @extra naviback.simpleNetwork.bicycle Enable simple network for bicycle routing
# @extra naviback.simpleNetwork.car Enable simple network for auto routing
# @param naviback.simpleNetwork.emergency Enable simple network for emergency vehicles routing
# @extra naviback.simpleNetwork.pedestrian Enable simple network for pedestrian routing
# @extra naviback.simpleNetwork.taxi Enable simple network for taxi routing
# @extra naviback.simpleNetwork.truck Enable simple network for truck routing
# @extra naviback.simpleNetwork.scooter Enable simple network for scooters routing
# @skip naviback.attractor
# @extra naviback.attractor.bicycle Enable enhanced attractor for bicycle routing
# @extra naviback.attractor.car Enable enhanced attractor for auto routing
# @extra naviback.attractor.pedestrian Enable enhanced attractor for pedestrian routing
# @extra naviback.attractor.taxi Enable enhanced attractor for taxi routing
# @extra naviback.attractor.truck Enable enhanced attractor for truck routing
# @extra naviback.attractor.scooter Enable enhanced attractor for scooters routing
# @param naviback.bss.enabled Enable sending information on the construction of routes to the business statistics service
# @param naviback.bss.client.serviceRemoteAddress Remote address business statistics service. Requeruired for enable sending information.
# @param naviback.bss.client.messageCountToFlush Message count to flush.
# @param naviback.bss.client.useCompression Enable compression.
# @param naviback.bss.client.packageSizeMaxBytes Package size max bytes.
# @param naviback.bss.client.pendingTransmissionMaxCount Pending transmission max count.
# @extra naviback.reduceEdgesOptimizationFlag Enable optimizations for distance matrix queries processing
# @param naviback.behindSplitter Current instance is behind splitter or not
# @param naviback.overrideConfig Complete config override. For test purposes only.
# @param naviback.rtr.enabled Enable real time restrictions.
# @param naviback.rtr.url URL real time restrictions server.
# @skip rules
naviback:
appPort: 8080
dmSourcesLimit: 1000
dmTargetsLimit: 1000
handlersNumber: 1
maxProcessTime: 600
responseTimelimit: 60
requestTimeout: 60
timeoutLimitSec: 1200
timeoutIncrementSec: 140
totalRetryDurationSec: 2400
initialRetryIntervalSec: 2
dump:
result: false
query: false
answer: false
logLevel: Info
indexFilename: index.json.zip
citiesFilename: cities.conf.zip
sentry:
enabled: false
address: sentry.host
project: navi-back
username: navi-back
printMessages: false
debug: false
reportPath: /tmp/sentry
handler: /usr/sbin/2gis/mosesd/crashpad_handler
castleHost: ''
disableUpdates: false
indices:
carOptions:
enabled: false
filename: carrouting.json
countryCarOptions:
enabled: false
ctxOptions:
enabled: false
entrances:
enabled: false
etaCorrectionCores:
enabled: false
forecastedSpeeds:
enabled: false
forecastedSpeedsIndex:
enabled: false
onlineSpeeds:
enabled: false
onlineTaxiSpeeds:
enabled: false
passZones:
enabled: false
projectCarOptions:
enabled: false
restrictedTransportIndex:
enabled: false
restrictedTransportPlatforms:
enabled: false
restrictedTransportRoutes:
enabled: false
smatrix:
enabled: false
speedCams:
enabled: false
speedIndex:
enabled: false
taxiReferers:
enabled: false
taxiSpeedIndex:
enabled: false
tugc2gis:
enabled: false
tugc2gisIndex:
enabled: false
tugcUsers:
enabled: false
tugcUsersIndex:
enabled: false
simpleNetwork:
emergency: false
attractor: {}
bss:
enabled: false
client:
serviceRemoteAddress: ''
messageCountToFlush: 500
useCompression: true
packageSizeMaxBytes: 1800000
pendingTransmissionMaxCount: 10
behindSplitter: false
overrideConfig: ''
rtr:
enabled: false
url: http://rtr.navi
rules: []
# @section Envoy settings, ignored if not `transmitter.enabled`. Leave with defaults, FOR FUTURE RELEASE.
# @param envoy.image.repository Repository
# @param envoy.image.tag Tag
# @param envoy.image.pullPolicy Pull Policy
envoy:
image:
repository: 2gis-on-premise/envoy
pullPolicy: IfNotPresent
tag: v1.27.0
# @section Frozen data settings. For test purposes only.
# @param frozenData.enabled If use frozen data is enabled.
# @param frozenData.image.repository Repository
# @param frozenData.image.tag Tag
# @param frozenData.image.pullPolicy Pull Policy
# @param frozenData.resources [nullable] Container resources requirements structure.
# @param frozenData.resources.requests.cpu [nullable] CPU request, recommended value `100m`.
# @param frozenData.resources.requests.memory [nullable] Memory request, recommended value `100Mi`.
# @param frozenData.resources.limits.cpu [nullable] CPU limit, recommended value `100m`.
# @param frozenData.resources.limits.memory [nullable] Memory limit, recommended value `100Mi`.
frozenData:
enabled: false
image:
repository: 2gis-on-premise/frozen-data
pullPolicy: Always
tag: ''
resources: {}
# @section Service account settings
# @param serviceAccount.create Specifies whether a service account should be created.
# @param serviceAccount.annotations Annotations to add to the service account.
# @param serviceAccount.name The name of the service account to use. If not set and create is true, a name is generated using the fullname template.
serviceAccount:
create: false
annotations: {}
name: ''
# @section Service settings
# @param service.type Kubernetes [service type](https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types).
# @param service.clusterIP Controls Service cluster IP allocation. Cannot be changed after resource creation.
# @param service.port Service port.
# @param service.grpcPort Service GRPC port if `naviback.grpcPort` enabled.
# @param service.annotations Kubernetes [service annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/).
# @param service.labels Kubernetes [service labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/).
# @param service.headless.enabled Enable creating a secondary headless service
# @param service.headless.annotations Annotations for secondary headless service
service:
type: ClusterIP
clusterIP: ''
port: 80
grpcPort: 50051
annotations: {}
labels:
headless:
enabled: false
annotations: {}
# @section Kubernetes [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) settings
# @param ingress.enabled If Ingress is enabled for the service.
# @param ingress.className Name of the Ingress controller class.
# @param ingress.hosts[0].host Hostname for the Ingress service.
# @param ingress.hosts[0].paths[0].path Path of the host for the Ingress service.
# @param ingress.hosts[0].paths[0].pathType Type of the path for the Ingress service.
# @param ingress.tls TLS configuration
ingress:
enabled: false
className: nginx
hosts:
- host: navi-back.example.com
paths:
- path: /
pathType: Prefix
tls: []
# - hosts:
# - navi-back.example.com
# secretName: secret.tls
# @section Limits
# @param resources [nullable] Container resources requirements structure.
# @param resources.requests.cpu [nullable] CPU request, recommended value `1000m`.
# @param resources.requests.memory [nullable] Memory request, recommended value `2Gi`.
# @param resources.limits.cpu [nullable] CPU limit, recommended value `3000m`.
# @param resources.limits.memory [nullable] Memory limit, recommended value `8Gi`.
resources: {}
# @section Kubernetes [Horizontal Pod Autoscaling](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) settings
# @param hpa.enabled If HPA is enabled for the service.
# @param hpa.minReplicas Lower limit for the number of replicas to which the autoscaler can scale down.
# @param hpa.maxReplicas Upper limit for the number of replicas to which the autoscaler can scale up.
# @param hpa.scaleDownStabilizationWindowSeconds Scale-down window.
# @param hpa.scaleUpStabilizationWindowSeconds Scale-up window.
# @param hpa.targetCPUUtilizationPercentage Target average CPU utilization (represented as a percentage of requested CPU) over all the pods; if not specified the default autoscaling policy will be used.
# @param hpa.targetMemoryUtilizationPercentage Target average memory utilization (represented as a percentage of requested memory) over all the pods; if not specified the default autoscaling policy will be used.
hpa:
enabled: false
minReplicas: 1
maxReplicas: 100
scaleDownStabilizationWindowSeconds: ''
scaleUpStabilizationWindowSeconds: ''
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: ''
# @section Kubernetes [Vertical Pod Autoscaling](https://github.com/kubernetes/autoscaler/blob/master/vertical-pod-autoscaler/README.md) settings
# @param vpa.enabled If VPA is enabled for the service.
# @param vpa.updateMode VPA [update mode](https://github.com/kubernetes/autoscaler/tree/master/vertical-pod-autoscaler#quick-start).
# @extra vpa.minAllowed.cpu Lower limit for the number of CPUs to which the autoscaler can scale down.
# @extra vpa.minAllowed.memory Lower limit for the RAM size to which the autoscaler can scale down.
# @extra vpa.maxAllowed.cpu Upper limit for the number of CPUs to which the autoscaler can scale up.
# @extra vpa.maxAllowed.memory Upper limit for the RAM size to which the autoscaler can scale up.
vpa:
enabled: false
updateMode: Auto
# @section Kubernetes [Pod Disruption Budget](https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#pod-disruption-budgets) settings
# @param pdb.enabled If PDB is enabled for the service.
# @param pdb.minAvailable How many pods must be available after the eviction.
# @param pdb.maxUnavailable How many pods can be unavailable after the eviction.
pdb:
enabled: false
minAvailable: ''
maxUnavailable: 1
# @section Kafka settings for interacting with Distance Matrix Async Service
# @param kafka.enabled If the Kafka is enabled.
# @param kafka.groupId Navi-Back service group identifier.
# @extra kafka.properties Properties as supported by librdkafka. Refer to inline comments for details.
# @skip kafka.properties.bootstrap.servers
# @skip kafka.properties.security.protocol
# @param kafka.fileProperties As kafka.properties, but kept in a file, which passed to application as a filename. Refer to inline comments for details.
# @extra kafka.distanceMatrix **Settings for interacting with Distance Matrix Async service.**
# @param kafka.distanceMatrix.taskTopic Name of the topic for receiving new tasks from Distance Matrix Async API.
# @param kafka.distanceMatrix.cancelTopic Name of the topic for canceling or receiving information about finished tasks.
# @param kafka.distanceMatrix.statusTopic Name of the topic for receiving task status information.
# @param kafka.distanceMatrix.updateTaskStatusPeriodSec Update period for task statuses.
# @param kafka.distanceMatrix.messageExpiredPeriodSec Update period for task cancellations.
# @param kafka.distanceMatrix.requestDownloadTimeoutSec Timeout for downloading request data.
# @param kafka.distanceMatrix.responseUploadTimeoutSec Timeout for uploading response data.
kafka:
enabled: false
groupId: navi_back
properties:
bootstrap.servers: kafka.host:9092
security.protocol: PLAINTEXT
fileProperties: {}
distanceMatrix:
taskTopic: task_topic
cancelTopic: cancel_topic
statusTopic: status_topic
updateTaskStatusPeriodSec: 120
messageExpiredPeriodSec: 3600
requestDownloadTimeoutSec: 20
responseUploadTimeoutSec: 40
# Kafka properties for common use-cases:
#
# Note that <Set-by-CI from user.p12> means that actual content passed from
# file user.p12 with --set-file (especially binary data), e.g.:
#
# $ helm install navi-back . --set-file 'kafka.fileProperties.ssl\.keystore\.location=user.p12'
#
# 1. SSL authentication with key file protected with password 123:
#
# properties:
# bootstrap.servers: kafka.host:9092
# security.protocol: SSL
# ssl.key.password: '123'
# fileProperties:
# ssl.ca.location: '<Set-by-CI from ca.crt>'
# ssl.certificate.location: '<Set-by-CI from user.crt>'
# ssl.key.location: '<Set-by-CI from user.pem>'
#
# 2. login/password SASL as test-username/123:
#
# properties:
# bootstrap.servers: kafka.host:9092
# security.protocol: SASL_PLAINTEXT
# sasl.mechanism: SCRAM-SHA-512
# sasl.username: test-username
# sasl.password: '123'
#
# 3. Unauthenticated:
#
# properties:
# bootstrap.servers: kafka.host:9092
# security.protocol: PLAINTEXT
# @section S3-compatible storage settings for interacting with Distance Matrix Async Service
# @param s3.enabled if S3 storage is enabled.
# @param s3.host S3 endpoint, ex: async-matrix-s3.host.
# @param s3.bucket S3 bucket name.
# @param s3.accessKey S3 access key for accessing the bucket.
# @param s3.secretKey S3 secret key for accessing the bucket.
s3:
enabled: false
host: ''
bucket: ''
accessKey: ''
secretKey: ''
# @section Settings for attractor connection. Leave with defaults, FOR FUTURE RELEASE.
# @param transmitter.enabled if attractor connection required
# @param transmitter.type connection type one of: grpc, grpc-async, grpc-stream, ws, ws-async
# @param transmitter.host attractor service
# @param transmitter.port attractor port
# @param transmitter.responseTimeoutMs response waiting timeout
transmitter:
enabled: false
type: grpc-async-stream
host: http://navi-attractor.host
port: 50051
responseTimeoutMs: 100
# @section Back-end and attractor group properties. Leave with defaults, FOR FUTURE RELEASE.
# @param dataGroup.enabled if grouping enabled
# @param dataGroup.prefix common prefix for the group used for identifiers
# @param dataGroup.timestamp data timestamp the group is running on
dataGroup:
enabled: false
prefix: sampleGroup
timestamp: no-default
# @section License settings
# @param license.url Address of the License service v2. Ex: https://license.svc
# @param license.notSupported Excludes the configuration block if true, for old versions only.
license:
url: ''
notSupported: false
# @section Metrics aggregator container. Leave with defaults, FOR FUTURE RELEASE.
# @param metrics.enabled Enable metrics container and scrape annotations
# @param metrics.image.repository Repository
# @param metrics.image.tag Tag
# @param metrics.image.pullPolicy Pull Policy
# @param metrics.port Port of container.
# @param metrics.resources [nullable] Container resources requirements structure.
# @param metrics.resources.requests.cpu [nullable] CPU request, recommended value `10m`.
# @extra metrics.resources.requests.memory [nullable] Memory request, recommended value `10Mi`.
# @extra metrics.resources.limits.cpu [nullable] CPU limit, recommended value `100m`.
# @extra metrics.resources.limits.memory [nullable] Memory limit, recommended value `10Mi`.
metrics:
enabled: false
image:
repository: 2gis-on-premise/metrics-aggregator
pullPolicy: IfNotPresent
tag: ''
port: 9090
resources: {}