diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5e57b51379..e38bd086be 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,108 @@
# CHANGELOG
+## v1.7.15
+
+### Docker images
+
+
+
+ component |
+ Docker pull |
+
+
+ Agent NGT |
+
+ docker pull vdaas/vald-agent-ngt:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-agent-ngt:v1.7.15
+ |
+
+
+ Agent sidecar |
+
+ docker pull vdaas/vald-agent-sidecar:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-agent-sidecar:v1.7.15
+ |
+
+
+ Discoverers |
+
+ docker pull vdaas/vald-discoverer-k8s:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-discoverer-k8s:v1.7.15
+ |
+
+
+ Gateways |
+
+ docker pull vdaas/vald-lb-gateway:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-lb-gateway:v1.7.15
+ docker pull vdaas/vald-filter-gateway:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-filter-gateway:v1.7.15
+ |
+
+
+ Index Manager |
+
+ docker pull vdaas/vald-manager-index:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-manager-index:v1.7.15
+ |
+
+
+ Helm Operator |
+
+ docker pull vdaas/vald-helm-operator:v1.7.15
+ docker pull ghcr.io/vdaas/vald/vald-helm-operator:v1.7.15
+ |
+
+
+
+### Documents
+
+- [GoDoc](https://pkg.go.dev/github.com/vdaas/vald@v1.7.15)
+- [Helm Chart Reference](https://github.com/vdaas/vald/blob/v1.7.15/charts/vald/README.md)
+- [Helm Operator Chart Reference](https://github.com/vdaas/vald/blob/v1.7.15/charts/vald-helm-operator/README.md)
+
+### Changes
+
+:sparkles: New feature
+
+- Add affinity to jobTemplate [#2758](https://github.com/vdaas/vald/pull/2758) ([#2760](https://github.com/vdaas/vald/pull/2760))
+- feat: Implement delete expired index job [#2702](https://github.com/vdaas/vald/pull/2702) ([#2722](https://github.com/vdaas/vald/pull/2722))
+- Add QUIC support [#1771](https://github.com/vdaas/vald/pull/1771)
+- add example-client docker image [#2705](https://github.com/vdaas/vald/pull/2705) ([#2709](https://github.com/vdaas/vald/pull/2709))
+
+:recycle: Refactor
+
+- refactor dockerfiles and update gitattributes [#2743](https://github.com/vdaas/vald/pull/2743) ([#2745](https://github.com/vdaas/vald/pull/2745))
+
+:bug: Bugfix
+
+- :bug: Fix update deps workflow: buf is not found [#2737](https://github.com/vdaas/vald/pull/2737) ([#2739](https://github.com/vdaas/vald/pull/2739))
+- [BUGFIX] resolve agent GetGraphStatistics API double-free error problem [#2733](https://github.com/vdaas/vald/pull/2733)
+- fix rust-analyzer [#2731](https://github.com/vdaas/vald/pull/2731) ([#2732](https://github.com/vdaas/vald/pull/2732))
+- Fix installation command for arm64 [#2729](https://github.com/vdaas/vald/pull/2729) ([#2730](https://github.com/vdaas/vald/pull/2730))
+- fix not found error [#2726](https://github.com/vdaas/vald/pull/2726) ([#2727](https://github.com/vdaas/vald/pull/2727))
+- Fix bind DOCKER_OPTS option [#2718](https://github.com/vdaas/vald/pull/2718) ([#2719](https://github.com/vdaas/vald/pull/2719))
+
+:pencil2: Document
+
+- Update README.md [#2724](https://github.com/vdaas/vald/pull/2724) ([#2725](https://github.com/vdaas/vald/pull/2725))
+- :pencil: Remove clj link [#2710](https://github.com/vdaas/vald/pull/2710) ([#2714](https://github.com/vdaas/vald/pull/2714))
+
+:green_heart: CI
+
+- :green_heart: Multi-PF build for example-client [#2713](https://github.com/vdaas/vald/pull/2713)
+- Add auto deps version update workflow [#2707](https://github.com/vdaas/vald/pull/2707) ([#2717](https://github.com/vdaas/vald/pull/2717))
+
+:arrow_up: Update dependencies
+
+- :green_heart: use ci-container for update deps cron job [#2744](https://github.com/vdaas/vald/pull/2744) ([#2748](https://github.com/vdaas/vald/pull/2748))
+- update ubuntu version for devcontainer [#2736](https://github.com/vdaas/vald/pull/2736) ([#2750](https://github.com/vdaas/vald/pull/2750))
+- :arrow_up: update versions/BUF_VERSION [#2703](https://github.com/vdaas/vald/pull/2703) ([#2704](https://github.com/vdaas/vald/pull/2704))
+
+:handshake: Contributor
+
+- docs: add highpon as a contributor for code [#2721](https://github.com/vdaas/vald/pull/2721)
+
## v1.7.14
### Docker images
diff --git a/charts/vald-benchmark-operator/Chart.yaml b/charts/vald-benchmark-operator/Chart.yaml
index 173a2d23ec..7cae7f66bd 100644
--- a/charts/vald-benchmark-operator/Chart.yaml
+++ b/charts/vald-benchmark-operator/Chart.yaml
@@ -32,7 +32,7 @@ appVersion: "1.16.0"
apiVersion: v2
name: vald-benchmark-operator
-version: v1.7.14
+version: v1.7.15
description: A benchmark operator for benchmarking the Vald cluster.
type: application
keywords:
diff --git a/charts/vald-benchmark-operator/README.md b/charts/vald-benchmark-operator/README.md
index b1fd9ff127..8c96f04d32 100644
--- a/charts/vald-benchmark-operator/README.md
+++ b/charts/vald-benchmark-operator/README.md
@@ -2,7 +2,7 @@
This is a Helm chart to install `vald-benchmark-operator`.
-Current chart version is `v1.7.14`
+Current chart version is `v1.7.15`
## Table of Contents
@@ -28,7 +28,7 @@ Run the following command to install the chart,
| env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}},{"name":"JOB_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
| image.pullPolicy | string | `"Always"` | image pull policy |
| image.repository | string | `"vdaas/vald-benchmark-operator"` | job image repository |
-| image.tag | string | `"v1.7.14"` | image tag for job docker image |
+| image.tag | string | `"v1.7.15"` | image tag for job docker image |
| job.client_config.addrs | list | `[]` | gRPC client addresses |
| job.client_config.backoff.backoff_factor | float | `1.1` | gRPC client backoff factor |
| job.client_config.backoff.backoff_time_limit | string | `"5s"` | gRPC client backoff time limit |
@@ -96,7 +96,7 @@ Run the following command to install the chart,
| job.client_config.tls.key | string | `"/path/to/key"` | TLS key path |
| job.image.pullPolicy | string | `"Always"` | |
| job.image.repository | string | `"vdaas/vald-benchmark-job"` | |
-| job.image.tag | string | `"v1.7.14"` | |
+| job.image.tag | string | `"v1.7.15"` | |
| logging.format | string | `"raw"` | logging format. logging format must be `raw` or `json` |
| logging.level | string | `"debug"` | logging level. logging level must be `debug`, `info`, `warn`, `error` or `fatal`. |
| logging.logger | string | `"glg"` | logger name. currently logger must be `glg` or `zap`. |
diff --git a/charts/vald-benchmark-operator/values.yaml b/charts/vald-benchmark-operator/values.yaml
index 1db0b66bdf..ae543e7f73 100644
--- a/charts/vald-benchmark-operator/values.yaml
+++ b/charts/vald-benchmark-operator/values.yaml
@@ -33,7 +33,7 @@ image:
repository: vdaas/vald-benchmark-operator
# @schema {"name": "image.tag", "type": "string"}
# image.tag -- image tag
- tag: v1.7.14
+ tag: v1.7.15
# @schema {"name": "image.pullPolicy", "type": "string", "enum": ["Always", "Never", "IfNotPresent"]}
# image.pullPolicy -- image pull policy
pullPolicy: Always
@@ -46,7 +46,7 @@ job:
repository: vdaas/vald-benchmark-job
# @schema {"name": "job.image.tag", "type": "string"}
# image.tag -- image tag for job docker image
- tag: v1.7.14
+ tag: v1.7.15
# @schema {"name": "job.image.pullPolicy", "type": "string", "enum": ["Always", "Never", "IfNotPresent"]}
# image.pullPolicy -- image pull policy
pullPolicy: Always
diff --git a/charts/vald-helm-operator/Chart.yaml b/charts/vald-helm-operator/Chart.yaml
index 3bab0138da..c8a8b78a9e 100644
--- a/charts/vald-helm-operator/Chart.yaml
+++ b/charts/vald-helm-operator/Chart.yaml
@@ -16,7 +16,7 @@
apiVersion: v2
name: vald-helm-operator
-version: v1.7.14
+version: v1.7.15
description: A Helm chart for vald-helm-operator
type: application
keywords:
diff --git a/charts/vald-helm-operator/README.md b/charts/vald-helm-operator/README.md
index 76f3b9c6eb..1f5e2bd40f 100644
--- a/charts/vald-helm-operator/README.md
+++ b/charts/vald-helm-operator/README.md
@@ -2,7 +2,7 @@
This is a Helm chart to install vald-helm-operator.
-Current chart version is `v1.7.14`
+Current chart version is `v1.7.15`
## Table of Contents
@@ -26,13 +26,13 @@ Run the following command to install the chart,
Please upgrade the CRDs first because Helm doesn't have a support to upgrade CRDs.
- $ kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/v1.7.14/charts/vald-helm-operator/crds/valdrelease.yaml
- $ kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/v1.7.14/charts/vald-helm-operator/crds/valdhelmoperatorrelease.yaml
+ $ kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/v1.7.15/charts/vald-helm-operator/crds/valdrelease.yaml
+ $ kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/v1.7.15/charts/vald-helm-operator/crds/valdhelmoperatorrelease.yaml
After upgrading CRDs, you can upgrade the operator.
If you're using `valdhelmoperatorrelease` (or `vhor`) resource, please update the `spec.image.tag` field of it.
- $ kubectl patch vhor vhor-release -p '{"spec":{"image":{"tag":"v1.7.14"}}}'
+ $ kubectl patch vhor vhor-release -p '{"spec":{"image":{"tag":"v1.7.15"}}}'
On the other hand, please update the operator's deployment manually.
@@ -79,7 +79,7 @@ spec: {}
| healthPort | int | `8081` | port of health endpoint |
| image.pullPolicy | string | `"Always"` | image pull policy |
| image.repository | string | `"vdaas/vald-helm-operator"` | image repository |
-| image.tag | string | `"v1.7.14"` | image tag |
+| image.tag | string | `"v1.7.15"` | image tag |
| leaderElectionID | string | `"vald-helm-operator"` | name of the configmap that is used for holding the leader lock. |
| livenessProbe.enabled | bool | `true` | enable liveness probe. |
| livenessProbe.failureThreshold | int | `2` | liveness probe failure threshold |
diff --git a/charts/vald-helm-operator/values.yaml b/charts/vald-helm-operator/values.yaml
index 66c5d7ca67..0dbea079fa 100644
--- a/charts/vald-helm-operator/values.yaml
+++ b/charts/vald-helm-operator/values.yaml
@@ -27,7 +27,7 @@ image:
repository: vdaas/vald-helm-operator
# @schema {"name": "image.tag", "type": "string"}
# image.tag -- image tag
- tag: v1.7.14
+ tag: v1.7.15
# @schema {"name": "image.pullPolicy", "type": "string", "enum": ["Always", "Never", "IfNotPresent"]}
# image.pullPolicy -- image pull policy
pullPolicy: Always
diff --git a/charts/vald-readreplica/Chart.yaml b/charts/vald-readreplica/Chart.yaml
index 1446739f92..d7c594688a 100644
--- a/charts/vald-readreplica/Chart.yaml
+++ b/charts/vald-readreplica/Chart.yaml
@@ -16,7 +16,7 @@
apiVersion: v2
name: vald-readreplica
-version: v1.7.14
+version: v1.7.15
description: A helm chart for readreplica add-on
type: application
keywords:
diff --git a/charts/vald-readreplica/README.md b/charts/vald-readreplica/README.md
index b95d3ad533..ea8339fea6 100644
--- a/charts/vald-readreplica/README.md
+++ b/charts/vald-readreplica/README.md
@@ -4,7 +4,7 @@
This is a Helm chart to install Vald readreplica components.
-Current chart version is `v1.7.14`
+Current chart version is `v1.7.15`
## Install
diff --git a/charts/vald/Chart.yaml b/charts/vald/Chart.yaml
index 7f97cc085a..cc80f3d80f 100644
--- a/charts/vald/Chart.yaml
+++ b/charts/vald/Chart.yaml
@@ -16,7 +16,7 @@
apiVersion: v2
name: vald
-version: v1.7.14
+version: v1.7.15
description: A distributed high scalable & high-speed approximate nearest neighbor search engine
type: application
keywords:
diff --git a/charts/vald/README.md b/charts/vald/README.md
index 82d296183a..1dd7e0b4d0 100644
--- a/charts/vald/README.md
+++ b/charts/vald/README.md
@@ -2,7 +2,7 @@
This is a Helm chart to install Vald components.
-Current chart version is `v1.7.14`
+Current chart version is `v1.7.15`
## Table of Contents
@@ -44,1043 +44,1067 @@ Run the following command to install the chart,
### Parameters
-| Key | Type | Default | Description |
-| ------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| agent.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| agent.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| agent.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| agent.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| agent.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-agent"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| agent.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| agent.algorithm | string | `"ngt"` | agent algorithm type. it should be `ngt` or `faiss`. |
-| agent.annotations | object | `{}` | deployment annotations |
-| agent.clusterRole.enabled | bool | `true` | creates clusterRole resource |
-| agent.clusterRole.name | string | `"agent"` | name of clusterRole |
-| agent.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
-| agent.clusterRoleBinding.name | string | `"agent"` | name of clusterRoleBinding |
-| agent.enabled | bool | `true` | agent enabled |
-| agent.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| agent.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| agent.faiss.auto_index_check_duration | string | `"30m"` | check duration of automatic indexing |
-| agent.faiss.auto_index_duration_limit | string | `"24h"` | limit duration of automatic indexing |
-| agent.faiss.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
-| agent.faiss.auto_save_index_duration | string | `"35m"` | duration of automatic save index |
-| agent.faiss.dimension | int | `4096` | vector dimension |
-| agent.faiss.enable_copy_on_write | bool | `false` | enable copy on write saving for more stable backup |
-| agent.faiss.enable_in_memory_mode | bool | `true` | in-memory mode enabled |
-| agent.faiss.enable_proactive_gc | bool | `false` | enable proactive GC call for reducing heap memory allocation |
-| agent.faiss.index_path | string | `""` | path to index data |
-| agent.faiss.initial_delay_max_duration | string | `"3m"` | maximum duration for initial delay |
-| agent.faiss.kvsdb.concurrency | int | `6` | kvsdb processing concurrency |
-| agent.faiss.load_index_timeout_factor | string | `"1ms"` | a factor of load index timeout. timeout duration will be calculated by (index count to be loaded) \* (factor). |
-| agent.faiss.m | int | `8` | m |
-| agent.faiss.max_load_index_timeout | string | `"10m"` | maximum duration of load index timeout |
-| agent.faiss.method_type | string | `"ivfpq"` | method type it should be `ivfpq` or `binaryindex` |
-| agent.faiss.metric_type | string | `"l2"` | metric type it should be `innerproduct` or `l2` |
-| agent.faiss.min_load_index_timeout | string | `"3m"` | minimum duration of load index timeout |
-| agent.faiss.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of myself |
-| agent.faiss.nbits_per_idx | int | `8` | nbits_per_idx |
-| agent.faiss.nlist | int | `100` | nlist |
-| agent.faiss.pod_name | string | `"_MY_POD_NAME_"` | pod name of myself |
-| agent.faiss.vqueue.delete_buffer_pool_size | int | `5000` | delete slice pool buffer size |
-| agent.faiss.vqueue.insert_buffer_pool_size | int | `10000` | insert slice pool buffer size |
-| agent.hpa.enabled | bool | `false` | HPA enabled |
-| agent.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| agent.image.pullPolicy | string | `"Always"` | image pull policy |
-| agent.image.repository | string | `"vdaas/vald-agent-ngt"` | image repository |
-| agent.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| agent.initContainers | list | `[]` | init containers |
-| agent.kind | string | `"StatefulSet"` | deployment kind: Deployment, DaemonSet or StatefulSet |
-| agent.logging | object | `{}` | logging config (overrides defaults.logging) |
-| agent.maxReplicas | int | `300` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| agent.maxUnavailable | string | `"1"` | maximum number of unavailable replicas |
-| agent.minReplicas | int | `20` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| agent.name | string | `"vald-agent"` | name of agent deployment |
-| agent.ngt.auto_create_index_pool_size | int | `16` | batch process pool size of automatic create index operation |
-| agent.ngt.auto_index_check_duration | string | `"30m"` | check duration of automatic indexing |
-| agent.ngt.auto_index_duration_limit | string | `"24h"` | limit duration of automatic indexing |
-| agent.ngt.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
-| agent.ngt.auto_save_index_duration | string | `"35m"` | duration of automatic save index |
-| agent.ngt.broken_index_history_limit | int | `0` | maximum number of broken index generations to backup |
-| agent.ngt.bulk_insert_chunk_size | int | `10` | bulk insert chunk size |
-| agent.ngt.creation_edge_size | int | `50` | creation edge size |
-| agent.ngt.default_epsilon | float | `0.05` | default epsilon used for search |
-| agent.ngt.default_pool_size | int | `16` | default create index batch pool size |
-| agent.ngt.default_radius | float | `-1` | default radius used for search |
-| agent.ngt.dimension | int | `4096` | vector dimension |
-| agent.ngt.distance_type | string | `"l2"` | distance type. it should be `l1`, `l2`, `angle`, `hamming`, `cosine`,`poincare`, `lorentz`, `jaccard`, `sparsejaccard`, `normalizedangle` or `normalizedcosine` or `innerproduct`. for further details about NGT libraries supported distance is https://github.com/yahoojapan/NGT/wiki/Command-Quick-Reference and vald agent's supported NGT distance type is https://pkg.go.dev/github.com/vdaas/vald/internal/core/algorithm/ngt#pkg-constants |
-| agent.ngt.enable_copy_on_write | bool | `false` | enable copy on write saving for more stable backup |
-| agent.ngt.enable_export_index_info_to_k8s | bool | `false` | enable export index info to k8s |
-| agent.ngt.enable_in_memory_mode | bool | `true` | in-memory mode enabled |
-| agent.ngt.enable_proactive_gc | bool | `false` | enable proactive GC call for reducing heap memory allocation |
-| agent.ngt.enable_statistics | bool | `false` | enable index statistics loading |
-| agent.ngt.error_buffer_limit | int | `10` | maximum number of core ngt error buffer pool size limit |
-| agent.ngt.export_index_info_duration | string | `"1m"` | duration of exporting index info |
-| agent.ngt.index_path | string | `""` | path to index data |
-| agent.ngt.initial_delay_max_duration | string | `"3m"` | maximum duration for initial delay |
-| agent.ngt.kvsdb.concurrency | int | `6` | kvsdb processing concurrency |
-| agent.ngt.load_index_timeout_factor | string | `"1ms"` | a factor of load index timeout. timeout duration will be calculated by (index count to be loaded) \* (factor). |
-| agent.ngt.max_load_index_timeout | string | `"10m"` | maximum duration of load index timeout |
-| agent.ngt.min_load_index_timeout | string | `"3m"` | minimum duration of load index timeout |
-| agent.ngt.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of myself |
-| agent.ngt.object_type | string | `"float"` | object type. it should be `float` or `uint8` or `float16`. for further details: https://github.com/yahoojapan/NGT/wiki/Command-Quick-Reference |
-| agent.ngt.pod_name | string | `"_MY_POD_NAME_"` | pod name of myself |
-| agent.ngt.search_edge_size | int | `50` | search edge size |
-| agent.ngt.vqueue.delete_buffer_pool_size | int | `5000` | delete slice pool buffer size |
-| agent.ngt.vqueue.insert_buffer_pool_size | int | `10000` | insert slice pool buffer size |
-| agent.nodeName | string | `""` | node name |
-| agent.nodeSelector | object | `{}` | node selector |
-| agent.observability | object | `{"otlp":{"attribute":{"service_name":"vald-agent"}}}` | observability config (overrides defaults.observability) |
-| agent.persistentVolume.accessMode | string | `"ReadWriteOncePod"` | agent pod storage accessMode |
-| agent.persistentVolume.enabled | bool | `false` | enables PVC. It is required to enable if agent pod's file store functionality is enabled with non in-memory mode |
-| agent.persistentVolume.mountPropagation | string | `"None"` | agent pod storage mountPropagation |
-| agent.persistentVolume.size | string | `"100Gi"` | size of agent pod volume |
-| agent.persistentVolume.storageClass | string | `"vald-sc"` | storageClass name for agent pod volume |
-| agent.podAnnotations | object | `{}` | pod annotations |
-| agent.podManagementPolicy | string | `"OrderedReady"` | pod management policy: OrderedReady or Parallel |
-| agent.podPriority.enabled | bool | `true` | agent pod PriorityClass enabled |
-| agent.podPriority.value | int | `1000000000` | agent pod PriorityClass value |
-| agent.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| agent.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| agent.readreplica | object | `{"component_name":"agent-readreplica","enabled":false,"hpa":{"enabled":false,"targetCPUUtilizationPercentage":80},"label_key":"vald-readreplica-id","maxReplicas":3,"minReplicas":1,"name":"vald-agent-ngt-readreplica","service":{"annotations":{}},"snapshot_classname":"","volume_name":"vald-agent-ngt-readreplica-pvc"}` | readreplica deployment annotations |
-| agent.readreplica.component_name | string | `"agent-readreplica"` | app.kubernetes.io/component name of agent readreplica |
-| agent.readreplica.enabled | bool | `false` | [This feature is WORK IN PROGRESS]enable agent readreplica |
-| agent.readreplica.hpa.enabled | bool | `false` | HPA enabled |
-| agent.readreplica.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| agent.readreplica.label_key | string | `"vald-readreplica-id"` | label key to identify read replica resources |
-| agent.readreplica.maxReplicas | int | `3` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| agent.readreplica.minReplicas | int | `1` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| agent.readreplica.name | string | `"vald-agent-ngt-readreplica"` | name of agent readreplica |
-| agent.readreplica.service | object | `{"annotations":{}}` | service settings for read replica service resources |
-| agent.readreplica.service.annotations | object | `{}` | readreplica deployment annotations |
-| agent.readreplica.snapshot_classname | string | `""` | snapshot class name for snapshotter used for read replica |
-| agent.readreplica.volume_name | string | `"vald-agent-ngt-readreplica-pvc"` | name of clone volume of agent pvc for read replica |
-| agent.resources | object | `{"requests":{"cpu":"300m","memory":"4Gi"}}` | compute resources. recommended setting of memory requests = cluster memory \* 0.4 / number of agent pods |
-| agent.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| agent.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| agent.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| agent.rollingUpdate.partition | int | `0` | StatefulSet partition |
-| agent.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":false,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| agent.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{"startupProbe":{"failureThreshold":200,"periodSeconds":5}}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| agent.service.annotations | object | `{}` | service annotations |
-| agent.service.labels | object | `{}` | service labels |
-| agent.serviceAccount.enabled | bool | `true` | creates service account |
-| agent.serviceAccount.name | string | `"agent-ngt"` | name of service account |
-| agent.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| agent.sidecar.config.auto_backup_duration | string | `"24h"` | auto backup duration |
-| agent.sidecar.config.auto_backup_enabled | bool | `true` | auto backup triggered by timer is enabled |
-| agent.sidecar.config.blob_storage.bucket | string | `""` | bucket name |
-| agent.sidecar.config.blob_storage.cloud_storage.client.credentials_file_path | string | `""` | credentials file path |
-| agent.sidecar.config.blob_storage.cloud_storage.client.credentials_json | string | `""` | credentials json |
-| agent.sidecar.config.blob_storage.cloud_storage.url | string | `""` | cloud storage url |
-| agent.sidecar.config.blob_storage.cloud_storage.write_buffer_size | int | `0` | bytes of the chunks for upload |
-| agent.sidecar.config.blob_storage.cloud_storage.write_cache_control | string | `""` | Cache-Control of HTTP Header |
-| agent.sidecar.config.blob_storage.cloud_storage.write_content_disposition | string | `""` | Content-Disposition of HTTP Header |
-| agent.sidecar.config.blob_storage.cloud_storage.write_content_encoding | string | `""` | the encoding of the blob's content |
-| agent.sidecar.config.blob_storage.cloud_storage.write_content_language | string | `""` | the language of blob's content |
-| agent.sidecar.config.blob_storage.cloud_storage.write_content_type | string | `""` | MIME type of the blob |
-| agent.sidecar.config.blob_storage.s3.access_key | string | `"_AWS_ACCESS_KEY_"` | s3 access key |
-| agent.sidecar.config.blob_storage.s3.enable_100_continue | bool | `true` | enable AWS SDK adding the 'Expect: 100-Continue' header to PUT requests over 2MB of content. |
-| agent.sidecar.config.blob_storage.s3.enable_content_md5_validation | bool | `true` | enable the S3 client to add MD5 checksum to upload API calls. |
-| agent.sidecar.config.blob_storage.s3.enable_endpoint_discovery | bool | `false` | enable endpoint discovery |
-| agent.sidecar.config.blob_storage.s3.enable_endpoint_host_prefix | bool | `true` | enable prefixing request endpoint hosts with modeled information |
-| agent.sidecar.config.blob_storage.s3.enable_param_validation | bool | `true` | enables semantic parameter validation |
-| agent.sidecar.config.blob_storage.s3.enable_ssl | bool | `true` | enable ssl for s3 session |
-| agent.sidecar.config.blob_storage.s3.endpoint | string | `""` | s3 endpoint |
-| agent.sidecar.config.blob_storage.s3.force_path_style | bool | `false` | use path-style addressing |
-| agent.sidecar.config.blob_storage.s3.max_chunk_size | string | `"64mb"` | s3 download max chunk size |
-| agent.sidecar.config.blob_storage.s3.max_part_size | string | `"64mb"` | s3 multipart upload max part size |
-| agent.sidecar.config.blob_storage.s3.max_retries | int | `3` | maximum number of retries of s3 client |
-| agent.sidecar.config.blob_storage.s3.region | string | `""` | s3 region |
-| agent.sidecar.config.blob_storage.s3.secret_access_key | string | `"_AWS_SECRET_ACCESS_KEY_"` | s3 secret access key |
-| agent.sidecar.config.blob_storage.s3.token | string | `""` | s3 token |
-| agent.sidecar.config.blob_storage.s3.use_accelerate | bool | `false` | enable s3 accelerate feature |
-| agent.sidecar.config.blob_storage.s3.use_arn_region | bool | `false` | s3 service client to use the region specified in the ARN |
-| agent.sidecar.config.blob_storage.s3.use_dual_stack | bool | `false` | use dual stack |
-| agent.sidecar.config.blob_storage.storage_type | string | `"s3"` | storage type |
-| agent.sidecar.config.client.net.dialer.dual_stack_enabled | bool | `false` | HTTP client TCP dialer dual stack enabled |
-| agent.sidecar.config.client.net.dialer.keepalive | string | `"5m"` | HTTP client TCP dialer keep alive |
-| agent.sidecar.config.client.net.dialer.timeout | string | `"5s"` | HTTP client TCP dialer connect timeout |
-| agent.sidecar.config.client.net.dns.cache_enabled | bool | `true` | HTTP client DNS cache enabled |
-| agent.sidecar.config.client.net.dns.cache_expiration | string | `"24h"` | |
-| agent.sidecar.config.client.net.dns.refresh_duration | string | `"1h"` | HTTP client DNS cache expiration |
-| agent.sidecar.config.client.net.network | string | `"tcp"` | gRPC client dialer network type |
-| agent.sidecar.config.client.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| agent.sidecar.config.client.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| agent.sidecar.config.client.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| agent.sidecar.config.client.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| agent.sidecar.config.client.net.socket_option.tcp_cork | bool | `true` | server listen socket option for tcp_cork functionality |
-| agent.sidecar.config.client.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| agent.sidecar.config.client.net.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
-| agent.sidecar.config.client.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| agent.sidecar.config.client.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| agent.sidecar.config.client.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| agent.sidecar.config.client.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| agent.sidecar.config.client.net.tls.enabled | bool | `false` | TLS enabled |
-| agent.sidecar.config.client.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| agent.sidecar.config.client.net.tls.key | string | `"/path/to/key"` | TLS key path |
-| agent.sidecar.config.client.transport.backoff.backoff_factor | float | `1.1` | backoff backoff factor |
-| agent.sidecar.config.client.transport.backoff.backoff_time_limit | string | `"5s"` | backoff time limit |
-| agent.sidecar.config.client.transport.backoff.enable_error_log | bool | `true` | backoff error log enabled |
-| agent.sidecar.config.client.transport.backoff.initial_duration | string | `"5ms"` | backoff initial duration |
-| agent.sidecar.config.client.transport.backoff.jitter_limit | string | `"100ms"` | backoff jitter limit |
-| agent.sidecar.config.client.transport.backoff.maximum_duration | string | `"5s"` | backoff maximum duration |
-| agent.sidecar.config.client.transport.backoff.retry_count | int | `100` | backoff retry count |
-| agent.sidecar.config.client.transport.round_tripper.expect_continue_timeout | string | `"5s"` | expect continue timeout |
-| agent.sidecar.config.client.transport.round_tripper.force_attempt_http_2 | bool | `true` | force attempt HTTP2 |
-| agent.sidecar.config.client.transport.round_tripper.idle_conn_timeout | string | `"90s"` | timeout for idle connections |
-| agent.sidecar.config.client.transport.round_tripper.max_conns_per_host | int | `10` | maximum count of connections per host |
-| agent.sidecar.config.client.transport.round_tripper.max_idle_conns | int | `100` | maximum count of idle connections |
-| agent.sidecar.config.client.transport.round_tripper.max_idle_conns_per_host | int | `10` | maximum count of idle connections per host |
-| agent.sidecar.config.client.transport.round_tripper.max_response_header_size | int | `0` | maximum response header size |
-| agent.sidecar.config.client.transport.round_tripper.read_buffer_size | int | `0` | read buffer size |
-| agent.sidecar.config.client.transport.round_tripper.response_header_timeout | string | `"5s"` | timeout for response header |
-| agent.sidecar.config.client.transport.round_tripper.tls_handshake_timeout | string | `"5s"` | TLS handshake timeout |
-| agent.sidecar.config.client.transport.round_tripper.write_buffer_size | int | `0` | write buffer size |
-| agent.sidecar.config.compress.compress_algorithm | string | `"gzip"` | compression algorithm. must be `gob`, `gzip`, `lz4` or `zstd` |
-| agent.sidecar.config.compress.compression_level | int | `-1` | compression level. value range relies on which algorithm is used. `gob`: level will be ignored. `gzip`: -1 (default compression), 0 (no compression), or 1 (best speed) to 9 (best compression). `lz4`: >= 0, higher is better compression. `zstd`: 1 (fastest) to 22 (best), however implementation relies on klauspost/compress. |
-| agent.sidecar.config.filename | string | `"_MY_POD_NAME_"` | backup filename |
-| agent.sidecar.config.filename_suffix | string | `".tar.gz"` | suffix for backup filename |
-| agent.sidecar.config.post_stop_timeout | string | `"2m"` | timeout for observing file changes during post stop |
-| agent.sidecar.config.restore_backoff.backoff_factor | float | `1.2` | restore backoff factor |
-| agent.sidecar.config.restore_backoff.backoff_time_limit | string | `"30m"` | restore backoff time limit |
-| agent.sidecar.config.restore_backoff.enable_error_log | bool | `true` | restore backoff log enabled |
-| agent.sidecar.config.restore_backoff.initial_duration | string | `"1s"` | restore backoff initial duration |
-| agent.sidecar.config.restore_backoff.jitter_limit | string | `"10s"` | restore backoff jitter limit |
-| agent.sidecar.config.restore_backoff.maximum_duration | string | `"1m"` | restore backoff maximum duration |
-| agent.sidecar.config.restore_backoff.retry_count | int | `100` | restore backoff retry count |
-| agent.sidecar.config.restore_backoff_enabled | bool | `false` | restore backoff enabled |
-| agent.sidecar.config.watch_enabled | bool | `true` | auto backup triggered by file changes is enabled |
-| agent.sidecar.enabled | bool | `false` | sidecar enabled |
-| agent.sidecar.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}},{"name":"AWS_ACCESS_KEY","valueFrom":{"secretKeyRef":{"key":"access-key","name":"aws-secret"}}},{"name":"AWS_SECRET_ACCESS_KEY","valueFrom":{"secretKeyRef":{"key":"secret-access-key","name":"aws-secret"}}}]` | environment variables |
-| agent.sidecar.image.pullPolicy | string | `"Always"` | image pull policy |
-| agent.sidecar.image.repository | string | `"vdaas/vald-agent-sidecar"` | image repository |
-| agent.sidecar.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| agent.sidecar.initContainerEnabled | bool | `false` | sidecar on initContainer mode enabled. |
-| agent.sidecar.logging | object | `{}` | logging config (overrides defaults.logging) |
-| agent.sidecar.name | string | `"vald-agent-sidecar"` | name of agent sidecar |
-| agent.sidecar.observability | object | `{"otlp":{"attribute":{"service_name":"vald-agent-sidecar"}}}` | observability config (overrides defaults.observability) |
-| agent.sidecar.resources | object | `{"requests":{"cpu":"100m","memory":"100Mi"}}` | compute resources. |
-| agent.sidecar.server_config | object | `{"healths":{"liveness":{"enabled":false,"port":13000,"servicePort":13000},"readiness":{"enabled":false,"port":13001,"servicePort":13001},"startup":{"enabled":false,"port":13001}},"metrics":{"pprof":{"port":16060,"servicePort":16060}},"servers":{"grpc":{"enabled":false,"port":18081,"servicePort":18081},"rest":{"enabled":false,"port":18080,"servicePort":18080}}}` | server config (overrides defaults.server_config) |
-| agent.sidecar.service.annotations | object | `{}` | agent sidecar service annotations |
-| agent.sidecar.service.enabled | bool | `false` | agent sidecar service enabled |
-| agent.sidecar.service.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| agent.sidecar.service.labels | object | `{}` | agent sidecar service labels |
-| agent.sidecar.service.type | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| agent.sidecar.time_zone | string | `""` | Time zone |
-| agent.sidecar.version | string | `"v0.0.0"` | version of agent sidecar config |
-| agent.terminationGracePeriodSeconds | int | `120` | duration in seconds pod needs to terminate gracefully |
-| agent.time_zone | string | `""` | Time zone |
-| agent.tolerations | list | `[]` | tolerations |
-| agent.topologySpreadConstraints | list | `[]` | topology spread constraints for agent pods |
-| agent.unhealthyPodEvictionPolicy | string | `"IfHealthyBudget"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| agent.version | string | `"v0.0.0"` | version of agent config |
-| agent.volumeMounts | list | `[]` | volume mounts |
-| agent.volumes | list | `[]` | volumes |
-| defaults.grpc.client.addrs | list | `[]` | gRPC client addresses |
-| defaults.grpc.client.backoff.backoff_factor | float | `1.1` | gRPC client backoff factor |
-| defaults.grpc.client.backoff.backoff_time_limit | string | `"5s"` | gRPC client backoff time limit |
-| defaults.grpc.client.backoff.enable_error_log | bool | `true` | gRPC client backoff log enabled |
-| defaults.grpc.client.backoff.initial_duration | string | `"5ms"` | gRPC client backoff initial duration |
-| defaults.grpc.client.backoff.jitter_limit | string | `"100ms"` | gRPC client backoff jitter limit |
-| defaults.grpc.client.backoff.maximum_duration | string | `"5s"` | gRPC client backoff maximum duration |
-| defaults.grpc.client.backoff.retry_count | int | `100` | gRPC client backoff retry count |
-| defaults.grpc.client.call_option.content_subtype | string | `""` | gRPC client call option content subtype |
-| defaults.grpc.client.call_option.max_recv_msg_size | int | `0` | gRPC client call option max receive message size |
-| defaults.grpc.client.call_option.max_retry_rpc_buffer_size | int | `0` | gRPC client call option max retry rpc buffer size |
-| defaults.grpc.client.call_option.max_send_msg_size | int | `0` | gRPC client call option max send message size |
-| defaults.grpc.client.call_option.wait_for_ready | bool | `true` | gRPC client call option wait for ready |
-| defaults.grpc.client.circuit_breaker.closed_error_rate | float | `0.7` | gRPC client circuitbreaker closed error rate |
-| defaults.grpc.client.circuit_breaker.closed_refresh_timeout | string | `"10s"` | gRPC client circuitbreaker closed refresh timeout |
-| defaults.grpc.client.circuit_breaker.half_open_error_rate | float | `0.5` | gRPC client circuitbreaker half-open error rate |
-| defaults.grpc.client.circuit_breaker.min_samples | int | `1000` | gRPC client circuitbreaker minimum sampling count |
-| defaults.grpc.client.circuit_breaker.open_timeout | string | `"1s"` | gRPC client circuitbreaker open timeout |
-| defaults.grpc.client.connection_pool.enable_dns_resolver | bool | `true` | enables gRPC client connection pool dns resolver, when enabled vald uses ip handshake exclude dns discovery which improves network performance |
-| defaults.grpc.client.connection_pool.enable_rebalance | bool | `true` | enables gRPC client connection pool rebalance |
-| defaults.grpc.client.connection_pool.old_conn_close_duration | string | `"2m"` | makes delay before gRPC client connection closing during connection pool rebalance |
-| defaults.grpc.client.connection_pool.rebalance_duration | string | `"30m"` | gRPC client connection pool rebalance duration |
-| defaults.grpc.client.connection_pool.size | int | `3` | gRPC client connection pool size |
-| defaults.grpc.client.dial_option.authority | string | `""` | gRPC client dial option authority |
-| defaults.grpc.client.dial_option.backoff_base_delay | string | `"1s"` | gRPC client dial option base backoff delay |
-| defaults.grpc.client.dial_option.backoff_jitter | float | `0.2` | gRPC client dial option base backoff delay |
-| defaults.grpc.client.dial_option.backoff_max_delay | string | `"120s"` | gRPC client dial option max backoff delay |
-| defaults.grpc.client.dial_option.backoff_multiplier | float | `1.6` | gRPC client dial option base backoff delay |
-| defaults.grpc.client.dial_option.disable_retry | bool | `false` | gRPC client dial option disables retry |
-| defaults.grpc.client.dial_option.enable_backoff | bool | `false` | gRPC client dial option backoff enabled |
-| defaults.grpc.client.dial_option.idle_timeout | string | `"1h"` | gRPC client dial option idle_timeout |
-| defaults.grpc.client.dial_option.initial_connection_window_size | int | `2097152` | gRPC client dial option initial connection window size |
-| defaults.grpc.client.dial_option.initial_window_size | int | `1048576` | gRPC client dial option initial window size |
-| defaults.grpc.client.dial_option.insecure | bool | `true` | gRPC client dial option insecure enabled |
-| defaults.grpc.client.dial_option.interceptors | list | `[]` | gRPC client interceptors |
-| defaults.grpc.client.dial_option.keepalive.permit_without_stream | bool | `false` | gRPC client keep alive permit without stream |
-| defaults.grpc.client.dial_option.keepalive.time | string | `""` | gRPC client keep alive time |
-| defaults.grpc.client.dial_option.keepalive.timeout | string | `"30s"` | gRPC client keep alive timeout |
-| defaults.grpc.client.dial_option.max_call_attempts | int | `0` | gRPC client dial option number of max call attempts |
-| defaults.grpc.client.dial_option.max_header_list_size | int | `0` | gRPC client dial option max header list size |
-| defaults.grpc.client.dial_option.max_msg_size | int | `0` | gRPC client dial option max message size |
-| defaults.grpc.client.dial_option.min_connection_timeout | string | `"20s"` | gRPC client dial option minimum connection timeout |
-| defaults.grpc.client.dial_option.net.dialer.dual_stack_enabled | bool | `true` | gRPC client TCP dialer dual stack enabled |
-| defaults.grpc.client.dial_option.net.dialer.keepalive | string | `""` | gRPC client TCP dialer keep alive |
-| defaults.grpc.client.dial_option.net.dialer.timeout | string | `""` | gRPC client TCP dialer timeout |
-| defaults.grpc.client.dial_option.net.dns.cache_enabled | bool | `true` | gRPC client DNS cache enabled |
-| defaults.grpc.client.dial_option.net.dns.cache_expiration | string | `"1h"` | gRPC client DNS cache expiration |
-| defaults.grpc.client.dial_option.net.dns.refresh_duration | string | `"30m"` | gRPC client DNS cache refresh duration |
-| defaults.grpc.client.dial_option.net.network | string | `"tcp"` | gRPC client dialer network type |
-| defaults.grpc.client.dial_option.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.grpc.client.dial_option.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.grpc.client.dial_option.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.grpc.client.dial_option.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.grpc.client.dial_option.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| defaults.grpc.client.dial_option.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.grpc.client.dial_option.net.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
-| defaults.grpc.client.dial_option.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| defaults.grpc.client.dial_option.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| defaults.grpc.client.dial_option.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| defaults.grpc.client.dial_option.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| defaults.grpc.client.dial_option.net.tls.enabled | bool | `false` | TLS enabled |
-| defaults.grpc.client.dial_option.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| defaults.grpc.client.dial_option.net.tls.key | string | `"/path/to/key"` | TLS key path |
-| defaults.grpc.client.dial_option.read_buffer_size | int | `0` | gRPC client dial option read buffer size |
-| defaults.grpc.client.dial_option.shared_write_buffer | bool | `false` | gRPC client dial option sharing write buffer |
-| defaults.grpc.client.dial_option.timeout | string | `""` | gRPC client dial option timeout |
-| defaults.grpc.client.dial_option.user_agent | string | `"Vald-gRPC"` | gRPC client dial option user_agent |
-| defaults.grpc.client.dial_option.write_buffer_size | int | `0` | gRPC client dial option write buffer size |
-| defaults.grpc.client.health_check_duration | string | `"1s"` | gRPC client health check duration |
-| defaults.grpc.client.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| defaults.grpc.client.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| defaults.grpc.client.tls.enabled | bool | `false` | TLS enabled |
-| defaults.grpc.client.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| defaults.grpc.client.tls.key | string | `"/path/to/key"` | TLS key path |
-| defaults.image.tag | string | `"v1.7.14"` | docker image tag |
-| defaults.logging.format | string | `"raw"` | logging format. logging format must be `raw` or `json` |
-| defaults.logging.level | string | `"debug"` | logging level. logging level must be `debug`, `info`, `warn`, `error` or `fatal`. |
-| defaults.logging.logger | string | `"glg"` | logger name. currently logger must be `glg` or `zap`. |
-| defaults.networkPolicy.custom | object | `{"egress":[],"ingress":[]}` | custom network policies that a user can add |
-| defaults.networkPolicy.custom.egress | list | `[]` | custom egress network policies that a user can add |
-| defaults.networkPolicy.custom.ingress | list | `[]` | custom ingress network policies that a user can add |
-| defaults.networkPolicy.enabled | bool | `false` | if network policy enabled |
-| defaults.observability.enabled | bool | `false` | observability features enabled |
-| defaults.observability.metrics.enable_cgo | bool | `true` | CGO metrics enabled |
-| defaults.observability.metrics.enable_goroutine | bool | `true` | goroutine metrics enabled |
-| defaults.observability.metrics.enable_memory | bool | `true` | memory metrics enabled |
-| defaults.observability.metrics.enable_version_info | bool | `true` | version info metrics enabled |
-| defaults.observability.metrics.version_info_labels | list | `["vald_version","server_name","git_commit","build_time","go_version","go_os","go_arch","algorithm_info"]` | enabled label names of version info |
-| defaults.observability.otlp.attribute | object | `{"namespace":"_MY_POD_NAMESPACE_","node_name":"_MY_NODE_NAME_","pod_name":"_MY_POD_NAME_","service_name":"vald"}` | default resource attribute |
-| defaults.observability.otlp.attribute.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace |
-| defaults.observability.otlp.attribute.node_name | string | `"_MY_NODE_NAME_"` | node name |
-| defaults.observability.otlp.attribute.pod_name | string | `"_MY_POD_NAME_"` | pod name |
-| defaults.observability.otlp.attribute.service_name | string | `"vald"` | service name |
-| defaults.observability.otlp.collector_endpoint | string | `""` | OpenTelemetry Collector endpoint |
-| defaults.observability.otlp.metrics_export_interval | string | `"1s"` | metrics export interval |
-| defaults.observability.otlp.metrics_export_timeout | string | `"1m"` | metrics export timeout |
-| defaults.observability.otlp.trace_batch_timeout | string | `"1s"` | trace batch timeout |
-| defaults.observability.otlp.trace_export_timeout | string | `"1m"` | trace export timeout |
-| defaults.observability.otlp.trace_max_export_batch_size | int | `1024` | trace maximum export batch size |
-| defaults.observability.otlp.trace_max_queue_size | int | `256` | trace maximum queue size |
-| defaults.observability.trace.enabled | bool | `false` | trace enabled |
-| defaults.server_config.full_shutdown_duration | string | `"600s"` | server full shutdown duration |
-| defaults.server_config.healths.liveness.enabled | bool | `true` | liveness server enabled |
-| defaults.server_config.healths.liveness.host | string | `"0.0.0.0"` | liveness server host |
-| defaults.server_config.healths.liveness.livenessProbe.failureThreshold | int | `2` | liveness probe failure threshold |
-| defaults.server_config.healths.liveness.livenessProbe.httpGet.path | string | `"/liveness"` | liveness probe path |
-| defaults.server_config.healths.liveness.livenessProbe.httpGet.port | string | `"liveness"` | liveness probe port |
-| defaults.server_config.healths.liveness.livenessProbe.httpGet.scheme | string | `"HTTP"` | liveness probe scheme |
-| defaults.server_config.healths.liveness.livenessProbe.initialDelaySeconds | int | `5` | liveness probe initial delay seconds |
-| defaults.server_config.healths.liveness.livenessProbe.periodSeconds | int | `3` | liveness probe period seconds |
-| defaults.server_config.healths.liveness.livenessProbe.successThreshold | int | `1` | liveness probe success threshold |
-| defaults.server_config.healths.liveness.livenessProbe.timeoutSeconds | int | `2` | liveness probe timeout seconds |
-| defaults.server_config.healths.liveness.port | int | `3000` | liveness server port |
-| defaults.server_config.healths.liveness.server.http.handler_timeout | string | `""` | liveness server handler timeout |
-| defaults.server_config.healths.liveness.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
-| defaults.server_config.healths.liveness.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
-| defaults.server_config.healths.liveness.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
-| defaults.server_config.healths.liveness.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
-| defaults.server_config.healths.liveness.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
-| defaults.server_config.healths.liveness.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
-| defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
-| defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
-| defaults.server_config.healths.liveness.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
-| defaults.server_config.healths.liveness.server.http.idle_timeout | string | `""` | liveness server idle timeout |
-| defaults.server_config.healths.liveness.server.http.read_header_timeout | string | `""` | liveness server read header timeout |
-| defaults.server_config.healths.liveness.server.http.read_timeout | string | `""` | liveness server read timeout |
-| defaults.server_config.healths.liveness.server.http.shutdown_duration | string | `"5s"` | liveness server shutdown duration |
-| defaults.server_config.healths.liveness.server.http.write_timeout | string | `""` | liveness server write timeout |
-| defaults.server_config.healths.liveness.server.mode | string | `"REST"` | liveness server mode |
-| defaults.server_config.healths.liveness.server.network | string | `"tcp"` | network mode |
-| defaults.server_config.healths.liveness.server.probe_wait_time | string | `"3s"` | liveness server probe wait time |
-| defaults.server_config.healths.liveness.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
-| defaults.server_config.healths.liveness.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.server_config.healths.liveness.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.server_config.healths.liveness.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.server_config.healths.liveness.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.server_config.healths.liveness.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| defaults.server_config.healths.liveness.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.server_config.healths.liveness.server.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
-| defaults.server_config.healths.liveness.server.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
-| defaults.server_config.healths.liveness.server.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
-| defaults.server_config.healths.liveness.server.socket_path | string | `""` | server socket_path |
-| defaults.server_config.healths.liveness.servicePort | int | `3000` | liveness server service port |
-| defaults.server_config.healths.readiness.enabled | bool | `true` | readiness server enabled |
-| defaults.server_config.healths.readiness.host | string | `"0.0.0.0"` | readiness server host |
-| defaults.server_config.healths.readiness.port | int | `3001` | readiness server port |
-| defaults.server_config.healths.readiness.readinessProbe.failureThreshold | int | `2` | readiness probe failure threshold |
-| defaults.server_config.healths.readiness.readinessProbe.httpGet.path | string | `"/readiness"` | readiness probe path |
-| defaults.server_config.healths.readiness.readinessProbe.httpGet.port | string | `"readiness"` | readiness probe port |
-| defaults.server_config.healths.readiness.readinessProbe.httpGet.scheme | string | `"HTTP"` | readiness probe scheme |
-| defaults.server_config.healths.readiness.readinessProbe.initialDelaySeconds | int | `10` | readiness probe initial delay seconds |
-| defaults.server_config.healths.readiness.readinessProbe.periodSeconds | int | `3` | readiness probe period seconds |
-| defaults.server_config.healths.readiness.readinessProbe.successThreshold | int | `1` | readiness probe success threshold |
-| defaults.server_config.healths.readiness.readinessProbe.timeoutSeconds | int | `2` | readiness probe timeout seconds |
-| defaults.server_config.healths.readiness.server.http.handler_timeout | string | `""` | readiness server handler timeout |
-| defaults.server_config.healths.readiness.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
-| defaults.server_config.healths.readiness.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
-| defaults.server_config.healths.readiness.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
-| defaults.server_config.healths.readiness.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
-| defaults.server_config.healths.readiness.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
-| defaults.server_config.healths.readiness.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
-| defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
-| defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
-| defaults.server_config.healths.readiness.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
-| defaults.server_config.healths.readiness.server.http.idle_timeout | string | `""` | readiness server idle timeout |
-| defaults.server_config.healths.readiness.server.http.read_header_timeout | string | `""` | readiness server read header timeout |
-| defaults.server_config.healths.readiness.server.http.read_timeout | string | `""` | readiness server read timeout |
-| defaults.server_config.healths.readiness.server.http.shutdown_duration | string | `"0s"` | readiness server shutdown duration |
-| defaults.server_config.healths.readiness.server.http.write_timeout | string | `""` | readiness server write timeout |
-| defaults.server_config.healths.readiness.server.mode | string | `"REST"` | readiness server mode |
-| defaults.server_config.healths.readiness.server.network | string | `"tcp"` | network mode |
-| defaults.server_config.healths.readiness.server.probe_wait_time | string | `"3s"` | readiness server probe wait time |
-| defaults.server_config.healths.readiness.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
-| defaults.server_config.healths.readiness.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.server_config.healths.readiness.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.server_config.healths.readiness.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.server_config.healths.readiness.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.server_config.healths.readiness.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| defaults.server_config.healths.readiness.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.server_config.healths.readiness.server.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
-| defaults.server_config.healths.readiness.server.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
-| defaults.server_config.healths.readiness.server.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
-| defaults.server_config.healths.readiness.server.socket_path | string | `""` | server socket_path |
-| defaults.server_config.healths.readiness.servicePort | int | `3001` | readiness server service port |
-| defaults.server_config.healths.startup.enabled | bool | `true` | startup server enabled |
-| defaults.server_config.healths.startup.port | int | `3000` | startup server port |
-| defaults.server_config.healths.startup.startupProbe.failureThreshold | int | `30` | startup probe failure threshold |
-| defaults.server_config.healths.startup.startupProbe.httpGet.path | string | `"/liveness"` | startup probe path |
-| defaults.server_config.healths.startup.startupProbe.httpGet.port | string | `"liveness"` | startup probe port |
-| defaults.server_config.healths.startup.startupProbe.httpGet.scheme | string | `"HTTP"` | startup probe scheme |
-| defaults.server_config.healths.startup.startupProbe.initialDelaySeconds | int | `5` | startup probe initial delay seconds |
-| defaults.server_config.healths.startup.startupProbe.periodSeconds | int | `5` | startup probe period seconds |
-| defaults.server_config.healths.startup.startupProbe.successThreshold | int | `1` | startup probe success threshold |
-| defaults.server_config.healths.startup.startupProbe.timeoutSeconds | int | `2` | startup probe timeout seconds |
-| defaults.server_config.metrics.pprof.enabled | bool | `false` | pprof server enabled |
-| defaults.server_config.metrics.pprof.host | string | `"0.0.0.0"` | pprof server host |
-| defaults.server_config.metrics.pprof.port | int | `6060` | pprof server port |
-| defaults.server_config.metrics.pprof.server.http.handler_timeout | string | `"5s"` | pprof server handler timeout |
-| defaults.server_config.metrics.pprof.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
-| defaults.server_config.metrics.pprof.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
-| defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
-| defaults.server_config.metrics.pprof.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
-| defaults.server_config.metrics.pprof.server.http.idle_timeout | string | `"2s"` | pprof server idle timeout |
-| defaults.server_config.metrics.pprof.server.http.read_header_timeout | string | `"1s"` | pprof server read header timeout |
-| defaults.server_config.metrics.pprof.server.http.read_timeout | string | `"1s"` | pprof server read timeout |
-| defaults.server_config.metrics.pprof.server.http.shutdown_duration | string | `"5s"` | pprof server shutdown duration |
-| defaults.server_config.metrics.pprof.server.http.write_timeout | string | `"1m"` | pprof server write timeout |
-| defaults.server_config.metrics.pprof.server.mode | string | `"REST"` | pprof server mode |
-| defaults.server_config.metrics.pprof.server.network | string | `"tcp"` | network mode |
-| defaults.server_config.metrics.pprof.server.probe_wait_time | string | `"3s"` | pprof server probe wait time |
-| defaults.server_config.metrics.pprof.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
-| defaults.server_config.metrics.pprof.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.tcp_cork | bool | `true` | server listen socket option for tcp_cork functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| defaults.server_config.metrics.pprof.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| defaults.server_config.metrics.pprof.server.socket_path | string | `""` | server socket_path |
-| defaults.server_config.metrics.pprof.servicePort | int | `6060` | pprof server service port |
-| defaults.server_config.servers.grpc.enabled | bool | `true` | gRPC server enabled |
-| defaults.server_config.servers.grpc.host | string | `"0.0.0.0"` | gRPC server host |
-| defaults.server_config.servers.grpc.port | int | `8081` | gRPC server port |
-| defaults.server_config.servers.grpc.server.grpc.bidirectional_stream_concurrency | int | `20` | gRPC server bidirectional stream concurrency |
-| defaults.server_config.servers.grpc.server.grpc.connection_timeout | string | `""` | gRPC server connection timeout |
-| defaults.server_config.servers.grpc.server.grpc.enable_admin | bool | `true` | gRPC server admin option |
-| defaults.server_config.servers.grpc.server.grpc.enable_channelz | bool | `true` | gRPC server channelz option |
-| defaults.server_config.servers.grpc.server.grpc.enable_reflection | bool | `true` | gRPC server reflection option |
-| defaults.server_config.servers.grpc.server.grpc.header_table_size | int | `0` | gRPC server header table size |
-| defaults.server_config.servers.grpc.server.grpc.initial_conn_window_size | int | `2097152` | gRPC server initial connection window size |
-| defaults.server_config.servers.grpc.server.grpc.initial_window_size | int | `1048576` | gRPC server initial window size |
-| defaults.server_config.servers.grpc.server.grpc.interceptors | list | `["RecoverInterceptor"]` | gRPC server interceptors |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_age | string | `""` | gRPC server keep alive max connection age |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_age_grace | string | `""` | gRPC server keep alive max connection age grace |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_idle | string | `""` | gRPC server keep alive max connection idle |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.min_time | string | `"10m"` | gRPC server keep alive min_time |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.permit_without_stream | bool | `false` | gRPC server keep alive permit_without_stream |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.time | string | `"3h"` | gRPC server keep alive time |
-| defaults.server_config.servers.grpc.server.grpc.keepalive.timeout | string | `"60s"` | gRPC server keep alive timeout |
-| defaults.server_config.servers.grpc.server.grpc.max_concurrent_streams | int | `0` | gRPC server max concurrent stream size |
-| defaults.server_config.servers.grpc.server.grpc.max_header_list_size | int | `0` | gRPC server max header list size |
-| defaults.server_config.servers.grpc.server.grpc.max_receive_message_size | int | `0` | gRPC server max receive message size |
-| defaults.server_config.servers.grpc.server.grpc.max_send_message_size | int | `0` | gRPC server max send message size |
-| defaults.server_config.servers.grpc.server.grpc.num_stream_workers | int | `0` | gRPC server number of stream workers |
-| defaults.server_config.servers.grpc.server.grpc.read_buffer_size | int | `0` | gRPC server read buffer size |
-| defaults.server_config.servers.grpc.server.grpc.shared_write_buffer | bool | `false` | gRPC server write buffer sharing option |
-| defaults.server_config.servers.grpc.server.grpc.wait_for_handlers | bool | `true` | gRPC server wait for handlers when stop |
-| defaults.server_config.servers.grpc.server.grpc.write_buffer_size | int | `0` | gRPC server write buffer size |
-| defaults.server_config.servers.grpc.server.mode | string | `"GRPC"` | gRPC server server mode |
-| defaults.server_config.servers.grpc.server.network | string | `"tcp"` | network mode |
-| defaults.server_config.servers.grpc.server.probe_wait_time | string | `"3s"` | gRPC server probe wait time |
-| defaults.server_config.servers.grpc.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
-| defaults.server_config.servers.grpc.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.server_config.servers.grpc.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.server_config.servers.grpc.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.server_config.servers.grpc.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.server_config.servers.grpc.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| defaults.server_config.servers.grpc.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.server_config.servers.grpc.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
-| defaults.server_config.servers.grpc.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| defaults.server_config.servers.grpc.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| defaults.server_config.servers.grpc.server.socket_path | string | `""` | server socket_path |
-| defaults.server_config.servers.grpc.servicePort | int | `8081` | gRPC server service port |
-| defaults.server_config.servers.rest.enabled | bool | `false` | REST server enabled |
-| defaults.server_config.servers.rest.host | string | `"0.0.0.0"` | REST server host |
-| defaults.server_config.servers.rest.port | int | `8080` | REST server port |
-| defaults.server_config.servers.rest.server.http.handler_timeout | string | `"5s"` | REST server handler timeout |
-| defaults.server_config.servers.rest.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
-| defaults.server_config.servers.rest.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
-| defaults.server_config.servers.rest.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
-| defaults.server_config.servers.rest.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
-| defaults.server_config.servers.rest.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
-| defaults.server_config.servers.rest.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
-| defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
-| defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
-| defaults.server_config.servers.rest.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
-| defaults.server_config.servers.rest.server.http.idle_timeout | string | `"2s"` | REST server idle timeout |
-| defaults.server_config.servers.rest.server.http.read_header_timeout | string | `"1s"` | REST server read header timeout |
-| defaults.server_config.servers.rest.server.http.read_timeout | string | `"1s"` | REST server read timeout |
-| defaults.server_config.servers.rest.server.http.shutdown_duration | string | `"5s"` | REST server shutdown duration |
-| defaults.server_config.servers.rest.server.http.write_timeout | string | `"1s"` | REST server write timeout |
-| defaults.server_config.servers.rest.server.mode | string | `"REST"` | REST server server mode |
-| defaults.server_config.servers.rest.server.network | string | `"tcp"` | network mode |
-| defaults.server_config.servers.rest.server.probe_wait_time | string | `"3s"` | REST server probe wait time |
-| defaults.server_config.servers.rest.server.restart | bool | `true` | |
-| defaults.server_config.servers.rest.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| defaults.server_config.servers.rest.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| defaults.server_config.servers.rest.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| defaults.server_config.servers.rest.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| defaults.server_config.servers.rest.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| defaults.server_config.servers.rest.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| defaults.server_config.servers.rest.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
-| defaults.server_config.servers.rest.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| defaults.server_config.servers.rest.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| defaults.server_config.servers.rest.server.socket_path | string | `""` | network socket_path |
-| defaults.server_config.servers.rest.servicePort | int | `8080` | REST server service port |
-| defaults.server_config.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| defaults.server_config.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| defaults.server_config.tls.enabled | bool | `false` | TLS enabled |
-| defaults.server_config.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| defaults.server_config.tls.key | string | `"/path/to/key"` | TLS key path |
-| defaults.time_zone | string | `"UTC"` | Time zone |
-| discoverer.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| discoverer.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| discoverer.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| discoverer.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| discoverer.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-discoverer"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| discoverer.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| discoverer.annotations | object | `{}` | deployment annotations |
-| discoverer.clusterRole.enabled | bool | `true` | creates clusterRole resource |
-| discoverer.clusterRole.name | string | `"discoverer"` | name of clusterRole |
-| discoverer.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
-| discoverer.clusterRoleBinding.name | string | `"discoverer"` | name of clusterRoleBinding |
-| discoverer.discoverer.discovery_duration | string | `"3s"` | duration to discovery |
-| discoverer.discoverer.name | string | `""` | name to discovery |
-| discoverer.discoverer.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
-| discoverer.discoverer.net.dialer.dual_stack_enabled | bool | `false` | TCP dialer dual stack enabled |
-| discoverer.discoverer.net.dialer.keepalive | string | `"10m"` | TCP dialer keep alive |
-| discoverer.discoverer.net.dialer.timeout | string | `"30s"` | TCP dialer timeout |
-| discoverer.discoverer.net.dns.cache_enabled | bool | `true` | DNS cache enabled |
-| discoverer.discoverer.net.dns.cache_expiration | string | `"24h"` | DNS cache expiration |
-| discoverer.discoverer.net.dns.refresh_duration | string | `"5m"` | DNS cache refresh duration |
-| discoverer.discoverer.net.network | string | `"tcp"` | gRPC client dialer network type |
-| discoverer.discoverer.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| discoverer.discoverer.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| discoverer.discoverer.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| discoverer.discoverer.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| discoverer.discoverer.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| discoverer.discoverer.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
-| discoverer.discoverer.net.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
-| discoverer.discoverer.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
-| discoverer.discoverer.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
-| discoverer.discoverer.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| discoverer.discoverer.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| discoverer.discoverer.net.tls.enabled | bool | `false` | TLS enabled |
-| discoverer.discoverer.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| discoverer.discoverer.net.tls.key | string | `"/path/to/key"` | TLS key path |
-| discoverer.discoverer.selectors | object | `{"node":{"fields":{},"labels":{}},"node_metrics":{"fields":{},"labels":{}},"pod":{"fields":{},"labels":{}},"pod_metrics":{"fields":{},"labels":{}},"service":{"fields":{},"labels":{}}}` | k8s resource selectors |
-| discoverer.discoverer.selectors.node | object | `{"fields":{},"labels":{}}` | k8s resource selectors for node discovery |
-| discoverer.discoverer.selectors.node.fields | object | `{}` | k8s field selectors for node discovery |
-| discoverer.discoverer.selectors.node.labels | object | `{}` | k8s label selectors for node discovery |
-| discoverer.discoverer.selectors.node_metrics | object | `{"fields":{},"labels":{}}` | k8s resource selectors for node_metrics discovery |
-| discoverer.discoverer.selectors.node_metrics.fields | object | `{}` | k8s field selectors for node_metrics discovery |
-| discoverer.discoverer.selectors.node_metrics.labels | object | `{}` | k8s label selectors for node_metrics discovery |
-| discoverer.discoverer.selectors.pod | object | `{"fields":{},"labels":{}}` | k8s resource selectors for pod discovery |
-| discoverer.discoverer.selectors.pod.fields | object | `{}` | k8s field selectors for pod discovery |
-| discoverer.discoverer.selectors.pod.labels | object | `{}` | k8s label selectors for pod discovery |
-| discoverer.discoverer.selectors.pod_metrics | object | `{"fields":{},"labels":{}}` | k8s resource selectors for pod_metrics discovery |
-| discoverer.discoverer.selectors.pod_metrics.fields | object | `{}` | k8s field selectors for pod_metrics discovery |
-| discoverer.discoverer.selectors.pod_metrics.labels | object | `{}` | k8s label selectors for pod_metrics discovery |
-| discoverer.discoverer.selectors.service | object | `{"fields":{},"labels":{}}` | k8s resource selectors for service discovery |
-| discoverer.discoverer.selectors.service.fields | object | `{}` | k8s field selectors for service discovery |
-| discoverer.discoverer.selectors.service.labels | object | `{}` | k8s label selectors for service discovery |
-| discoverer.enabled | bool | `true` | discoverer enabled |
-| discoverer.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| discoverer.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| discoverer.hpa.enabled | bool | `false` | HPA enabled |
-| discoverer.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| discoverer.image.pullPolicy | string | `"Always"` | image pull policy |
-| discoverer.image.repository | string | `"vdaas/vald-discoverer-k8s"` | image repository |
-| discoverer.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| discoverer.initContainers | list | `[]` | init containers |
-| discoverer.internalTrafficPolicy | string | `""` | internal traffic policy : Cluster or Local |
-| discoverer.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| discoverer.logging | object | `{}` | logging config (overrides defaults.logging) |
-| discoverer.maxReplicas | int | `2` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| discoverer.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
-| discoverer.minReplicas | int | `1` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| discoverer.name | string | `"vald-discoverer"` | name of discoverer deployment |
-| discoverer.nodeName | string | `""` | node name |
-| discoverer.nodeSelector | object | `{}` | node selector |
-| discoverer.observability | object | `{"otlp":{"attribute":{"service_name":"vald-discoverer"}}}` | observability config (overrides defaults.observability) |
-| discoverer.podAnnotations | object | `{}` | pod annotations |
-| discoverer.podPriority.enabled | bool | `true` | discoverer pod PriorityClass enabled |
-| discoverer.podPriority.value | int | `1000000` | discoverer pod PriorityClass value |
-| discoverer.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| discoverer.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| discoverer.resources | object | `{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}}` | compute resources |
-| discoverer.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| discoverer.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| discoverer.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| discoverer.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| discoverer.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| discoverer.service.annotations | object | `{}` | service annotations |
-| discoverer.service.labels | object | `{}` | service labels |
-| discoverer.serviceAccount.enabled | bool | `true` | creates service account |
-| discoverer.serviceAccount.name | string | `"vald"` | name of service account |
-| discoverer.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| discoverer.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| discoverer.time_zone | string | `""` | Time zone |
-| discoverer.tolerations | list | `[]` | tolerations |
-| discoverer.topologySpreadConstraints | list | `[]` | topology spread constraints of discoverer pods |
-| discoverer.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| discoverer.version | string | `"v0.0.0"` | version of discoverer config |
-| discoverer.volumeMounts | list | `[]` | volume mounts |
-| discoverer.volumes | list | `[]` | volumes |
-| gateway.filter.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| gateway.filter.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| gateway.filter.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| gateway.filter.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| gateway.filter.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-filter-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| gateway.filter.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| gateway.filter.annotations | object | `{}` | deployment annotations |
-| gateway.filter.enabled | bool | `false` | gateway enabled |
-| gateway.filter.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| gateway.filter.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.filter.gateway_config.egress_filter | object | `{"client":{},"distance_filters":[],"object_filters":[]}` | gRPC client config for egress filter |
-| gateway.filter.gateway_config.egress_filter.client | object | `{}` | gRPC client config for egress filter (overrides defaults.grpc.client) |
-| gateway.filter.gateway_config.egress_filter.distance_filters | list | `[]` | distance egress vector filter targets |
-| gateway.filter.gateway_config.egress_filter.object_filters | list | `[]` | object egress vector filter targets |
-| gateway.filter.gateway_config.gateway_client | object | `{}` | gRPC client for next gateway (overrides defaults.grpc.client) |
-| gateway.filter.gateway_config.ingress_filter | object | `{"client":{},"insert_filters":[],"search_filters":[],"update_filters":[],"upsert_filters":[],"vectorizer":""}` | gRPC client config for ingress filter |
-| gateway.filter.gateway_config.ingress_filter.client | object | `{}` | gRPC client for ingress filter (overrides defaults.grpc.client) |
-| gateway.filter.gateway_config.ingress_filter.insert_filters | list | `[]` | insert ingress vector filter targets |
-| gateway.filter.gateway_config.ingress_filter.search_filters | list | `[]` | search ingress vector filter targets |
-| gateway.filter.gateway_config.ingress_filter.update_filters | list | `[]` | update ingress vector filter targets |
-| gateway.filter.gateway_config.ingress_filter.upsert_filters | list | `[]` | upsert ingress vector filter targets |
-| gateway.filter.gateway_config.ingress_filter.vectorizer | string | `""` | object ingress vectorize filter targets |
-| gateway.filter.hpa.enabled | bool | `true` | HPA enabled |
-| gateway.filter.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| gateway.filter.image.pullPolicy | string | `"Always"` | image pull policy |
-| gateway.filter.image.repository | string | `"vdaas/vald-filter-gateway"` | image repository |
-| gateway.filter.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| gateway.filter.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
-| gateway.filter.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
-| gateway.filter.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
-| gateway.filter.ingress.enabled | bool | `false` | gateway ingress enabled |
-| gateway.filter.ingress.host | string | `"filter.gateway.vald.vdaas.org"` | ingress hostname |
-| gateway.filter.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
-| gateway.filter.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
-| gateway.filter.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-gateway-lb","sleepDuration":2,"target":"gateway-lb","type":"wait-for"}]` | init containers |
-| gateway.filter.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.filter.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| gateway.filter.logging | object | `{}` | logging config (overrides defaults.logging) |
-| gateway.filter.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| gateway.filter.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
-| gateway.filter.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| gateway.filter.name | string | `"vald-filter-gateway"` | name of filter gateway deployment |
-| gateway.filter.nodeName | string | `""` | node name |
-| gateway.filter.nodeSelector | object | `{}` | node selector |
-| gateway.filter.observability | object | `{"otlp":{"attribute":{"service_name":"vald-filter-gateway"}}}` | observability config (overrides defaults.observability) |
-| gateway.filter.podAnnotations | object | `{}` | pod annotations |
-| gateway.filter.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
-| gateway.filter.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
-| gateway.filter.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| gateway.filter.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| gateway.filter.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
-| gateway.filter.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| gateway.filter.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| gateway.filter.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| gateway.filter.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| gateway.filter.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| gateway.filter.service.annotations | object | `{}` | service annotations |
-| gateway.filter.service.labels | object | `{}` | service labels |
-| gateway.filter.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| gateway.filter.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| gateway.filter.time_zone | string | `""` | Time zone |
-| gateway.filter.tolerations | list | `[]` | tolerations |
-| gateway.filter.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
-| gateway.filter.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| gateway.filter.version | string | `"v0.0.0"` | version of gateway config |
-| gateway.filter.volumeMounts | list | `[]` | volume mounts |
-| gateway.filter.volumes | list | `[]` | volumes |
-| gateway.lb.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| gateway.lb.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| gateway.lb.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| gateway.lb.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| gateway.lb.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-lb-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| gateway.lb.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| gateway.lb.annotations | object | `{}` | deployment annotations |
-| gateway.lb.enabled | bool | `true` | gateway enabled |
-| gateway.lb.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| gateway.lb.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.lb.gateway_config.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | agent namespace |
-| gateway.lb.gateway_config.discoverer.agent_client_options | object | `{}` | gRPC client options for agents (overrides defaults.grpc.client) |
-| gateway.lb.gateway_config.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| gateway.lb.gateway_config.discoverer.duration | string | `"200ms"` | |
-| gateway.lb.gateway_config.discoverer.read_client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| gateway.lb.gateway_config.index_replica | int | `3` | number of index replica |
-| gateway.lb.gateway_config.multi_operation_concurrency | int | `20` | number of concurrency of multiXXX api's operation |
-| gateway.lb.gateway_config.node_name | string | `""` | node name |
-| gateway.lb.hpa.enabled | bool | `true` | HPA enabled |
-| gateway.lb.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| gateway.lb.image.pullPolicy | string | `"Always"` | image pull policy |
-| gateway.lb.image.repository | string | `"vdaas/vald-lb-gateway"` | image repository |
-| gateway.lb.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| gateway.lb.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
-| gateway.lb.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
-| gateway.lb.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
-| gateway.lb.ingress.enabled | bool | `false` | gateway ingress enabled |
-| gateway.lb.ingress.host | string | `"lb.gateway.vald.vdaas.org"` | ingress hostname |
-| gateway.lb.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
-| gateway.lb.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
-| gateway.lb.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"}]` | init containers |
-| gateway.lb.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.lb.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| gateway.lb.logging | object | `{}` | logging config (overrides defaults.logging) |
-| gateway.lb.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| gateway.lb.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
-| gateway.lb.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| gateway.lb.name | string | `"vald-lb-gateway"` | name of gateway deployment |
-| gateway.lb.nodeName | string | `""` | node name |
-| gateway.lb.nodeSelector | object | `{}` | node selector |
-| gateway.lb.observability | object | `{"otlp":{"attribute":{"service_name":"vald-lb-gateway"}}}` | observability config (overrides defaults.observability) |
-| gateway.lb.podAnnotations | object | `{}` | pod annotations |
-| gateway.lb.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
-| gateway.lb.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
-| gateway.lb.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| gateway.lb.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| gateway.lb.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
-| gateway.lb.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| gateway.lb.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| gateway.lb.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| gateway.lb.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| gateway.lb.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| gateway.lb.service.annotations | object | `{}` | service annotations |
-| gateway.lb.service.labels | object | `{}` | service labels |
-| gateway.lb.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| gateway.lb.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| gateway.lb.time_zone | string | `""` | Time zone |
-| gateway.lb.tolerations | list | `[]` | tolerations |
-| gateway.lb.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
-| gateway.lb.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| gateway.lb.version | string | `"v0.0.0"` | version of gateway config |
-| gateway.lb.volumeMounts | list | `[]` | volume mounts |
-| gateway.lb.volumes | list | `[]` | volumes |
-| gateway.mirror.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| gateway.mirror.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| gateway.mirror.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| gateway.mirror.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| gateway.mirror.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-mirror-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| gateway.mirror.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| gateway.mirror.annotations | object | `{}` | deployment annotations |
-| gateway.mirror.clusterRole.enabled | bool | `true` | creates clusterRole resource |
-| gateway.mirror.clusterRole.name | string | `"gateway-mirror"` | name of clusterRole |
-| gateway.mirror.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
-| gateway.mirror.clusterRoleBinding.name | string | `"gateway-mirror"` | name of clusterRoleBinding |
-| gateway.mirror.enabled | bool | `false` | gateway enabled |
-| gateway.mirror.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| gateway.mirror.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.mirror.gateway_config.client | object | `{}` | gRPC client (overrides defaults.grpc.client) |
-| gateway.mirror.gateway_config.colocation | string | `"dc1"` | colocation name |
-| gateway.mirror.gateway_config.discovery_duration | string | `"1s"` | duration to discovery |
-| gateway.mirror.gateway_config.gateway_addr | string | `""` | address for lb-gateway |
-| gateway.mirror.gateway_config.group | string | `""` | mirror group name |
-| gateway.mirror.gateway_config.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
-| gateway.mirror.gateway_config.net.dialer.dual_stack_enabled | bool | `false` | TCP dialer dual stack enabled |
-| gateway.mirror.gateway_config.net.dialer.keepalive | string | `"10m"` | TCP dialer keep alive |
-| gateway.mirror.gateway_config.net.dialer.timeout | string | `"30s"` | TCP dialer timeout |
-| gateway.mirror.gateway_config.net.dns.cache_enabled | bool | `true` | DNS cache enabled |
-| gateway.mirror.gateway_config.net.dns.cache_expiration | string | `"24h"` | DNS cache expiration |
-| gateway.mirror.gateway_config.net.dns.refresh_duration | string | `"5m"` | DNS cache refresh duration |
-| gateway.mirror.gateway_config.net.network | string | `"tcp"` | |
-| gateway.mirror.gateway_config.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
-| gateway.mirror.gateway_config.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
-| gateway.mirror.gateway_config.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
-| gateway.mirror.gateway_config.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
-| gateway.mirror.gateway_config.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
-| gateway.mirror.gateway_config.net.socket_option.tcp_defer_accept | bool | `true` | server listen socket option for tcp_defer_accept functionality |
-| gateway.mirror.gateway_config.net.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
-| gateway.mirror.gateway_config.net.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
-| gateway.mirror.gateway_config.net.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
-| gateway.mirror.gateway_config.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
-| gateway.mirror.gateway_config.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
-| gateway.mirror.gateway_config.net.tls.enabled | bool | `false` | TLS enabled |
-| gateway.mirror.gateway_config.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
-| gateway.mirror.gateway_config.net.tls.key | string | `"/path/to/key"` | TLS key path |
-| gateway.mirror.gateway_config.pod_name | string | `"_MY_POD_NAME_"` | self mirror gateway pod name |
-| gateway.mirror.gateway_config.register_duration | string | `"1s"` | duration to register mirror-gateway. |
-| gateway.mirror.gateway_config.self_mirror_addr | string | `""` | address for self mirror-gateway |
-| gateway.mirror.hpa.enabled | bool | `true` | HPA enabled |
-| gateway.mirror.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
-| gateway.mirror.image.pullPolicy | string | `"Always"` | image pull policy |
-| gateway.mirror.image.repository | string | `"vdaas/vald-mirror-gateway"` | image repository |
-| gateway.mirror.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| gateway.mirror.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
-| gateway.mirror.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
-| gateway.mirror.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
-| gateway.mirror.ingress.enabled | bool | `false` | gateway ingress enabled |
-| gateway.mirror.ingress.host | string | `"mirror.gateway.vald.vdaas.org"` | ingress hostname |
-| gateway.mirror.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
-| gateway.mirror.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
-| gateway.mirror.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-gateway-lb","sleepDuration":2,"target":"gateway-lb","type":"wait-for"}]` | init containers |
-| gateway.mirror.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| gateway.mirror.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| gateway.mirror.logging | object | `{}` | logging config (overrides defaults.logging) |
-| gateway.mirror.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
-| gateway.mirror.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
-| gateway.mirror.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
-| gateway.mirror.name | string | `"vald-mirror-gateway"` | name of gateway deployment |
-| gateway.mirror.nodeName | string | `""` | node name |
-| gateway.mirror.nodeSelector | object | `{}` | node selector |
-| gateway.mirror.observability | object | `{"otlp":{"attribute":{"service_name":"vald-mirror-gateway"}}}` | observability config (overrides defaults.observability) |
-| gateway.mirror.podAnnotations | object | `{}` | pod annotations |
-| gateway.mirror.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
-| gateway.mirror.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
-| gateway.mirror.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| gateway.mirror.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| gateway.mirror.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
-| gateway.mirror.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| gateway.mirror.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| gateway.mirror.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| gateway.mirror.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| gateway.mirror.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| gateway.mirror.service.annotations | object | `{}` | service annotations |
-| gateway.mirror.service.labels | object | `{}` | service labels |
-| gateway.mirror.serviceAccount.enabled | bool | `true` | creates service account |
-| gateway.mirror.serviceAccount.name | string | `"gateway-mirror"` | name of service account |
-| gateway.mirror.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| gateway.mirror.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| gateway.mirror.time_zone | string | `""` | Time zone |
-| gateway.mirror.tolerations | list | `[]` | tolerations |
-| gateway.mirror.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
-| gateway.mirror.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| gateway.mirror.version | string | `"v0.0.0"` | version of gateway config |
-| gateway.mirror.volumeMounts | list | `[]` | volume mounts |
-| gateway.mirror.volumes | list | `[]` | volumes |
-| manager.index.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| manager.index.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| manager.index.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| manager.index.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| manager.index.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity preferred scheduling terms |
-| manager.index.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| manager.index.annotations | object | `{}` | deployment annotations |
-| manager.index.corrector.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
-| manager.index.corrector.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
-| manager.index.corrector.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| manager.index.corrector.discoverer.duration | string | `"500ms"` | refresh duration to discover |
-| manager.index.corrector.enabled | bool | `false` | enable index correction CronJob |
-| manager.index.corrector.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.corrector.gateway | object | `{}` | gRPC client for gateway (overrides defaults.grpc.client) |
-| manager.index.corrector.image.pullPolicy | string | `"Always"` | |
-| manager.index.corrector.image.repository | string | `"vdaas/vald-index-correction"` | image repository |
-| manager.index.corrector.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.corrector.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
-| manager.index.corrector.kvs_background_compaction_interval | string | `"5s"` | interval of checked id list kvs compaction |
-| manager.index.corrector.kvs_background_sync_interval | string | `"5s"` | interval of checked id list kvs sync |
-| manager.index.corrector.name | string | `"vald-index-correction"` | name of index correction job |
-| manager.index.corrector.node_name | string | `""` | node name |
-| manager.index.corrector.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-correction"}}}` | observability config (overrides defaults.observability) |
-| manager.index.corrector.schedule | string | `"6 3 * * *"` | CronJob schedule setting for index correction |
-| manager.index.corrector.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.corrector.startingDeadlineSeconds | int | `86400` | startingDeadlineSeconds setting for K8s completed jobs |
-| manager.index.corrector.stream_list_concurrency | int | `200` | concurrency for stream list object rpc |
-| manager.index.corrector.suspend | bool | `false` | CronJob suspend setting for index correction |
-| manager.index.corrector.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
-| manager.index.corrector.version | string | `"v0.0.0"` | version of index manager config |
-| manager.index.creator.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
-| manager.index.creator.concurrency | int | `1` | concurrency for indexing |
-| manager.index.creator.creation_pool_size | int | `16` | number of pool size of create index processing |
-| manager.index.creator.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
-| manager.index.creator.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| manager.index.creator.discoverer.duration | string | `"500ms"` | refresh duration to discover |
-| manager.index.creator.enabled | bool | `false` | enable index creation CronJob |
-| manager.index.creator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.creator.image.pullPolicy | string | `"Always"` | |
-| manager.index.creator.image.repository | string | `"vdaas/vald-index-creation"` | image repository |
-| manager.index.creator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.creator.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
-| manager.index.creator.name | string | `"vald-index-creation"` | name of index creation job |
-| manager.index.creator.node_name | string | `""` | node name |
-| manager.index.creator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-creation"}}}` | observability config (overrides defaults.observability) |
-| manager.index.creator.schedule | string | `"* * * * *"` | CronJob schedule setting for index creation |
-| manager.index.creator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.creator.startingDeadlineSeconds | int | `43200` | startingDeadlineSeconds setting for K8s completed jobs |
-| manager.index.creator.suspend | bool | `false` | CronJob suspend setting for index creation |
-| manager.index.creator.target_addrs | list | `[]` | indexing target addresses |
-| manager.index.creator.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
-| manager.index.creator.version | string | `"v0.0.0"` | version of index manager config |
-| manager.index.enabled | bool | `true` | index manager enabled |
-| manager.index.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
-| manager.index.image.pullPolicy | string | `"Always"` | image pull policy |
-| manager.index.image.repository | string | `"vdaas/vald-manager-index"` | image repository |
-| manager.index.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.indexer.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
-| manager.index.indexer.auto_index_check_duration | string | `"1m"` | check duration of automatic indexing |
-| manager.index.indexer.auto_index_duration_limit | string | `"30m"` | limit duration of automatic indexing |
-| manager.index.indexer.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
-| manager.index.indexer.auto_save_index_duration_limit | string | `"3h"` | limit duration of automatic index saving |
-| manager.index.indexer.auto_save_index_wait_duration | string | `"10m"` | duration of automatic index saving wait duration for next saving |
-| manager.index.indexer.concurrency | int | `1` | concurrency |
-| manager.index.indexer.creation_pool_size | int | `16` | number of pool size of create index processing |
-| manager.index.indexer.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
-| manager.index.indexer.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| manager.index.indexer.discoverer.duration | string | `"500ms"` | refresh duration to discover |
-| manager.index.indexer.node_name | string | `""` | node name |
-| manager.index.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
-| manager.index.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| manager.index.logging | object | `{}` | logging config (overrides defaults.logging) |
-| manager.index.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
-| manager.index.name | string | `"vald-manager-index"` | name of index manager deployment |
-| manager.index.nodeName | string | `""` | node name |
-| manager.index.nodeSelector | object | `{}` | node selector |
-| manager.index.observability | object | `{"otlp":{"attribute":{"service_name":"vald-manager-index"}}}` | observability config (overrides defaults.observability) |
-| manager.index.operator | object | `{"affinity":{"nodeAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[],"requiredDuringSchedulingIgnoredDuringExecution":{"nodeSelectorTerms":[]}},"podAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[],"requiredDuringSchedulingIgnoredDuringExecution":[]},"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-index-operator"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}],"requiredDuringSchedulingIgnoredDuringExecution":[]}},"annotations":{},"enabled":false,"env":[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}],"image":{"pullPolicy":"Always","repository":"vdaas/vald-index-operator","tag":""},"initContainers":[],"kind":"Deployment","logging":{},"name":"vald-index-operator","namespace":"_MY_POD_NAMESPACE_","nodeName":"","nodeSelector":{},"observability":{"otlp":{"attribute":{"service_name":"vald-index-operator"}}},"podAnnotations":{},"podPriority":{"enabled":true,"value":1000000},"podSecurityContext":{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"progressDeadlineSeconds":600,"replicas":1,"resources":{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}},"revisionHistoryLimit":2,"rollingUpdate":{"maxSurge":"25%","maxUnavailable":"25%"},"rotation_job_concurrency":2,"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"server_config":{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}},"terminationGracePeriodSeconds":30,"time_zone":"","tolerations":[],"topologySpreadConstraints":[],"version":"v0.0.0","volumeMounts":[],"volumes":[]}` | [THIS FEATURE IS WIP] operator that manages vald index |
-| manager.index.operator.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
-| manager.index.operator.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
-| manager.index.operator.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
-| manager.index.operator.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
-| manager.index.operator.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-index-operator"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
-| manager.index.operator.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
-| manager.index.operator.annotations | object | `{}` | deployment annotations |
-| manager.index.operator.enabled | bool | `false` | index operator enabled |
-| manager.index.operator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.operator.image.pullPolicy | string | `"Always"` | image pull policy |
-| manager.index.operator.image.repository | string | `"vdaas/vald-index-operator"` | image repository |
-| manager.index.operator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.operator.initContainers | list | `[]` | init containers |
-| manager.index.operator.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
-| manager.index.operator.logging | object | `{}` | logging config (overrides defaults.logging) |
-| manager.index.operator.name | string | `"vald-index-operator"` | name of manager.index.operator deployment |
-| manager.index.operator.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
-| manager.index.operator.nodeName | string | `""` | node name |
-| manager.index.operator.nodeSelector | object | `{}` | node selector |
-| manager.index.operator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-operator"}}}` | observability config (overrides defaults.observability) |
-| manager.index.operator.podAnnotations | object | `{}` | pod annotations |
-| manager.index.operator.podPriority.enabled | bool | `true` | manager.index.operator pod PriorityClass enabled |
-| manager.index.operator.podPriority.value | int | `1000000` | manager.index.operator pod PriorityClass value |
-| manager.index.operator.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| manager.index.operator.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| manager.index.operator.replicas | int | `1` | number of replicas. |
-| manager.index.operator.resources | object | `{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}}` | compute resources |
-| manager.index.operator.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| manager.index.operator.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| manager.index.operator.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| manager.index.operator.rotation_job_concurrency | int | `2` | maximum concurrent rotator job run. |
-| manager.index.operator.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| manager.index.operator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.operator.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| manager.index.operator.time_zone | string | `""` | Time zone |
-| manager.index.operator.tolerations | list | `[]` | tolerations |
-| manager.index.operator.topologySpreadConstraints | list | `[]` | topology spread constraints of manager.index.operator pods |
-| manager.index.operator.version | string | `"v0.0.0"` | version of index operator config |
-| manager.index.operator.volumeMounts | list | `[]` | volume mounts |
-| manager.index.operator.volumes | list | `[]` | volumes |
-| manager.index.podAnnotations | object | `{}` | pod annotations |
-| manager.index.podPriority.enabled | bool | `true` | index manager pod PriorityClass enabled |
-| manager.index.podPriority.value | int | `1000000` | index manager pod PriorityClass value |
-| manager.index.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| manager.index.progressDeadlineSeconds | int | `600` | progress deadline seconds |
-| manager.index.readreplica.rotator | object | `{"agent_namespace":"_MY_POD_NAMESPACE_","clusterRole":{"enabled":true,"name":"vald-readreplica-rotate"},"clusterRoleBinding":{"enabled":true,"name":"vald-readreplica-rotate"},"env":[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}],"image":{"pullPolicy":"Always","repository":"vdaas/vald-readreplica-rotate","tag":""},"initContainers":[],"name":"vald-readreplica-rotate","observability":{"otlp":{"attribute":{"service_name":"vald-readreplica-rotate"}}},"podSecurityContext":{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"server_config":{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}},"serviceAccount":{"enabled":true,"name":"vald-readreplica-rotate"},"target_read_replica_id_annotations_key":"vald.vdaas.org/target-read-replica-id","ttlSecondsAfterFinished":86400,"version":"v0.0.0"}` | [This feature is work in progress] readreplica agents rotation job |
-| manager.index.readreplica.rotator.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
-| manager.index.readreplica.rotator.clusterRole.enabled | bool | `true` | creates clusterRole resource |
-| manager.index.readreplica.rotator.clusterRole.name | string | `"vald-readreplica-rotate"` | name of clusterRole |
-| manager.index.readreplica.rotator.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
-| manager.index.readreplica.rotator.clusterRoleBinding.name | string | `"vald-readreplica-rotate"` | name of clusterRoleBinding |
-| manager.index.readreplica.rotator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.readreplica.rotator.image.repository | string | `"vdaas/vald-readreplica-rotate"` | image repository |
-| manager.index.readreplica.rotator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.readreplica.rotator.initContainers | list | `[]` | init containers |
-| manager.index.readreplica.rotator.name | string | `"vald-readreplica-rotate"` | name of readreplica rotator job |
-| manager.index.readreplica.rotator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-readreplica-rotate"}}}` | observability config (overrides defaults.observability) |
-| manager.index.readreplica.rotator.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
-| manager.index.readreplica.rotator.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| manager.index.readreplica.rotator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.readreplica.rotator.serviceAccount.enabled | bool | `true` | creates service account |
-| manager.index.readreplica.rotator.serviceAccount.name | string | `"vald-readreplica-rotate"` | name of service account |
-| manager.index.readreplica.rotator.target_read_replica_id_annotations_key | string | `"vald.vdaas.org/target-read-replica-id"` | name of annotations key for target read replica id |
-| manager.index.readreplica.rotator.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
-| manager.index.readreplica.rotator.version | string | `"v0.0.0"` | version of readreplica rotator config |
-| manager.index.replicas | int | `1` | number of replicas |
-| manager.index.resources | object | `{"limits":{"cpu":"1000m","memory":"500Mi"},"requests":{"cpu":"200m","memory":"80Mi"}}` | compute resources |
-| manager.index.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
-| manager.index.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
-| manager.index.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
-| manager.index.saver.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
-| manager.index.saver.concurrency | int | `1` | concurrency for index saving |
-| manager.index.saver.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
-| manager.index.saver.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
-| manager.index.saver.discoverer.duration | string | `"500ms"` | refresh duration to discover |
-| manager.index.saver.enabled | bool | `false` | enable index save CronJob |
-| manager.index.saver.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
-| manager.index.saver.image.pullPolicy | string | `"Always"` | |
-| manager.index.saver.image.repository | string | `"vdaas/vald-index-save"` | image repository |
-| manager.index.saver.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
-| manager.index.saver.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
-| manager.index.saver.name | string | `"vald-index-save"` | name of index save job |
-| manager.index.saver.node_name | string | `""` | node name |
-| manager.index.saver.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-save"}}}` | observability config (overrides defaults.observability) |
-| manager.index.saver.schedule | string | `"0 */3 * * *"` | CronJob schedule setting for index save |
-| manager.index.saver.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.saver.startingDeadlineSeconds | int | `43200` | startingDeadlineSeconds setting for K8s completed jobs |
-| manager.index.saver.suspend | bool | `false` | CronJob suspend setting for index creation |
-| manager.index.saver.target_addrs | list | `[]` | index saving target addresses |
-| manager.index.saver.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
-| manager.index.saver.version | string | `"v0.0.0"` | version of index manager config |
-| manager.index.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
-| manager.index.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
-| manager.index.service.annotations | object | `{}` | service annotations |
-| manager.index.service.labels | object | `{}` | service labels |
-| manager.index.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
-| manager.index.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
-| manager.index.time_zone | string | `""` | Time zone |
-| manager.index.tolerations | list | `[]` | tolerations |
-| manager.index.topologySpreadConstraints | list | `[]` | topology spread constraints of index manager pods |
-| manager.index.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
-| manager.index.version | string | `"v0.0.0"` | version of index manager config |
-| manager.index.volumeMounts | list | `[]` | volume mounts |
-| manager.index.volumes | list | `[]` | volumes |
+| Key | Type | Default | Description |
+| -------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| agent.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| agent.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| agent.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| agent.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| agent.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-agent"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| agent.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| agent.algorithm | string | `"ngt"` | agent algorithm type. it should be `ngt` or `faiss`. |
+| agent.annotations | object | `{}` | deployment annotations |
+| agent.clusterRole.enabled | bool | `true` | creates clusterRole resource |
+| agent.clusterRole.name | string | `"agent"` | name of clusterRole |
+| agent.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
+| agent.clusterRoleBinding.name | string | `"agent"` | name of clusterRoleBinding |
+| agent.enabled | bool | `true` | agent enabled |
+| agent.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| agent.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| agent.faiss.auto_index_check_duration | string | `"30m"` | check duration of automatic indexing |
+| agent.faiss.auto_index_duration_limit | string | `"24h"` | limit duration of automatic indexing |
+| agent.faiss.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
+| agent.faiss.auto_save_index_duration | string | `"35m"` | duration of automatic save index |
+| agent.faiss.dimension | int | `4096` | vector dimension |
+| agent.faiss.enable_copy_on_write | bool | `false` | enable copy on write saving for more stable backup |
+| agent.faiss.enable_in_memory_mode | bool | `true` | in-memory mode enabled |
+| agent.faiss.enable_proactive_gc | bool | `false` | enable proactive GC call for reducing heap memory allocation |
+| agent.faiss.index_path | string | `""` | path to index data |
+| agent.faiss.initial_delay_max_duration | string | `"3m"` | maximum duration for initial delay |
+| agent.faiss.kvsdb.concurrency | int | `6` | kvsdb processing concurrency |
+| agent.faiss.load_index_timeout_factor | string | `"1ms"` | a factor of load index timeout. timeout duration will be calculated by (index count to be loaded) \* (factor). |
+| agent.faiss.m | int | `8` | m |
+| agent.faiss.max_load_index_timeout | string | `"10m"` | maximum duration of load index timeout |
+| agent.faiss.method_type | string | `"ivfpq"` | method type it should be `ivfpq` or `binaryindex` |
+| agent.faiss.metric_type | string | `"l2"` | metric type it should be `innerproduct` or `l2` |
+| agent.faiss.min_load_index_timeout | string | `"3m"` | minimum duration of load index timeout |
+| agent.faiss.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of myself |
+| agent.faiss.nbits_per_idx | int | `8` | nbits_per_idx |
+| agent.faiss.nlist | int | `100` | nlist |
+| agent.faiss.pod_name | string | `"_MY_POD_NAME_"` | pod name of myself |
+| agent.faiss.vqueue.delete_buffer_pool_size | int | `5000` | delete slice pool buffer size |
+| agent.faiss.vqueue.insert_buffer_pool_size | int | `10000` | insert slice pool buffer size |
+| agent.hpa.enabled | bool | `false` | HPA enabled |
+| agent.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| agent.image.pullPolicy | string | `"Always"` | image pull policy |
+| agent.image.repository | string | `"vdaas/vald-agent-ngt"` | image repository |
+| agent.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| agent.initContainers | list | `[]` | init containers |
+| agent.kind | string | `"StatefulSet"` | deployment kind: Deployment, DaemonSet or StatefulSet |
+| agent.logging | object | `{}` | logging config (overrides defaults.logging) |
+| agent.maxReplicas | int | `300` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| agent.maxUnavailable | string | `"1"` | maximum number of unavailable replicas |
+| agent.minReplicas | int | `20` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| agent.name | string | `"vald-agent"` | name of agent deployment |
+| agent.ngt.auto_create_index_pool_size | int | `16` | batch process pool size of automatic create index operation |
+| agent.ngt.auto_index_check_duration | string | `"30m"` | check duration of automatic indexing |
+| agent.ngt.auto_index_duration_limit | string | `"24h"` | limit duration of automatic indexing |
+| agent.ngt.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
+| agent.ngt.auto_save_index_duration | string | `"35m"` | duration of automatic save index |
+| agent.ngt.broken_index_history_limit | int | `0` | maximum number of broken index generations to backup |
+| agent.ngt.bulk_insert_chunk_size | int | `10` | bulk insert chunk size |
+| agent.ngt.creation_edge_size | int | `50` | creation edge size |
+| agent.ngt.default_epsilon | float | `0.05` | default epsilon used for search |
+| agent.ngt.default_pool_size | int | `16` | default create index batch pool size |
+| agent.ngt.default_radius | float | `-1` | default radius used for search |
+| agent.ngt.dimension | int | `4096` | vector dimension |
+| agent.ngt.distance_type | string | `"l2"` | distance type. it should be `l1`, `l2`, `angle`, `hamming`, `cosine`,`poincare`, `lorentz`, `jaccard`, `sparsejaccard`, `normalizedangle` or `normalizedcosine` or `innerproduct`. for further details about NGT libraries supported distance is https://github.com/yahoojapan/NGT/wiki/Command-Quick-Reference and vald agent's supported NGT distance type is https://pkg.go.dev/github.com/vdaas/vald/internal/core/algorithm/ngt#pkg-constants |
+| agent.ngt.enable_copy_on_write | bool | `false` | enable copy on write saving for more stable backup |
+| agent.ngt.enable_export_index_info_to_k8s | bool | `false` | enable export index info to k8s |
+| agent.ngt.enable_in_memory_mode | bool | `true` | in-memory mode enabled |
+| agent.ngt.enable_proactive_gc | bool | `false` | enable proactive GC call for reducing heap memory allocation |
+| agent.ngt.enable_statistics | bool | `false` | enable index statistics loading |
+| agent.ngt.error_buffer_limit | int | `10` | maximum number of core ngt error buffer pool size limit |
+| agent.ngt.export_index_info_duration | string | `"1m"` | duration of exporting index info |
+| agent.ngt.index_path | string | `""` | path to index data |
+| agent.ngt.initial_delay_max_duration | string | `"3m"` | maximum duration for initial delay |
+| agent.ngt.kvsdb.concurrency | int | `6` | kvsdb processing concurrency |
+| agent.ngt.load_index_timeout_factor | string | `"1ms"` | a factor of load index timeout. timeout duration will be calculated by (index count to be loaded) \* (factor). |
+| agent.ngt.max_load_index_timeout | string | `"10m"` | maximum duration of load index timeout |
+| agent.ngt.min_load_index_timeout | string | `"3m"` | minimum duration of load index timeout |
+| agent.ngt.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of myself |
+| agent.ngt.object_type | string | `"float"` | object type. it should be `float` or `uint8` or `float16`. for further details: https://github.com/yahoojapan/NGT/wiki/Command-Quick-Reference |
+| agent.ngt.pod_name | string | `"_MY_POD_NAME_"` | pod name of myself |
+| agent.ngt.search_edge_size | int | `50` | search edge size |
+| agent.ngt.vqueue.delete_buffer_pool_size | int | `5000` | delete slice pool buffer size |
+| agent.ngt.vqueue.insert_buffer_pool_size | int | `10000` | insert slice pool buffer size |
+| agent.nodeName | string | `""` | node name |
+| agent.nodeSelector | object | `{}` | node selector |
+| agent.observability | object | `{"otlp":{"attribute":{"service_name":"vald-agent"}}}` | observability config (overrides defaults.observability) |
+| agent.persistentVolume.accessMode | string | `"ReadWriteOncePod"` | agent pod storage accessMode |
+| agent.persistentVolume.enabled | bool | `false` | enables PVC. It is required to enable if agent pod's file store functionality is enabled with non in-memory mode |
+| agent.persistentVolume.mountPropagation | string | `"None"` | agent pod storage mountPropagation |
+| agent.persistentVolume.size | string | `"100Gi"` | size of agent pod volume |
+| agent.persistentVolume.storageClass | string | `"vald-sc"` | storageClass name for agent pod volume |
+| agent.podAnnotations | object | `{}` | pod annotations |
+| agent.podManagementPolicy | string | `"OrderedReady"` | pod management policy: OrderedReady or Parallel |
+| agent.podPriority.enabled | bool | `true` | agent pod PriorityClass enabled |
+| agent.podPriority.value | int | `1000000000` | agent pod PriorityClass value |
+| agent.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| agent.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| agent.readreplica | object | `{"component_name":"agent-readreplica","enabled":false,"hpa":{"enabled":false,"targetCPUUtilizationPercentage":80},"label_key":"vald-readreplica-id","maxReplicas":3,"minReplicas":1,"name":"vald-agent-ngt-readreplica","service":{"annotations":{}},"snapshot_classname":"","volume_name":"vald-agent-ngt-readreplica-pvc"}` | readreplica deployment annotations |
+| agent.readreplica.component_name | string | `"agent-readreplica"` | app.kubernetes.io/component name of agent readreplica |
+| agent.readreplica.enabled | bool | `false` | [This feature is WORK IN PROGRESS]enable agent readreplica |
+| agent.readreplica.hpa.enabled | bool | `false` | HPA enabled |
+| agent.readreplica.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| agent.readreplica.label_key | string | `"vald-readreplica-id"` | label key to identify read replica resources |
+| agent.readreplica.maxReplicas | int | `3` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| agent.readreplica.minReplicas | int | `1` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| agent.readreplica.name | string | `"vald-agent-ngt-readreplica"` | name of agent readreplica |
+| agent.readreplica.service | object | `{"annotations":{}}` | service settings for read replica service resources |
+| agent.readreplica.service.annotations | object | `{}` | readreplica deployment annotations |
+| agent.readreplica.snapshot_classname | string | `""` | snapshot class name for snapshotter used for read replica |
+| agent.readreplica.volume_name | string | `"vald-agent-ngt-readreplica-pvc"` | name of clone volume of agent pvc for read replica |
+| agent.resources | object | `{"requests":{"cpu":"300m","memory":"4Gi"}}` | compute resources. recommended setting of memory requests = cluster memory \* 0.4 / number of agent pods |
+| agent.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| agent.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| agent.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| agent.rollingUpdate.partition | int | `0` | StatefulSet partition |
+| agent.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":false,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| agent.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{"startupProbe":{"failureThreshold":200,"periodSeconds":5}}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| agent.service.annotations | object | `{}` | service annotations |
+| agent.service.labels | object | `{}` | service labels |
+| agent.serviceAccount.enabled | bool | `true` | creates service account |
+| agent.serviceAccount.name | string | `"agent-ngt"` | name of service account |
+| agent.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| agent.sidecar.config.auto_backup_duration | string | `"24h"` | auto backup duration |
+| agent.sidecar.config.auto_backup_enabled | bool | `true` | auto backup triggered by timer is enabled |
+| agent.sidecar.config.blob_storage.bucket | string | `""` | bucket name |
+| agent.sidecar.config.blob_storage.cloud_storage.client.credentials_file_path | string | `""` | credentials file path |
+| agent.sidecar.config.blob_storage.cloud_storage.client.credentials_json | string | `""` | credentials json |
+| agent.sidecar.config.blob_storage.cloud_storage.url | string | `""` | cloud storage url |
+| agent.sidecar.config.blob_storage.cloud_storage.write_buffer_size | int | `0` | bytes of the chunks for upload |
+| agent.sidecar.config.blob_storage.cloud_storage.write_cache_control | string | `""` | Cache-Control of HTTP Header |
+| agent.sidecar.config.blob_storage.cloud_storage.write_content_disposition | string | `""` | Content-Disposition of HTTP Header |
+| agent.sidecar.config.blob_storage.cloud_storage.write_content_encoding | string | `""` | the encoding of the blob's content |
+| agent.sidecar.config.blob_storage.cloud_storage.write_content_language | string | `""` | the language of blob's content |
+| agent.sidecar.config.blob_storage.cloud_storage.write_content_type | string | `""` | MIME type of the blob |
+| agent.sidecar.config.blob_storage.s3.access_key | string | `"_AWS_ACCESS_KEY_"` | s3 access key |
+| agent.sidecar.config.blob_storage.s3.enable_100_continue | bool | `true` | enable AWS SDK adding the 'Expect: 100-Continue' header to PUT requests over 2MB of content. |
+| agent.sidecar.config.blob_storage.s3.enable_content_md5_validation | bool | `true` | enable the S3 client to add MD5 checksum to upload API calls. |
+| agent.sidecar.config.blob_storage.s3.enable_endpoint_discovery | bool | `false` | enable endpoint discovery |
+| agent.sidecar.config.blob_storage.s3.enable_endpoint_host_prefix | bool | `true` | enable prefixing request endpoint hosts with modeled information |
+| agent.sidecar.config.blob_storage.s3.enable_param_validation | bool | `true` | enables semantic parameter validation |
+| agent.sidecar.config.blob_storage.s3.enable_ssl | bool | `true` | enable ssl for s3 session |
+| agent.sidecar.config.blob_storage.s3.endpoint | string | `""` | s3 endpoint |
+| agent.sidecar.config.blob_storage.s3.force_path_style | bool | `false` | use path-style addressing |
+| agent.sidecar.config.blob_storage.s3.max_chunk_size | string | `"64mb"` | s3 download max chunk size |
+| agent.sidecar.config.blob_storage.s3.max_part_size | string | `"64mb"` | s3 multipart upload max part size |
+| agent.sidecar.config.blob_storage.s3.max_retries | int | `3` | maximum number of retries of s3 client |
+| agent.sidecar.config.blob_storage.s3.region | string | `""` | s3 region |
+| agent.sidecar.config.blob_storage.s3.secret_access_key | string | `"_AWS_SECRET_ACCESS_KEY_"` | s3 secret access key |
+| agent.sidecar.config.blob_storage.s3.token | string | `""` | s3 token |
+| agent.sidecar.config.blob_storage.s3.use_accelerate | bool | `false` | enable s3 accelerate feature |
+| agent.sidecar.config.blob_storage.s3.use_arn_region | bool | `false` | s3 service client to use the region specified in the ARN |
+| agent.sidecar.config.blob_storage.s3.use_dual_stack | bool | `false` | use dual stack |
+| agent.sidecar.config.blob_storage.storage_type | string | `"s3"` | storage type |
+| agent.sidecar.config.client.net.dialer.dual_stack_enabled | bool | `false` | HTTP client TCP dialer dual stack enabled |
+| agent.sidecar.config.client.net.dialer.keepalive | string | `"5m"` | HTTP client TCP dialer keep alive |
+| agent.sidecar.config.client.net.dialer.timeout | string | `"5s"` | HTTP client TCP dialer connect timeout |
+| agent.sidecar.config.client.net.dns.cache_enabled | bool | `true` | HTTP client DNS cache enabled |
+| agent.sidecar.config.client.net.dns.cache_expiration | string | `"24h"` | |
+| agent.sidecar.config.client.net.dns.refresh_duration | string | `"1h"` | HTTP client DNS cache expiration |
+| agent.sidecar.config.client.net.network | string | `"tcp"` | gRPC client dialer network type |
+| agent.sidecar.config.client.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| agent.sidecar.config.client.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| agent.sidecar.config.client.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| agent.sidecar.config.client.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| agent.sidecar.config.client.net.socket_option.tcp_cork | bool | `true` | server listen socket option for tcp_cork functionality |
+| agent.sidecar.config.client.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| agent.sidecar.config.client.net.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
+| agent.sidecar.config.client.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| agent.sidecar.config.client.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| agent.sidecar.config.client.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| agent.sidecar.config.client.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| agent.sidecar.config.client.net.tls.enabled | bool | `false` | TLS enabled |
+| agent.sidecar.config.client.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| agent.sidecar.config.client.net.tls.key | string | `"/path/to/key"` | TLS key path |
+| agent.sidecar.config.client.transport.backoff.backoff_factor | float | `1.1` | backoff backoff factor |
+| agent.sidecar.config.client.transport.backoff.backoff_time_limit | string | `"5s"` | backoff time limit |
+| agent.sidecar.config.client.transport.backoff.enable_error_log | bool | `true` | backoff error log enabled |
+| agent.sidecar.config.client.transport.backoff.initial_duration | string | `"5ms"` | backoff initial duration |
+| agent.sidecar.config.client.transport.backoff.jitter_limit | string | `"100ms"` | backoff jitter limit |
+| agent.sidecar.config.client.transport.backoff.maximum_duration | string | `"5s"` | backoff maximum duration |
+| agent.sidecar.config.client.transport.backoff.retry_count | int | `100` | backoff retry count |
+| agent.sidecar.config.client.transport.round_tripper.expect_continue_timeout | string | `"5s"` | expect continue timeout |
+| agent.sidecar.config.client.transport.round_tripper.force_attempt_http_2 | bool | `true` | force attempt HTTP2 |
+| agent.sidecar.config.client.transport.round_tripper.idle_conn_timeout | string | `"90s"` | timeout for idle connections |
+| agent.sidecar.config.client.transport.round_tripper.max_conns_per_host | int | `10` | maximum count of connections per host |
+| agent.sidecar.config.client.transport.round_tripper.max_idle_conns | int | `100` | maximum count of idle connections |
+| agent.sidecar.config.client.transport.round_tripper.max_idle_conns_per_host | int | `10` | maximum count of idle connections per host |
+| agent.sidecar.config.client.transport.round_tripper.max_response_header_size | int | `0` | maximum response header size |
+| agent.sidecar.config.client.transport.round_tripper.read_buffer_size | int | `0` | read buffer size |
+| agent.sidecar.config.client.transport.round_tripper.response_header_timeout | string | `"5s"` | timeout for response header |
+| agent.sidecar.config.client.transport.round_tripper.tls_handshake_timeout | string | `"5s"` | TLS handshake timeout |
+| agent.sidecar.config.client.transport.round_tripper.write_buffer_size | int | `0` | write buffer size |
+| agent.sidecar.config.compress.compress_algorithm | string | `"gzip"` | compression algorithm. must be `gob`, `gzip`, `lz4` or `zstd` |
+| agent.sidecar.config.compress.compression_level | int | `-1` | compression level. value range relies on which algorithm is used. `gob`: level will be ignored. `gzip`: -1 (default compression), 0 (no compression), or 1 (best speed) to 9 (best compression). `lz4`: >= 0, higher is better compression. `zstd`: 1 (fastest) to 22 (best), however implementation relies on klauspost/compress. |
+| agent.sidecar.config.filename | string | `"_MY_POD_NAME_"` | backup filename |
+| agent.sidecar.config.filename_suffix | string | `".tar.gz"` | suffix for backup filename |
+| agent.sidecar.config.post_stop_timeout | string | `"2m"` | timeout for observing file changes during post stop |
+| agent.sidecar.config.restore_backoff.backoff_factor | float | `1.2` | restore backoff factor |
+| agent.sidecar.config.restore_backoff.backoff_time_limit | string | `"30m"` | restore backoff time limit |
+| agent.sidecar.config.restore_backoff.enable_error_log | bool | `true` | restore backoff log enabled |
+| agent.sidecar.config.restore_backoff.initial_duration | string | `"1s"` | restore backoff initial duration |
+| agent.sidecar.config.restore_backoff.jitter_limit | string | `"10s"` | restore backoff jitter limit |
+| agent.sidecar.config.restore_backoff.maximum_duration | string | `"1m"` | restore backoff maximum duration |
+| agent.sidecar.config.restore_backoff.retry_count | int | `100` | restore backoff retry count |
+| agent.sidecar.config.restore_backoff_enabled | bool | `false` | restore backoff enabled |
+| agent.sidecar.config.watch_enabled | bool | `true` | auto backup triggered by file changes is enabled |
+| agent.sidecar.enabled | bool | `false` | sidecar enabled |
+| agent.sidecar.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}},{"name":"AWS_ACCESS_KEY","valueFrom":{"secretKeyRef":{"key":"access-key","name":"aws-secret"}}},{"name":"AWS_SECRET_ACCESS_KEY","valueFrom":{"secretKeyRef":{"key":"secret-access-key","name":"aws-secret"}}}]` | environment variables |
+| agent.sidecar.image.pullPolicy | string | `"Always"` | image pull policy |
+| agent.sidecar.image.repository | string | `"vdaas/vald-agent-sidecar"` | image repository |
+| agent.sidecar.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| agent.sidecar.initContainerEnabled | bool | `false` | sidecar on initContainer mode enabled. |
+| agent.sidecar.logging | object | `{}` | logging config (overrides defaults.logging) |
+| agent.sidecar.name | string | `"vald-agent-sidecar"` | name of agent sidecar |
+| agent.sidecar.observability | object | `{"otlp":{"attribute":{"service_name":"vald-agent-sidecar"}}}` | observability config (overrides defaults.observability) |
+| agent.sidecar.resources | object | `{"requests":{"cpu":"100m","memory":"100Mi"}}` | compute resources. |
+| agent.sidecar.server_config | object | `{"healths":{"liveness":{"enabled":false,"port":13000,"servicePort":13000},"readiness":{"enabled":false,"port":13001,"servicePort":13001},"startup":{"enabled":false,"port":13001}},"metrics":{"pprof":{"port":16060,"servicePort":16060}},"servers":{"grpc":{"enabled":false,"port":18081,"servicePort":18081},"rest":{"enabled":false,"port":18080,"servicePort":18080}}}` | server config (overrides defaults.server_config) |
+| agent.sidecar.service.annotations | object | `{}` | agent sidecar service annotations |
+| agent.sidecar.service.enabled | bool | `false` | agent sidecar service enabled |
+| agent.sidecar.service.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| agent.sidecar.service.labels | object | `{}` | agent sidecar service labels |
+| agent.sidecar.service.type | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| agent.sidecar.time_zone | string | `""` | Time zone |
+| agent.sidecar.version | string | `"v0.0.0"` | version of agent sidecar config |
+| agent.terminationGracePeriodSeconds | int | `120` | duration in seconds pod needs to terminate gracefully |
+| agent.time_zone | string | `""` | Time zone |
+| agent.tolerations | list | `[]` | tolerations |
+| agent.topologySpreadConstraints | list | `[]` | topology spread constraints for agent pods |
+| agent.unhealthyPodEvictionPolicy | string | `"IfHealthyBudget"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| agent.version | string | `"v0.0.0"` | version of agent config |
+| agent.volumeMounts | list | `[]` | volume mounts |
+| agent.volumes | list | `[]` | volumes |
+| defaults.grpc.client.addrs | list | `[]` | gRPC client addresses |
+| defaults.grpc.client.backoff.backoff_factor | float | `1.1` | gRPC client backoff factor |
+| defaults.grpc.client.backoff.backoff_time_limit | string | `"5s"` | gRPC client backoff time limit |
+| defaults.grpc.client.backoff.enable_error_log | bool | `true` | gRPC client backoff log enabled |
+| defaults.grpc.client.backoff.initial_duration | string | `"5ms"` | gRPC client backoff initial duration |
+| defaults.grpc.client.backoff.jitter_limit | string | `"100ms"` | gRPC client backoff jitter limit |
+| defaults.grpc.client.backoff.maximum_duration | string | `"5s"` | gRPC client backoff maximum duration |
+| defaults.grpc.client.backoff.retry_count | int | `100` | gRPC client backoff retry count |
+| defaults.grpc.client.call_option.content_subtype | string | `""` | gRPC client call option content subtype |
+| defaults.grpc.client.call_option.max_recv_msg_size | int | `0` | gRPC client call option max receive message size |
+| defaults.grpc.client.call_option.max_retry_rpc_buffer_size | int | `0` | gRPC client call option max retry rpc buffer size |
+| defaults.grpc.client.call_option.max_send_msg_size | int | `0` | gRPC client call option max send message size |
+| defaults.grpc.client.call_option.wait_for_ready | bool | `true` | gRPC client call option wait for ready |
+| defaults.grpc.client.circuit_breaker.closed_error_rate | float | `0.7` | gRPC client circuitbreaker closed error rate |
+| defaults.grpc.client.circuit_breaker.closed_refresh_timeout | string | `"10s"` | gRPC client circuitbreaker closed refresh timeout |
+| defaults.grpc.client.circuit_breaker.half_open_error_rate | float | `0.5` | gRPC client circuitbreaker half-open error rate |
+| defaults.grpc.client.circuit_breaker.min_samples | int | `1000` | gRPC client circuitbreaker minimum sampling count |
+| defaults.grpc.client.circuit_breaker.open_timeout | string | `"1s"` | gRPC client circuitbreaker open timeout |
+| defaults.grpc.client.connection_pool.enable_dns_resolver | bool | `true` | enables gRPC client connection pool dns resolver, when enabled vald uses ip handshake exclude dns discovery which improves network performance |
+| defaults.grpc.client.connection_pool.enable_rebalance | bool | `true` | enables gRPC client connection pool rebalance |
+| defaults.grpc.client.connection_pool.old_conn_close_duration | string | `"2m"` | makes delay before gRPC client connection closing during connection pool rebalance |
+| defaults.grpc.client.connection_pool.rebalance_duration | string | `"30m"` | gRPC client connection pool rebalance duration |
+| defaults.grpc.client.connection_pool.size | int | `3` | gRPC client connection pool size |
+| defaults.grpc.client.dial_option.authority | string | `""` | gRPC client dial option authority |
+| defaults.grpc.client.dial_option.backoff_base_delay | string | `"1s"` | gRPC client dial option base backoff delay |
+| defaults.grpc.client.dial_option.backoff_jitter | float | `0.2` | gRPC client dial option base backoff delay |
+| defaults.grpc.client.dial_option.backoff_max_delay | string | `"120s"` | gRPC client dial option max backoff delay |
+| defaults.grpc.client.dial_option.backoff_multiplier | float | `1.6` | gRPC client dial option base backoff delay |
+| defaults.grpc.client.dial_option.disable_retry | bool | `false` | gRPC client dial option disables retry |
+| defaults.grpc.client.dial_option.enable_backoff | bool | `false` | gRPC client dial option backoff enabled |
+| defaults.grpc.client.dial_option.idle_timeout | string | `"1h"` | gRPC client dial option idle_timeout |
+| defaults.grpc.client.dial_option.initial_connection_window_size | int | `2097152` | gRPC client dial option initial connection window size |
+| defaults.grpc.client.dial_option.initial_window_size | int | `1048576` | gRPC client dial option initial window size |
+| defaults.grpc.client.dial_option.insecure | bool | `true` | gRPC client dial option insecure enabled |
+| defaults.grpc.client.dial_option.interceptors | list | `[]` | gRPC client interceptors |
+| defaults.grpc.client.dial_option.keepalive.permit_without_stream | bool | `false` | gRPC client keep alive permit without stream |
+| defaults.grpc.client.dial_option.keepalive.time | string | `""` | gRPC client keep alive time |
+| defaults.grpc.client.dial_option.keepalive.timeout | string | `"30s"` | gRPC client keep alive timeout |
+| defaults.grpc.client.dial_option.max_call_attempts | int | `0` | gRPC client dial option number of max call attempts |
+| defaults.grpc.client.dial_option.max_header_list_size | int | `0` | gRPC client dial option max header list size |
+| defaults.grpc.client.dial_option.max_msg_size | int | `0` | gRPC client dial option max message size |
+| defaults.grpc.client.dial_option.min_connection_timeout | string | `"20s"` | gRPC client dial option minimum connection timeout |
+| defaults.grpc.client.dial_option.net.dialer.dual_stack_enabled | bool | `true` | gRPC client TCP dialer dual stack enabled |
+| defaults.grpc.client.dial_option.net.dialer.keepalive | string | `""` | gRPC client TCP dialer keep alive |
+| defaults.grpc.client.dial_option.net.dialer.timeout | string | `""` | gRPC client TCP dialer timeout |
+| defaults.grpc.client.dial_option.net.dns.cache_enabled | bool | `true` | gRPC client DNS cache enabled |
+| defaults.grpc.client.dial_option.net.dns.cache_expiration | string | `"1h"` | gRPC client DNS cache expiration |
+| defaults.grpc.client.dial_option.net.dns.refresh_duration | string | `"30m"` | gRPC client DNS cache refresh duration |
+| defaults.grpc.client.dial_option.net.network | string | `"tcp"` | gRPC client dialer network type |
+| defaults.grpc.client.dial_option.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.grpc.client.dial_option.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.grpc.client.dial_option.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.grpc.client.dial_option.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.grpc.client.dial_option.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| defaults.grpc.client.dial_option.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.grpc.client.dial_option.net.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
+| defaults.grpc.client.dial_option.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| defaults.grpc.client.dial_option.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| defaults.grpc.client.dial_option.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| defaults.grpc.client.dial_option.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| defaults.grpc.client.dial_option.net.tls.enabled | bool | `false` | TLS enabled |
+| defaults.grpc.client.dial_option.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| defaults.grpc.client.dial_option.net.tls.key | string | `"/path/to/key"` | TLS key path |
+| defaults.grpc.client.dial_option.read_buffer_size | int | `0` | gRPC client dial option read buffer size |
+| defaults.grpc.client.dial_option.shared_write_buffer | bool | `false` | gRPC client dial option sharing write buffer |
+| defaults.grpc.client.dial_option.timeout | string | `""` | gRPC client dial option timeout |
+| defaults.grpc.client.dial_option.user_agent | string | `"Vald-gRPC"` | gRPC client dial option user_agent |
+| defaults.grpc.client.dial_option.write_buffer_size | int | `0` | gRPC client dial option write buffer size |
+| defaults.grpc.client.health_check_duration | string | `"1s"` | gRPC client health check duration |
+| defaults.grpc.client.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| defaults.grpc.client.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| defaults.grpc.client.tls.enabled | bool | `false` | TLS enabled |
+| defaults.grpc.client.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| defaults.grpc.client.tls.key | string | `"/path/to/key"` | TLS key path |
+| defaults.image.tag | string | `"v1.7.15"` | docker image tag |
+| defaults.logging.format | string | `"raw"` | logging format. logging format must be `raw` or `json` |
+| defaults.logging.level | string | `"debug"` | logging level. logging level must be `debug`, `info`, `warn`, `error` or `fatal`. |
+| defaults.logging.logger | string | `"glg"` | logger name. currently logger must be `glg` or `zap`. |
+| defaults.networkPolicy.custom | object | `{"egress":[],"ingress":[]}` | custom network policies that a user can add |
+| defaults.networkPolicy.custom.egress | list | `[]` | custom egress network policies that a user can add |
+| defaults.networkPolicy.custom.ingress | list | `[]` | custom ingress network policies that a user can add |
+| defaults.networkPolicy.enabled | bool | `false` | if network policy enabled |
+| defaults.observability.enabled | bool | `false` | observability features enabled |
+| defaults.observability.metrics.enable_cgo | bool | `true` | CGO metrics enabled |
+| defaults.observability.metrics.enable_goroutine | bool | `true` | goroutine metrics enabled |
+| defaults.observability.metrics.enable_memory | bool | `true` | memory metrics enabled |
+| defaults.observability.metrics.enable_version_info | bool | `true` | version info metrics enabled |
+| defaults.observability.metrics.version_info_labels | list | `["vald_version","server_name","git_commit","build_time","go_version","go_os","go_arch","algorithm_info"]` | enabled label names of version info |
+| defaults.observability.otlp.attribute | object | `{"namespace":"_MY_POD_NAMESPACE_","node_name":"_MY_NODE_NAME_","pod_name":"_MY_POD_NAME_","service_name":"vald"}` | default resource attribute |
+| defaults.observability.otlp.attribute.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace |
+| defaults.observability.otlp.attribute.node_name | string | `"_MY_NODE_NAME_"` | node name |
+| defaults.observability.otlp.attribute.pod_name | string | `"_MY_POD_NAME_"` | pod name |
+| defaults.observability.otlp.attribute.service_name | string | `"vald"` | service name |
+| defaults.observability.otlp.collector_endpoint | string | `""` | OpenTelemetry Collector endpoint |
+| defaults.observability.otlp.metrics_export_interval | string | `"1s"` | metrics export interval |
+| defaults.observability.otlp.metrics_export_timeout | string | `"1m"` | metrics export timeout |
+| defaults.observability.otlp.trace_batch_timeout | string | `"1s"` | trace batch timeout |
+| defaults.observability.otlp.trace_export_timeout | string | `"1m"` | trace export timeout |
+| defaults.observability.otlp.trace_max_export_batch_size | int | `1024` | trace maximum export batch size |
+| defaults.observability.otlp.trace_max_queue_size | int | `256` | trace maximum queue size |
+| defaults.observability.trace.enabled | bool | `false` | trace enabled |
+| defaults.server_config.full_shutdown_duration | string | `"600s"` | server full shutdown duration |
+| defaults.server_config.healths.liveness.enabled | bool | `true` | liveness server enabled |
+| defaults.server_config.healths.liveness.host | string | `"0.0.0.0"` | liveness server host |
+| defaults.server_config.healths.liveness.livenessProbe.failureThreshold | int | `2` | liveness probe failure threshold |
+| defaults.server_config.healths.liveness.livenessProbe.httpGet.path | string | `"/liveness"` | liveness probe path |
+| defaults.server_config.healths.liveness.livenessProbe.httpGet.port | string | `"liveness"` | liveness probe port |
+| defaults.server_config.healths.liveness.livenessProbe.httpGet.scheme | string | `"HTTP"` | liveness probe scheme |
+| defaults.server_config.healths.liveness.livenessProbe.initialDelaySeconds | int | `5` | liveness probe initial delay seconds |
+| defaults.server_config.healths.liveness.livenessProbe.periodSeconds | int | `3` | liveness probe period seconds |
+| defaults.server_config.healths.liveness.livenessProbe.successThreshold | int | `1` | liveness probe success threshold |
+| defaults.server_config.healths.liveness.livenessProbe.timeoutSeconds | int | `2` | liveness probe timeout seconds |
+| defaults.server_config.healths.liveness.port | int | `3000` | liveness server port |
+| defaults.server_config.healths.liveness.server.http.handler_timeout | string | `""` | liveness server handler timeout |
+| defaults.server_config.healths.liveness.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
+| defaults.server_config.healths.liveness.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
+| defaults.server_config.healths.liveness.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
+| defaults.server_config.healths.liveness.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
+| defaults.server_config.healths.liveness.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
+| defaults.server_config.healths.liveness.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
+| defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
+| defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
+| defaults.server_config.healths.liveness.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
+| defaults.server_config.healths.liveness.server.http.idle_timeout | string | `""` | liveness server idle timeout |
+| defaults.server_config.healths.liveness.server.http.read_header_timeout | string | `""` | liveness server read header timeout |
+| defaults.server_config.healths.liveness.server.http.read_timeout | string | `""` | liveness server read timeout |
+| defaults.server_config.healths.liveness.server.http.shutdown_duration | string | `"5s"` | liveness server shutdown duration |
+| defaults.server_config.healths.liveness.server.http.write_timeout | string | `""` | liveness server write timeout |
+| defaults.server_config.healths.liveness.server.mode | string | `"REST"` | liveness server mode |
+| defaults.server_config.healths.liveness.server.network | string | `"tcp"` | network mode |
+| defaults.server_config.healths.liveness.server.probe_wait_time | string | `"3s"` | liveness server probe wait time |
+| defaults.server_config.healths.liveness.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
+| defaults.server_config.healths.liveness.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.server_config.healths.liveness.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.server_config.healths.liveness.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.server_config.healths.liveness.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.server_config.healths.liveness.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| defaults.server_config.healths.liveness.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.server_config.healths.liveness.server.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
+| defaults.server_config.healths.liveness.server.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
+| defaults.server_config.healths.liveness.server.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
+| defaults.server_config.healths.liveness.server.socket_path | string | `""` | server socket_path |
+| defaults.server_config.healths.liveness.servicePort | int | `3000` | liveness server service port |
+| defaults.server_config.healths.readiness.enabled | bool | `true` | readiness server enabled |
+| defaults.server_config.healths.readiness.host | string | `"0.0.0.0"` | readiness server host |
+| defaults.server_config.healths.readiness.port | int | `3001` | readiness server port |
+| defaults.server_config.healths.readiness.readinessProbe.failureThreshold | int | `2` | readiness probe failure threshold |
+| defaults.server_config.healths.readiness.readinessProbe.httpGet.path | string | `"/readiness"` | readiness probe path |
+| defaults.server_config.healths.readiness.readinessProbe.httpGet.port | string | `"readiness"` | readiness probe port |
+| defaults.server_config.healths.readiness.readinessProbe.httpGet.scheme | string | `"HTTP"` | readiness probe scheme |
+| defaults.server_config.healths.readiness.readinessProbe.initialDelaySeconds | int | `10` | readiness probe initial delay seconds |
+| defaults.server_config.healths.readiness.readinessProbe.periodSeconds | int | `3` | readiness probe period seconds |
+| defaults.server_config.healths.readiness.readinessProbe.successThreshold | int | `1` | readiness probe success threshold |
+| defaults.server_config.healths.readiness.readinessProbe.timeoutSeconds | int | `2` | readiness probe timeout seconds |
+| defaults.server_config.healths.readiness.server.http.handler_timeout | string | `""` | readiness server handler timeout |
+| defaults.server_config.healths.readiness.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
+| defaults.server_config.healths.readiness.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
+| defaults.server_config.healths.readiness.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
+| defaults.server_config.healths.readiness.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
+| defaults.server_config.healths.readiness.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
+| defaults.server_config.healths.readiness.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
+| defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
+| defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
+| defaults.server_config.healths.readiness.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
+| defaults.server_config.healths.readiness.server.http.idle_timeout | string | `""` | readiness server idle timeout |
+| defaults.server_config.healths.readiness.server.http.read_header_timeout | string | `""` | readiness server read header timeout |
+| defaults.server_config.healths.readiness.server.http.read_timeout | string | `""` | readiness server read timeout |
+| defaults.server_config.healths.readiness.server.http.shutdown_duration | string | `"0s"` | readiness server shutdown duration |
+| defaults.server_config.healths.readiness.server.http.write_timeout | string | `""` | readiness server write timeout |
+| defaults.server_config.healths.readiness.server.mode | string | `"REST"` | readiness server mode |
+| defaults.server_config.healths.readiness.server.network | string | `"tcp"` | network mode |
+| defaults.server_config.healths.readiness.server.probe_wait_time | string | `"3s"` | readiness server probe wait time |
+| defaults.server_config.healths.readiness.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
+| defaults.server_config.healths.readiness.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.server_config.healths.readiness.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.server_config.healths.readiness.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.server_config.healths.readiness.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.server_config.healths.readiness.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| defaults.server_config.healths.readiness.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.server_config.healths.readiness.server.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
+| defaults.server_config.healths.readiness.server.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
+| defaults.server_config.healths.readiness.server.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
+| defaults.server_config.healths.readiness.server.socket_path | string | `""` | server socket_path |
+| defaults.server_config.healths.readiness.servicePort | int | `3001` | readiness server service port |
+| defaults.server_config.healths.startup.enabled | bool | `true` | startup server enabled |
+| defaults.server_config.healths.startup.port | int | `3000` | startup server port |
+| defaults.server_config.healths.startup.startupProbe.failureThreshold | int | `30` | startup probe failure threshold |
+| defaults.server_config.healths.startup.startupProbe.httpGet.path | string | `"/liveness"` | startup probe path |
+| defaults.server_config.healths.startup.startupProbe.httpGet.port | string | `"liveness"` | startup probe port |
+| defaults.server_config.healths.startup.startupProbe.httpGet.scheme | string | `"HTTP"` | startup probe scheme |
+| defaults.server_config.healths.startup.startupProbe.initialDelaySeconds | int | `5` | startup probe initial delay seconds |
+| defaults.server_config.healths.startup.startupProbe.periodSeconds | int | `5` | startup probe period seconds |
+| defaults.server_config.healths.startup.startupProbe.successThreshold | int | `1` | startup probe success threshold |
+| defaults.server_config.healths.startup.startupProbe.timeoutSeconds | int | `2` | startup probe timeout seconds |
+| defaults.server_config.metrics.pprof.enabled | bool | `false` | pprof server enabled |
+| defaults.server_config.metrics.pprof.host | string | `"0.0.0.0"` | pprof server host |
+| defaults.server_config.metrics.pprof.port | int | `6060` | pprof server port |
+| defaults.server_config.metrics.pprof.server.http.handler_timeout | string | `"5s"` | pprof server handler timeout |
+| defaults.server_config.metrics.pprof.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
+| defaults.server_config.metrics.pprof.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
+| defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
+| defaults.server_config.metrics.pprof.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
+| defaults.server_config.metrics.pprof.server.http.idle_timeout | string | `"2s"` | pprof server idle timeout |
+| defaults.server_config.metrics.pprof.server.http.read_header_timeout | string | `"1s"` | pprof server read header timeout |
+| defaults.server_config.metrics.pprof.server.http.read_timeout | string | `"1s"` | pprof server read timeout |
+| defaults.server_config.metrics.pprof.server.http.shutdown_duration | string | `"5s"` | pprof server shutdown duration |
+| defaults.server_config.metrics.pprof.server.http.write_timeout | string | `"1m"` | pprof server write timeout |
+| defaults.server_config.metrics.pprof.server.mode | string | `"REST"` | pprof server mode |
+| defaults.server_config.metrics.pprof.server.network | string | `"tcp"` | network mode |
+| defaults.server_config.metrics.pprof.server.probe_wait_time | string | `"3s"` | pprof server probe wait time |
+| defaults.server_config.metrics.pprof.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
+| defaults.server_config.metrics.pprof.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.tcp_cork | bool | `true` | server listen socket option for tcp_cork functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| defaults.server_config.metrics.pprof.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| defaults.server_config.metrics.pprof.server.socket_path | string | `""` | server socket_path |
+| defaults.server_config.metrics.pprof.servicePort | int | `6060` | pprof server service port |
+| defaults.server_config.servers.grpc.enabled | bool | `true` | gRPC server enabled |
+| defaults.server_config.servers.grpc.host | string | `"0.0.0.0"` | gRPC server host |
+| defaults.server_config.servers.grpc.port | int | `8081` | gRPC server port |
+| defaults.server_config.servers.grpc.server.grpc.bidirectional_stream_concurrency | int | `20` | gRPC server bidirectional stream concurrency |
+| defaults.server_config.servers.grpc.server.grpc.connection_timeout | string | `""` | gRPC server connection timeout |
+| defaults.server_config.servers.grpc.server.grpc.enable_admin | bool | `true` | gRPC server admin option |
+| defaults.server_config.servers.grpc.server.grpc.enable_channelz | bool | `true` | gRPC server channelz option |
+| defaults.server_config.servers.grpc.server.grpc.enable_reflection | bool | `true` | gRPC server reflection option |
+| defaults.server_config.servers.grpc.server.grpc.header_table_size | int | `0` | gRPC server header table size |
+| defaults.server_config.servers.grpc.server.grpc.initial_conn_window_size | int | `2097152` | gRPC server initial connection window size |
+| defaults.server_config.servers.grpc.server.grpc.initial_window_size | int | `1048576` | gRPC server initial window size |
+| defaults.server_config.servers.grpc.server.grpc.interceptors | list | `["RecoverInterceptor"]` | gRPC server interceptors |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_age | string | `""` | gRPC server keep alive max connection age |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_age_grace | string | `""` | gRPC server keep alive max connection age grace |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.max_conn_idle | string | `""` | gRPC server keep alive max connection idle |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.min_time | string | `"10m"` | gRPC server keep alive min_time |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.permit_without_stream | bool | `false` | gRPC server keep alive permit_without_stream |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.time | string | `"3h"` | gRPC server keep alive time |
+| defaults.server_config.servers.grpc.server.grpc.keepalive.timeout | string | `"60s"` | gRPC server keep alive timeout |
+| defaults.server_config.servers.grpc.server.grpc.max_concurrent_streams | int | `0` | gRPC server max concurrent stream size |
+| defaults.server_config.servers.grpc.server.grpc.max_header_list_size | int | `0` | gRPC server max header list size |
+| defaults.server_config.servers.grpc.server.grpc.max_receive_message_size | int | `0` | gRPC server max receive message size |
+| defaults.server_config.servers.grpc.server.grpc.max_send_message_size | int | `0` | gRPC server max send message size |
+| defaults.server_config.servers.grpc.server.grpc.num_stream_workers | int | `0` | gRPC server number of stream workers |
+| defaults.server_config.servers.grpc.server.grpc.read_buffer_size | int | `0` | gRPC server read buffer size |
+| defaults.server_config.servers.grpc.server.grpc.shared_write_buffer | bool | `false` | gRPC server write buffer sharing option |
+| defaults.server_config.servers.grpc.server.grpc.wait_for_handlers | bool | `true` | gRPC server wait for handlers when stop |
+| defaults.server_config.servers.grpc.server.grpc.write_buffer_size | int | `0` | gRPC server write buffer size |
+| defaults.server_config.servers.grpc.server.mode | string | `"GRPC"` | gRPC server server mode |
+| defaults.server_config.servers.grpc.server.network | string | `"tcp"` | network mode |
+| defaults.server_config.servers.grpc.server.probe_wait_time | string | `"3s"` | gRPC server probe wait time |
+| defaults.server_config.servers.grpc.server.restart | bool | `true` | This configuration enables automatic restart of the same configured server when it becomes unhealthy. |
+| defaults.server_config.servers.grpc.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.server_config.servers.grpc.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.server_config.servers.grpc.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.server_config.servers.grpc.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.server_config.servers.grpc.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| defaults.server_config.servers.grpc.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.server_config.servers.grpc.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
+| defaults.server_config.servers.grpc.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| defaults.server_config.servers.grpc.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| defaults.server_config.servers.grpc.server.socket_path | string | `""` | server socket_path |
+| defaults.server_config.servers.grpc.servicePort | int | `8081` | gRPC server service port |
+| defaults.server_config.servers.rest.enabled | bool | `false` | REST server enabled |
+| defaults.server_config.servers.rest.host | string | `"0.0.0.0"` | REST server host |
+| defaults.server_config.servers.rest.port | int | `8080` | REST server port |
+| defaults.server_config.servers.rest.server.http.handler_timeout | string | `"5s"` | REST server handler timeout |
+| defaults.server_config.servers.rest.server.http.http2.enabled | bool | `false` | HTTP2 server enabled |
+| defaults.server_config.servers.rest.server.http.http2.handler_limit | int | `0` | Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. |
+| defaults.server_config.servers.rest.server.http.http2.max_concurrent_streams | int | `0` | The number of concurrent streams that each client may have open at a time. |
+| defaults.server_config.servers.rest.server.http.http2.max_decoder_header_table_size | int | `4096` | Informs the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. If zero, the default value of 4096 is used. |
+| defaults.server_config.servers.rest.server.http.http2.max_encoder_header_table_size | int | `4096` | An upper limit for the header compression table used for encoding request headers. |
+| defaults.server_config.servers.rest.server.http.http2.max_read_frame_size | int | `0` | The largest frame this server is willing to read. |
+| defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_connection | int | `0` | The size of the initial flow control window for each connections. |
+| defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_stream | int | `0` | The size of the initial flow control window for each streams. |
+| defaults.server_config.servers.rest.server.http.http2.permit_prohibited_cipher_suites | bool | `true` | if true, permits the use of cipher suites prohibited by the HTTP/2 spec. |
+| defaults.server_config.servers.rest.server.http.idle_timeout | string | `"2s"` | REST server idle timeout |
+| defaults.server_config.servers.rest.server.http.read_header_timeout | string | `"1s"` | REST server read header timeout |
+| defaults.server_config.servers.rest.server.http.read_timeout | string | `"1s"` | REST server read timeout |
+| defaults.server_config.servers.rest.server.http.shutdown_duration | string | `"5s"` | REST server shutdown duration |
+| defaults.server_config.servers.rest.server.http.write_timeout | string | `"1s"` | REST server write timeout |
+| defaults.server_config.servers.rest.server.mode | string | `"REST"` | REST server server mode |
+| defaults.server_config.servers.rest.server.network | string | `"tcp"` | network mode |
+| defaults.server_config.servers.rest.server.probe_wait_time | string | `"3s"` | REST server probe wait time |
+| defaults.server_config.servers.rest.server.restart | bool | `true` | |
+| defaults.server_config.servers.rest.server.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| defaults.server_config.servers.rest.server.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| defaults.server_config.servers.rest.server.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| defaults.server_config.servers.rest.server.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| defaults.server_config.servers.rest.server.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| defaults.server_config.servers.rest.server.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| defaults.server_config.servers.rest.server.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
+| defaults.server_config.servers.rest.server.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| defaults.server_config.servers.rest.server.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| defaults.server_config.servers.rest.server.socket_path | string | `""` | network socket_path |
+| defaults.server_config.servers.rest.servicePort | int | `8080` | REST server service port |
+| defaults.server_config.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| defaults.server_config.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| defaults.server_config.tls.enabled | bool | `false` | TLS enabled |
+| defaults.server_config.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| defaults.server_config.tls.key | string | `"/path/to/key"` | TLS key path |
+| defaults.time_zone | string | `"UTC"` | Time zone |
+| discoverer.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| discoverer.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| discoverer.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| discoverer.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| discoverer.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-discoverer"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| discoverer.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| discoverer.annotations | object | `{}` | deployment annotations |
+| discoverer.clusterRole.enabled | bool | `true` | creates clusterRole resource |
+| discoverer.clusterRole.name | string | `"discoverer"` | name of clusterRole |
+| discoverer.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
+| discoverer.clusterRoleBinding.name | string | `"discoverer"` | name of clusterRoleBinding |
+| discoverer.discoverer.discovery_duration | string | `"3s"` | duration to discovery |
+| discoverer.discoverer.name | string | `""` | name to discovery |
+| discoverer.discoverer.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
+| discoverer.discoverer.net.dialer.dual_stack_enabled | bool | `false` | TCP dialer dual stack enabled |
+| discoverer.discoverer.net.dialer.keepalive | string | `"10m"` | TCP dialer keep alive |
+| discoverer.discoverer.net.dialer.timeout | string | `"30s"` | TCP dialer timeout |
+| discoverer.discoverer.net.dns.cache_enabled | bool | `true` | DNS cache enabled |
+| discoverer.discoverer.net.dns.cache_expiration | string | `"24h"` | DNS cache expiration |
+| discoverer.discoverer.net.dns.refresh_duration | string | `"5m"` | DNS cache refresh duration |
+| discoverer.discoverer.net.network | string | `"tcp"` | gRPC client dialer network type |
+| discoverer.discoverer.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| discoverer.discoverer.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| discoverer.discoverer.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| discoverer.discoverer.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| discoverer.discoverer.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| discoverer.discoverer.net.socket_option.tcp_defer_accept | bool | `false` | server listen socket option for tcp_defer_accept functionality |
+| discoverer.discoverer.net.socket_option.tcp_fast_open | bool | `false` | server listen socket option for tcp_fast_open functionality |
+| discoverer.discoverer.net.socket_option.tcp_no_delay | bool | `false` | server listen socket option for tcp_no_delay functionality |
+| discoverer.discoverer.net.socket_option.tcp_quick_ack | bool | `false` | server listen socket option for tcp_quick_ack functionality |
+| discoverer.discoverer.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| discoverer.discoverer.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| discoverer.discoverer.net.tls.enabled | bool | `false` | TLS enabled |
+| discoverer.discoverer.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| discoverer.discoverer.net.tls.key | string | `"/path/to/key"` | TLS key path |
+| discoverer.discoverer.selectors | object | `{"node":{"fields":{},"labels":{}},"node_metrics":{"fields":{},"labels":{}},"pod":{"fields":{},"labels":{}},"pod_metrics":{"fields":{},"labels":{}},"service":{"fields":{},"labels":{}}}` | k8s resource selectors |
+| discoverer.discoverer.selectors.node | object | `{"fields":{},"labels":{}}` | k8s resource selectors for node discovery |
+| discoverer.discoverer.selectors.node.fields | object | `{}` | k8s field selectors for node discovery |
+| discoverer.discoverer.selectors.node.labels | object | `{}` | k8s label selectors for node discovery |
+| discoverer.discoverer.selectors.node_metrics | object | `{"fields":{},"labels":{}}` | k8s resource selectors for node_metrics discovery |
+| discoverer.discoverer.selectors.node_metrics.fields | object | `{}` | k8s field selectors for node_metrics discovery |
+| discoverer.discoverer.selectors.node_metrics.labels | object | `{}` | k8s label selectors for node_metrics discovery |
+| discoverer.discoverer.selectors.pod | object | `{"fields":{},"labels":{}}` | k8s resource selectors for pod discovery |
+| discoverer.discoverer.selectors.pod.fields | object | `{}` | k8s field selectors for pod discovery |
+| discoverer.discoverer.selectors.pod.labels | object | `{}` | k8s label selectors for pod discovery |
+| discoverer.discoverer.selectors.pod_metrics | object | `{"fields":{},"labels":{}}` | k8s resource selectors for pod_metrics discovery |
+| discoverer.discoverer.selectors.pod_metrics.fields | object | `{}` | k8s field selectors for pod_metrics discovery |
+| discoverer.discoverer.selectors.pod_metrics.labels | object | `{}` | k8s label selectors for pod_metrics discovery |
+| discoverer.discoverer.selectors.service | object | `{"fields":{},"labels":{}}` | k8s resource selectors for service discovery |
+| discoverer.discoverer.selectors.service.fields | object | `{}` | k8s field selectors for service discovery |
+| discoverer.discoverer.selectors.service.labels | object | `{}` | k8s label selectors for service discovery |
+| discoverer.enabled | bool | `true` | discoverer enabled |
+| discoverer.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| discoverer.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| discoverer.hpa.enabled | bool | `false` | HPA enabled |
+| discoverer.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| discoverer.image.pullPolicy | string | `"Always"` | image pull policy |
+| discoverer.image.repository | string | `"vdaas/vald-discoverer-k8s"` | image repository |
+| discoverer.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| discoverer.initContainers | list | `[]` | init containers |
+| discoverer.internalTrafficPolicy | string | `""` | internal traffic policy : Cluster or Local |
+| discoverer.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| discoverer.logging | object | `{}` | logging config (overrides defaults.logging) |
+| discoverer.maxReplicas | int | `2` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| discoverer.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
+| discoverer.minReplicas | int | `1` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| discoverer.name | string | `"vald-discoverer"` | name of discoverer deployment |
+| discoverer.nodeName | string | `""` | node name |
+| discoverer.nodeSelector | object | `{}` | node selector |
+| discoverer.observability | object | `{"otlp":{"attribute":{"service_name":"vald-discoverer"}}}` | observability config (overrides defaults.observability) |
+| discoverer.podAnnotations | object | `{}` | pod annotations |
+| discoverer.podPriority.enabled | bool | `true` | discoverer pod PriorityClass enabled |
+| discoverer.podPriority.value | int | `1000000` | discoverer pod PriorityClass value |
+| discoverer.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| discoverer.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| discoverer.resources | object | `{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}}` | compute resources |
+| discoverer.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| discoverer.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| discoverer.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| discoverer.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| discoverer.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| discoverer.service.annotations | object | `{}` | service annotations |
+| discoverer.service.labels | object | `{}` | service labels |
+| discoverer.serviceAccount.enabled | bool | `true` | creates service account |
+| discoverer.serviceAccount.name | string | `"vald"` | name of service account |
+| discoverer.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| discoverer.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| discoverer.time_zone | string | `""` | Time zone |
+| discoverer.tolerations | list | `[]` | tolerations |
+| discoverer.topologySpreadConstraints | list | `[]` | topology spread constraints of discoverer pods |
+| discoverer.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| discoverer.version | string | `"v0.0.0"` | version of discoverer config |
+| discoverer.volumeMounts | list | `[]` | volume mounts |
+| discoverer.volumes | list | `[]` | volumes |
+| gateway.filter.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| gateway.filter.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| gateway.filter.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| gateway.filter.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| gateway.filter.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-filter-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| gateway.filter.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| gateway.filter.annotations | object | `{}` | deployment annotations |
+| gateway.filter.enabled | bool | `false` | gateway enabled |
+| gateway.filter.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| gateway.filter.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.filter.gateway_config.egress_filter | object | `{"client":{},"distance_filters":[],"object_filters":[]}` | gRPC client config for egress filter |
+| gateway.filter.gateway_config.egress_filter.client | object | `{}` | gRPC client config for egress filter (overrides defaults.grpc.client) |
+| gateway.filter.gateway_config.egress_filter.distance_filters | list | `[]` | distance egress vector filter targets |
+| gateway.filter.gateway_config.egress_filter.object_filters | list | `[]` | object egress vector filter targets |
+| gateway.filter.gateway_config.gateway_client | object | `{}` | gRPC client for next gateway (overrides defaults.grpc.client) |
+| gateway.filter.gateway_config.ingress_filter | object | `{"client":{},"insert_filters":[],"search_filters":[],"update_filters":[],"upsert_filters":[],"vectorizer":""}` | gRPC client config for ingress filter |
+| gateway.filter.gateway_config.ingress_filter.client | object | `{}` | gRPC client for ingress filter (overrides defaults.grpc.client) |
+| gateway.filter.gateway_config.ingress_filter.insert_filters | list | `[]` | insert ingress vector filter targets |
+| gateway.filter.gateway_config.ingress_filter.search_filters | list | `[]` | search ingress vector filter targets |
+| gateway.filter.gateway_config.ingress_filter.update_filters | list | `[]` | update ingress vector filter targets |
+| gateway.filter.gateway_config.ingress_filter.upsert_filters | list | `[]` | upsert ingress vector filter targets |
+| gateway.filter.gateway_config.ingress_filter.vectorizer | string | `""` | object ingress vectorize filter targets |
+| gateway.filter.hpa.enabled | bool | `true` | HPA enabled |
+| gateway.filter.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| gateway.filter.image.pullPolicy | string | `"Always"` | image pull policy |
+| gateway.filter.image.repository | string | `"vdaas/vald-filter-gateway"` | image repository |
+| gateway.filter.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| gateway.filter.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
+| gateway.filter.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
+| gateway.filter.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
+| gateway.filter.ingress.enabled | bool | `false` | gateway ingress enabled |
+| gateway.filter.ingress.host | string | `"filter.gateway.vald.vdaas.org"` | ingress hostname |
+| gateway.filter.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
+| gateway.filter.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
+| gateway.filter.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-gateway-lb","sleepDuration":2,"target":"gateway-lb","type":"wait-for"}]` | init containers |
+| gateway.filter.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.filter.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| gateway.filter.logging | object | `{}` | logging config (overrides defaults.logging) |
+| gateway.filter.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| gateway.filter.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
+| gateway.filter.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| gateway.filter.name | string | `"vald-filter-gateway"` | name of filter gateway deployment |
+| gateway.filter.nodeName | string | `""` | node name |
+| gateway.filter.nodeSelector | object | `{}` | node selector |
+| gateway.filter.observability | object | `{"otlp":{"attribute":{"service_name":"vald-filter-gateway"}}}` | observability config (overrides defaults.observability) |
+| gateway.filter.podAnnotations | object | `{}` | pod annotations |
+| gateway.filter.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
+| gateway.filter.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
+| gateway.filter.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| gateway.filter.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| gateway.filter.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
+| gateway.filter.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| gateway.filter.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| gateway.filter.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| gateway.filter.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| gateway.filter.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| gateway.filter.service.annotations | object | `{}` | service annotations |
+| gateway.filter.service.labels | object | `{}` | service labels |
+| gateway.filter.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| gateway.filter.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| gateway.filter.time_zone | string | `""` | Time zone |
+| gateway.filter.tolerations | list | `[]` | tolerations |
+| gateway.filter.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
+| gateway.filter.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| gateway.filter.version | string | `"v0.0.0"` | version of gateway config |
+| gateway.filter.volumeMounts | list | `[]` | volume mounts |
+| gateway.filter.volumes | list | `[]` | volumes |
+| gateway.lb.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| gateway.lb.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| gateway.lb.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| gateway.lb.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| gateway.lb.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-lb-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| gateway.lb.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| gateway.lb.annotations | object | `{}` | deployment annotations |
+| gateway.lb.enabled | bool | `true` | gateway enabled |
+| gateway.lb.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| gateway.lb.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.lb.gateway_config.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | agent namespace |
+| gateway.lb.gateway_config.discoverer.agent_client_options | object | `{}` | gRPC client options for agents (overrides defaults.grpc.client) |
+| gateway.lb.gateway_config.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| gateway.lb.gateway_config.discoverer.duration | string | `"200ms"` | |
+| gateway.lb.gateway_config.discoverer.read_client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| gateway.lb.gateway_config.index_replica | int | `3` | number of index replica |
+| gateway.lb.gateway_config.multi_operation_concurrency | int | `20` | number of concurrency of multiXXX api's operation |
+| gateway.lb.gateway_config.node_name | string | `""` | node name |
+| gateway.lb.hpa.enabled | bool | `true` | HPA enabled |
+| gateway.lb.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| gateway.lb.image.pullPolicy | string | `"Always"` | image pull policy |
+| gateway.lb.image.repository | string | `"vdaas/vald-lb-gateway"` | image repository |
+| gateway.lb.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| gateway.lb.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
+| gateway.lb.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
+| gateway.lb.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
+| gateway.lb.ingress.enabled | bool | `false` | gateway ingress enabled |
+| gateway.lb.ingress.host | string | `"lb.gateway.vald.vdaas.org"` | ingress hostname |
+| gateway.lb.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
+| gateway.lb.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
+| gateway.lb.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"}]` | init containers |
+| gateway.lb.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.lb.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| gateway.lb.logging | object | `{}` | logging config (overrides defaults.logging) |
+| gateway.lb.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| gateway.lb.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
+| gateway.lb.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| gateway.lb.name | string | `"vald-lb-gateway"` | name of gateway deployment |
+| gateway.lb.nodeName | string | `""` | node name |
+| gateway.lb.nodeSelector | object | `{}` | node selector |
+| gateway.lb.observability | object | `{"otlp":{"attribute":{"service_name":"vald-lb-gateway"}}}` | observability config (overrides defaults.observability) |
+| gateway.lb.podAnnotations | object | `{}` | pod annotations |
+| gateway.lb.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
+| gateway.lb.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
+| gateway.lb.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| gateway.lb.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| gateway.lb.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
+| gateway.lb.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| gateway.lb.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| gateway.lb.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| gateway.lb.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| gateway.lb.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| gateway.lb.service.annotations | object | `{}` | service annotations |
+| gateway.lb.service.labels | object | `{}` | service labels |
+| gateway.lb.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| gateway.lb.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| gateway.lb.time_zone | string | `""` | Time zone |
+| gateway.lb.tolerations | list | `[]` | tolerations |
+| gateway.lb.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
+| gateway.lb.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| gateway.lb.version | string | `"v0.0.0"` | version of gateway config |
+| gateway.lb.volumeMounts | list | `[]` | volume mounts |
+| gateway.lb.volumes | list | `[]` | volumes |
+| gateway.mirror.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| gateway.mirror.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| gateway.mirror.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| gateway.mirror.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| gateway.mirror.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-mirror-gateway"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| gateway.mirror.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| gateway.mirror.annotations | object | `{}` | deployment annotations |
+| gateway.mirror.clusterRole.enabled | bool | `true` | creates clusterRole resource |
+| gateway.mirror.clusterRole.name | string | `"gateway-mirror"` | name of clusterRole |
+| gateway.mirror.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
+| gateway.mirror.clusterRoleBinding.name | string | `"gateway-mirror"` | name of clusterRoleBinding |
+| gateway.mirror.enabled | bool | `false` | gateway enabled |
+| gateway.mirror.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| gateway.mirror.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.mirror.gateway_config.client | object | `{}` | gRPC client (overrides defaults.grpc.client) |
+| gateway.mirror.gateway_config.colocation | string | `"dc1"` | colocation name |
+| gateway.mirror.gateway_config.discovery_duration | string | `"1s"` | duration to discovery |
+| gateway.mirror.gateway_config.gateway_addr | string | `""` | address for lb-gateway |
+| gateway.mirror.gateway_config.group | string | `""` | mirror group name |
+| gateway.mirror.gateway_config.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
+| gateway.mirror.gateway_config.net.dialer.dual_stack_enabled | bool | `false` | TCP dialer dual stack enabled |
+| gateway.mirror.gateway_config.net.dialer.keepalive | string | `"10m"` | TCP dialer keep alive |
+| gateway.mirror.gateway_config.net.dialer.timeout | string | `"30s"` | TCP dialer timeout |
+| gateway.mirror.gateway_config.net.dns.cache_enabled | bool | `true` | DNS cache enabled |
+| gateway.mirror.gateway_config.net.dns.cache_expiration | string | `"24h"` | DNS cache expiration |
+| gateway.mirror.gateway_config.net.dns.refresh_duration | string | `"5m"` | DNS cache refresh duration |
+| gateway.mirror.gateway_config.net.network | string | `"tcp"` | |
+| gateway.mirror.gateway_config.net.socket_option.ip_recover_destination_addr | bool | `false` | server listen socket option for ip_recover_destination_addr functionality |
+| gateway.mirror.gateway_config.net.socket_option.ip_transparent | bool | `false` | server listen socket option for ip_transparent functionality |
+| gateway.mirror.gateway_config.net.socket_option.reuse_addr | bool | `true` | server listen socket option for reuse_addr functionality |
+| gateway.mirror.gateway_config.net.socket_option.reuse_port | bool | `true` | server listen socket option for reuse_port functionality |
+| gateway.mirror.gateway_config.net.socket_option.tcp_cork | bool | `false` | server listen socket option for tcp_cork functionality |
+| gateway.mirror.gateway_config.net.socket_option.tcp_defer_accept | bool | `true` | server listen socket option for tcp_defer_accept functionality |
+| gateway.mirror.gateway_config.net.socket_option.tcp_fast_open | bool | `true` | server listen socket option for tcp_fast_open functionality |
+| gateway.mirror.gateway_config.net.socket_option.tcp_no_delay | bool | `true` | server listen socket option for tcp_no_delay functionality |
+| gateway.mirror.gateway_config.net.socket_option.tcp_quick_ack | bool | `true` | server listen socket option for tcp_quick_ack functionality |
+| gateway.mirror.gateway_config.net.tls.ca | string | `"/path/to/ca"` | TLS ca path |
+| gateway.mirror.gateway_config.net.tls.cert | string | `"/path/to/cert"` | TLS cert path |
+| gateway.mirror.gateway_config.net.tls.enabled | bool | `false` | TLS enabled |
+| gateway.mirror.gateway_config.net.tls.insecure_skip_verify | bool | `false` | enable/disable skip SSL certificate verification |
+| gateway.mirror.gateway_config.net.tls.key | string | `"/path/to/key"` | TLS key path |
+| gateway.mirror.gateway_config.pod_name | string | `"_MY_POD_NAME_"` | self mirror gateway pod name |
+| gateway.mirror.gateway_config.register_duration | string | `"1s"` | duration to register mirror-gateway. |
+| gateway.mirror.gateway_config.self_mirror_addr | string | `""` | address for self mirror-gateway |
+| gateway.mirror.hpa.enabled | bool | `true` | HPA enabled |
+| gateway.mirror.hpa.targetCPUUtilizationPercentage | int | `80` | HPA CPU utilization percentage |
+| gateway.mirror.image.pullPolicy | string | `"Always"` | image pull policy |
+| gateway.mirror.image.repository | string | `"vdaas/vald-mirror-gateway"` | image repository |
+| gateway.mirror.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| gateway.mirror.ingress.annotations | object | `{"nginx.ingress.kubernetes.io/grpc-backend":"true"}` | annotations for ingress |
+| gateway.mirror.ingress.defaultBackend | object | `{"enabled":true}` | defaultBackend config |
+| gateway.mirror.ingress.defaultBackend.enabled | bool | `true` | gateway ingress defaultBackend enabled |
+| gateway.mirror.ingress.enabled | bool | `false` | gateway ingress enabled |
+| gateway.mirror.ingress.host | string | `"mirror.gateway.vald.vdaas.org"` | ingress hostname |
+| gateway.mirror.ingress.pathType | string | `"ImplementationSpecific"` | gateway ingress pathType |
+| gateway.mirror.ingress.servicePort | string | `"grpc"` | service port to be exposed by ingress |
+| gateway.mirror.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-gateway-lb","sleepDuration":2,"target":"gateway-lb","type":"wait-for"}]` | init containers |
+| gateway.mirror.internalTrafficPolicy | string | `""` | internal traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| gateway.mirror.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| gateway.mirror.logging | object | `{}` | logging config (overrides defaults.logging) |
+| gateway.mirror.maxReplicas | int | `9` | maximum number of replicas. if HPA is disabled, this value will be ignored. |
+| gateway.mirror.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
+| gateway.mirror.minReplicas | int | `3` | minimum number of replicas. if HPA is disabled, the replicas will be set to this value |
+| gateway.mirror.name | string | `"vald-mirror-gateway"` | name of gateway deployment |
+| gateway.mirror.nodeName | string | `""` | node name |
+| gateway.mirror.nodeSelector | object | `{}` | node selector |
+| gateway.mirror.observability | object | `{"otlp":{"attribute":{"service_name":"vald-mirror-gateway"}}}` | observability config (overrides defaults.observability) |
+| gateway.mirror.podAnnotations | object | `{}` | pod annotations |
+| gateway.mirror.podPriority.enabled | bool | `true` | gateway pod PriorityClass enabled |
+| gateway.mirror.podPriority.value | int | `1000000` | gateway pod PriorityClass value |
+| gateway.mirror.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| gateway.mirror.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| gateway.mirror.resources | object | `{"limits":{"cpu":"2000m","memory":"700Mi"},"requests":{"cpu":"200m","memory":"150Mi"}}` | compute resources |
+| gateway.mirror.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| gateway.mirror.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| gateway.mirror.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| gateway.mirror.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| gateway.mirror.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| gateway.mirror.service.annotations | object | `{}` | service annotations |
+| gateway.mirror.service.labels | object | `{}` | service labels |
+| gateway.mirror.serviceAccount.enabled | bool | `true` | creates service account |
+| gateway.mirror.serviceAccount.name | string | `"gateway-mirror"` | name of service account |
+| gateway.mirror.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| gateway.mirror.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| gateway.mirror.time_zone | string | `""` | Time zone |
+| gateway.mirror.tolerations | list | `[]` | tolerations |
+| gateway.mirror.topologySpreadConstraints | list | `[]` | topology spread constraints of gateway pods |
+| gateway.mirror.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| gateway.mirror.version | string | `"v0.0.0"` | version of gateway config |
+| gateway.mirror.volumeMounts | list | `[]` | volume mounts |
+| gateway.mirror.volumes | list | `[]` | volumes |
+| manager.index.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| manager.index.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| manager.index.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| manager.index.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| manager.index.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity preferred scheduling terms |
+| manager.index.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| manager.index.annotations | object | `{}` | deployment annotations |
+| manager.index.corrector.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| manager.index.corrector.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| manager.index.corrector.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| manager.index.corrector.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| manager.index.corrector.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity preferred scheduling terms |
+| manager.index.corrector.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| manager.index.corrector.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
+| manager.index.corrector.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
+| manager.index.corrector.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| manager.index.corrector.discoverer.duration | string | `"500ms"` | refresh duration to discover |
+| manager.index.corrector.enabled | bool | `false` | enable index correction CronJob |
+| manager.index.corrector.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.corrector.gateway | object | `{}` | gRPC client for gateway (overrides defaults.grpc.client) |
+| manager.index.corrector.image.pullPolicy | string | `"Always"` | |
+| manager.index.corrector.image.repository | string | `"vdaas/vald-index-correction"` | image repository |
+| manager.index.corrector.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.corrector.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
+| manager.index.corrector.kvs_background_compaction_interval | string | `"5s"` | interval of checked id list kvs compaction |
+| manager.index.corrector.kvs_background_sync_interval | string | `"5s"` | interval of checked id list kvs sync |
+| manager.index.corrector.name | string | `"vald-index-correction"` | name of index correction job |
+| manager.index.corrector.nodeSelector | object | `{}` | node selector |
+| manager.index.corrector.node_name | string | `""` | node name |
+| manager.index.corrector.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-correction"}}}` | observability config (overrides defaults.observability) |
+| manager.index.corrector.schedule | string | `"6 3 * * *"` | CronJob schedule setting for index correction |
+| manager.index.corrector.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.corrector.startingDeadlineSeconds | int | `86400` | startingDeadlineSeconds setting for K8s completed jobs |
+| manager.index.corrector.stream_list_concurrency | int | `200` | concurrency for stream list object rpc |
+| manager.index.corrector.suspend | bool | `false` | CronJob suspend setting for index correction |
+| manager.index.corrector.tolerations | list | `[]` | tolerations |
+| manager.index.corrector.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
+| manager.index.corrector.version | string | `"v0.0.0"` | version of index manager config |
+| manager.index.creator.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| manager.index.creator.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| manager.index.creator.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| manager.index.creator.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| manager.index.creator.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity preferred scheduling terms |
+| manager.index.creator.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| manager.index.creator.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
+| manager.index.creator.concurrency | int | `1` | concurrency for indexing |
+| manager.index.creator.creation_pool_size | int | `16` | number of pool size of create index processing |
+| manager.index.creator.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
+| manager.index.creator.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| manager.index.creator.discoverer.duration | string | `"500ms"` | refresh duration to discover |
+| manager.index.creator.enabled | bool | `false` | enable index creation CronJob |
+| manager.index.creator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.creator.image.pullPolicy | string | `"Always"` | |
+| manager.index.creator.image.repository | string | `"vdaas/vald-index-creation"` | image repository |
+| manager.index.creator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.creator.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
+| manager.index.creator.name | string | `"vald-index-creation"` | name of index creation job |
+| manager.index.creator.nodeSelector | object | `{}` | node selector |
+| manager.index.creator.node_name | string | `""` | node name |
+| manager.index.creator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-creation"}}}` | observability config (overrides defaults.observability) |
+| manager.index.creator.schedule | string | `"* * * * *"` | CronJob schedule setting for index creation |
+| manager.index.creator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.creator.startingDeadlineSeconds | int | `43200` | startingDeadlineSeconds setting for K8s completed jobs |
+| manager.index.creator.suspend | bool | `false` | CronJob suspend setting for index creation |
+| manager.index.creator.target_addrs | list | `[]` | indexing target addresses |
+| manager.index.creator.tolerations | list | `[]` | tolerations |
+| manager.index.creator.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
+| manager.index.creator.version | string | `"v0.0.0"` | version of index manager config |
+| manager.index.enabled | bool | `true` | index manager enabled |
+| manager.index.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.externalTrafficPolicy | string | `""` | external traffic policy (can be specified when service type is LoadBalancer or NodePort) : Cluster or Local |
+| manager.index.image.pullPolicy | string | `"Always"` | image pull policy |
+| manager.index.image.repository | string | `"vdaas/vald-manager-index"` | image repository |
+| manager.index.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.indexer.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
+| manager.index.indexer.auto_index_check_duration | string | `"1m"` | check duration of automatic indexing |
+| manager.index.indexer.auto_index_duration_limit | string | `"30m"` | limit duration of automatic indexing |
+| manager.index.indexer.auto_index_length | int | `100` | number of cache to trigger automatic indexing |
+| manager.index.indexer.auto_save_index_duration_limit | string | `"3h"` | limit duration of automatic index saving |
+| manager.index.indexer.auto_save_index_wait_duration | string | `"10m"` | duration of automatic index saving wait duration for next saving |
+| manager.index.indexer.concurrency | int | `1` | concurrency |
+| manager.index.indexer.creation_pool_size | int | `16` | number of pool size of create index processing |
+| manager.index.indexer.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
+| manager.index.indexer.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| manager.index.indexer.discoverer.duration | string | `"500ms"` | refresh duration to discover |
+| manager.index.indexer.node_name | string | `""` | node name |
+| manager.index.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
+| manager.index.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| manager.index.logging | object | `{}` | logging config (overrides defaults.logging) |
+| manager.index.maxUnavailable | string | `"50%"` | maximum number of unavailable replicas |
+| manager.index.name | string | `"vald-manager-index"` | name of index manager deployment |
+| manager.index.nodeName | string | `""` | node name |
+| manager.index.nodeSelector | object | `{}` | node selector |
+| manager.index.observability | object | `{"otlp":{"attribute":{"service_name":"vald-manager-index"}}}` | observability config (overrides defaults.observability) |
+| manager.index.operator | object | `{"affinity":{"nodeAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[],"requiredDuringSchedulingIgnoredDuringExecution":{"nodeSelectorTerms":[]}},"podAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[],"requiredDuringSchedulingIgnoredDuringExecution":[]},"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-index-operator"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}],"requiredDuringSchedulingIgnoredDuringExecution":[]}},"annotations":{},"enabled":false,"env":[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}],"image":{"pullPolicy":"Always","repository":"vdaas/vald-index-operator","tag":""},"initContainers":[],"kind":"Deployment","logging":{},"name":"vald-index-operator","namespace":"_MY_POD_NAMESPACE_","nodeName":"","nodeSelector":{},"observability":{"otlp":{"attribute":{"service_name":"vald-index-operator"}}},"podAnnotations":{},"podPriority":{"enabled":true,"value":1000000},"podSecurityContext":{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"progressDeadlineSeconds":600,"replicas":1,"resources":{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}},"revisionHistoryLimit":2,"rollingUpdate":{"maxSurge":"25%","maxUnavailable":"25%"},"rotation_job_concurrency":2,"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"server_config":{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}},"terminationGracePeriodSeconds":30,"time_zone":"","tolerations":[],"topologySpreadConstraints":[],"version":"v0.0.0","volumeMounts":[],"volumes":[]}` | [THIS FEATURE IS WIP] operator that manages vald index |
+| manager.index.operator.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| manager.index.operator.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| manager.index.operator.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| manager.index.operator.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| manager.index.operator.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app","operator":"In","values":["vald-index-operator"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":100}]` | pod anti-affinity preferred scheduling terms |
+| manager.index.operator.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| manager.index.operator.annotations | object | `{}` | deployment annotations |
+| manager.index.operator.enabled | bool | `false` | index operator enabled |
+| manager.index.operator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.operator.image.pullPolicy | string | `"Always"` | image pull policy |
+| manager.index.operator.image.repository | string | `"vdaas/vald-index-operator"` | image repository |
+| manager.index.operator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.operator.initContainers | list | `[]` | init containers |
+| manager.index.operator.kind | string | `"Deployment"` | deployment kind: Deployment or DaemonSet |
+| manager.index.operator.logging | object | `{}` | logging config (overrides defaults.logging) |
+| manager.index.operator.name | string | `"vald-index-operator"` | name of manager.index.operator deployment |
+| manager.index.operator.namespace | string | `"_MY_POD_NAMESPACE_"` | namespace to discovery |
+| manager.index.operator.nodeName | string | `""` | node name |
+| manager.index.operator.nodeSelector | object | `{}` | node selector |
+| manager.index.operator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-operator"}}}` | observability config (overrides defaults.observability) |
+| manager.index.operator.podAnnotations | object | `{}` | pod annotations |
+| manager.index.operator.podPriority.enabled | bool | `true` | manager.index.operator pod PriorityClass enabled |
+| manager.index.operator.podPriority.value | int | `1000000` | manager.index.operator pod PriorityClass value |
+| manager.index.operator.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| manager.index.operator.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| manager.index.operator.replicas | int | `1` | number of replicas. |
+| manager.index.operator.resources | object | `{"limits":{"cpu":"600m","memory":"200Mi"},"requests":{"cpu":"200m","memory":"65Mi"}}` | compute resources |
+| manager.index.operator.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| manager.index.operator.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| manager.index.operator.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| manager.index.operator.rotation_job_concurrency | int | `2` | maximum concurrent rotator job run. |
+| manager.index.operator.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| manager.index.operator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.operator.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| manager.index.operator.time_zone | string | `""` | Time zone |
+| manager.index.operator.tolerations | list | `[]` | tolerations |
+| manager.index.operator.topologySpreadConstraints | list | `[]` | topology spread constraints of manager.index.operator pods |
+| manager.index.operator.version | string | `"v0.0.0"` | version of index operator config |
+| manager.index.operator.volumeMounts | list | `[]` | volume mounts |
+| manager.index.operator.volumes | list | `[]` | volumes |
+| manager.index.podAnnotations | object | `{}` | pod annotations |
+| manager.index.podPriority.enabled | bool | `true` | index manager pod PriorityClass enabled |
+| manager.index.podPriority.value | int | `1000000` | index manager pod PriorityClass value |
+| manager.index.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| manager.index.progressDeadlineSeconds | int | `600` | progress deadline seconds |
+| manager.index.readreplica.rotator | object | `{"agent_namespace":"_MY_POD_NAMESPACE_","clusterRole":{"enabled":true,"name":"vald-readreplica-rotate"},"clusterRoleBinding":{"enabled":true,"name":"vald-readreplica-rotate"},"env":[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}],"image":{"pullPolicy":"Always","repository":"vdaas/vald-readreplica-rotate","tag":""},"initContainers":[],"name":"vald-readreplica-rotate","observability":{"otlp":{"attribute":{"service_name":"vald-readreplica-rotate"}}},"podSecurityContext":{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"securityContext":{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532},"server_config":{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}},"serviceAccount":{"enabled":true,"name":"vald-readreplica-rotate"},"target_read_replica_id_annotations_key":"vald.vdaas.org/target-read-replica-id","ttlSecondsAfterFinished":86400,"version":"v0.0.0"}` | [This feature is work in progress] readreplica agents rotation job |
+| manager.index.readreplica.rotator.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
+| manager.index.readreplica.rotator.clusterRole.enabled | bool | `true` | creates clusterRole resource |
+| manager.index.readreplica.rotator.clusterRole.name | string | `"vald-readreplica-rotate"` | name of clusterRole |
+| manager.index.readreplica.rotator.clusterRoleBinding.enabled | bool | `true` | creates clusterRoleBinding resource |
+| manager.index.readreplica.rotator.clusterRoleBinding.name | string | `"vald-readreplica-rotate"` | name of clusterRoleBinding |
+| manager.index.readreplica.rotator.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.readreplica.rotator.image.repository | string | `"vdaas/vald-readreplica-rotate"` | image repository |
+| manager.index.readreplica.rotator.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.readreplica.rotator.initContainers | list | `[]` | init containers |
+| manager.index.readreplica.rotator.name | string | `"vald-readreplica-rotate"` | name of readreplica rotator job |
+| manager.index.readreplica.rotator.observability | object | `{"otlp":{"attribute":{"service_name":"vald-readreplica-rotate"}}}` | observability config (overrides defaults.observability) |
+| manager.index.readreplica.rotator.podSecurityContext | object | `{"fsGroup":65532,"fsGroupChangePolicy":"OnRootMismatch","runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for pod |
+| manager.index.readreplica.rotator.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| manager.index.readreplica.rotator.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.readreplica.rotator.serviceAccount.enabled | bool | `true` | creates service account |
+| manager.index.readreplica.rotator.serviceAccount.name | string | `"vald-readreplica-rotate"` | name of service account |
+| manager.index.readreplica.rotator.target_read_replica_id_annotations_key | string | `"vald.vdaas.org/target-read-replica-id"` | name of annotations key for target read replica id |
+| manager.index.readreplica.rotator.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
+| manager.index.readreplica.rotator.version | string | `"v0.0.0"` | version of readreplica rotator config |
+| manager.index.replicas | int | `1` | number of replicas |
+| manager.index.resources | object | `{"limits":{"cpu":"1000m","memory":"500Mi"},"requests":{"cpu":"200m","memory":"80Mi"}}` | compute resources |
+| manager.index.revisionHistoryLimit | int | `2` | number of old history to retain to allow rollback |
+| manager.index.rollingUpdate.maxSurge | string | `"25%"` | max surge of rolling update |
+| manager.index.rollingUpdate.maxUnavailable | string | `"25%"` | max unavailable of rolling update |
+| manager.index.saver.affinity.nodeAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | node affinity preferred scheduling terms |
+| manager.index.saver.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms | list | `[]` | node affinity required node selectors |
+| manager.index.saver.affinity.podAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity preferred scheduling terms |
+| manager.index.saver.affinity.podAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod affinity required scheduling terms |
+| manager.index.saver.affinity.podAntiAffinity.preferredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity preferred scheduling terms |
+| manager.index.saver.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution | list | `[]` | pod anti-affinity required scheduling terms |
+| manager.index.saver.agent_namespace | string | `"_MY_POD_NAMESPACE_"` | namespace of agent pods to manage |
+| manager.index.saver.concurrency | int | `1` | concurrency for index saving |
+| manager.index.saver.discoverer.agent_client_options | object | `{"dial_option":{"net":{"dialer":{"keepalive":"15m"}}}}` | gRPC client options for agents (overrides defaults.grpc.client) |
+| manager.index.saver.discoverer.client | object | `{}` | gRPC client for discoverer (overrides defaults.grpc.client) |
+| manager.index.saver.discoverer.duration | string | `"500ms"` | refresh duration to discover |
+| manager.index.saver.enabled | bool | `false` | enable index save CronJob |
+| manager.index.saver.env | list | `[{"name":"MY_NODE_NAME","valueFrom":{"fieldRef":{"fieldPath":"spec.nodeName"}}},{"name":"MY_POD_NAME","valueFrom":{"fieldRef":{"fieldPath":"metadata.name"}}},{"name":"MY_POD_NAMESPACE","valueFrom":{"fieldRef":{"fieldPath":"metadata.namespace"}}}]` | environment variables |
+| manager.index.saver.image.pullPolicy | string | `"Always"` | |
+| manager.index.saver.image.repository | string | `"vdaas/vald-index-save"` | image repository |
+| manager.index.saver.image.tag | string | `""` | image tag (overrides defaults.image.tag) |
+| manager.index.saver.initContainers | list | `[{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-agent","sleepDuration":2,"target":"agent","type":"wait-for"},{"image":"busybox:stable","imagePullPolicy":"Always","name":"wait-for-discoverer","sleepDuration":2,"target":"discoverer","type":"wait-for"}]` | init containers |
+| manager.index.saver.name | string | `"vald-index-save"` | name of index save job |
+| manager.index.saver.nodeSelector | object | `{}` | node selector |
+| manager.index.saver.node_name | string | `""` | node name |
+| manager.index.saver.observability | object | `{"otlp":{"attribute":{"service_name":"vald-index-save"}}}` | observability config (overrides defaults.observability) |
+| manager.index.saver.schedule | string | `"0 */3 * * *"` | CronJob schedule setting for index save |
+| manager.index.saver.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.saver.startingDeadlineSeconds | int | `43200` | startingDeadlineSeconds setting for K8s completed jobs |
+| manager.index.saver.suspend | bool | `false` | CronJob suspend setting for index creation |
+| manager.index.saver.target_addrs | list | `[]` | index saving target addresses |
+| manager.index.saver.tolerations | list | `[]` | tolerations |
+| manager.index.saver.ttlSecondsAfterFinished | int | `86400` | ttl setting for K8s completed jobs |
+| manager.index.saver.version | string | `"v0.0.0"` | version of index manager config |
+| manager.index.securityContext | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"privileged":false,"readOnlyRootFilesystem":true,"runAsGroup":65532,"runAsNonRoot":true,"runAsUser":65532}` | security context for container |
+| manager.index.server_config | object | `{"healths":{"liveness":{},"readiness":{},"startup":{}},"metrics":{"pprof":{}},"servers":{"grpc":{},"rest":{}}}` | server config (overrides defaults.server_config) |
+| manager.index.service.annotations | object | `{}` | service annotations |
+| manager.index.service.labels | object | `{}` | service labels |
+| manager.index.serviceType | string | `"ClusterIP"` | service type: ClusterIP, LoadBalancer or NodePort |
+| manager.index.terminationGracePeriodSeconds | int | `30` | duration in seconds pod needs to terminate gracefully |
+| manager.index.time_zone | string | `""` | Time zone |
+| manager.index.tolerations | list | `[]` | tolerations |
+| manager.index.topologySpreadConstraints | list | `[]` | topology spread constraints of index manager pods |
+| manager.index.unhealthyPodEvictionPolicy | string | `"AlwaysAllow"` | controls whether unhealthy pods can be evicted based on the application's healthy pod count, supporting either cautious or permissive eviction. |
+| manager.index.version | string | `"v0.0.0"` | version of index manager config |
+| manager.index.volumeMounts | list | `[]` | volume mounts |
+| manager.index.volumes | list | `[]` | volumes |
diff --git a/charts/vald/values.yaml b/charts/vald/values.yaml
index 067e804035..a71dab5c12 100644
--- a/charts/vald/values.yaml
+++ b/charts/vald/values.yaml
@@ -38,7 +38,7 @@ defaults:
image:
# @schema {"name": "defaults.image.tag", "type": "string"}
# defaults.image.tag -- docker image tag
- tag: v1.7.14
+ tag: v1.7.15
# @schema {"name": "defaults.server_config", "type": "object", "anchor": "server_config"}
server_config:
# @schema {"name": "defaults.server_config.servers", "type": "object"}
diff --git a/k8s/agent/ngt/configmap.yaml b/k8s/agent/ngt/configmap.yaml
index 0b1055715b..e3de6bbdf4 100644
--- a/k8s/agent/ngt/configmap.yaml
+++ b/k8s/agent/ngt/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-agent-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
data:
config.yaml: |
diff --git a/k8s/agent/pdb.yaml b/k8s/agent/pdb.yaml
index 34ba97f34c..cb6b30eff8 100644
--- a/k8s/agent/pdb.yaml
+++ b/k8s/agent/pdb.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-agent
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
spec:
maxUnavailable: 1
diff --git a/k8s/agent/priorityclass.yaml b/k8s/agent/priorityclass.yaml
index 1c948e19ae..eab125d12f 100644
--- a/k8s/agent/priorityclass.yaml
+++ b/k8s/agent/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-agent-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
value: 1e+09
preemptionPolicy: Never
diff --git a/k8s/agent/statefulset.yaml b/k8s/agent/statefulset.yaml
index f82cee5c9d..f8bfca2a38 100644
--- a/k8s/agent/statefulset.yaml
+++ b/k8s/agent/statefulset.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-agent
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
spec:
serviceName: vald-agent
diff --git a/k8s/agent/svc.yaml b/k8s/agent/svc.yaml
index 62288a94a9..3315e8de2f 100644
--- a/k8s/agent/svc.yaml
+++ b/k8s/agent/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-agent
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
spec:
ports:
diff --git a/k8s/discoverer/clusterrole.yaml b/k8s/discoverer/clusterrole.yaml
index 962e8daa88..4bf63c2ecf 100644
--- a/k8s/discoverer/clusterrole.yaml
+++ b/k8s/discoverer/clusterrole.yaml
@@ -19,10 +19,10 @@ metadata:
name: discoverer
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
rules:
- apiGroups:
diff --git a/k8s/discoverer/clusterrolebinding.yaml b/k8s/discoverer/clusterrolebinding.yaml
index d36e123f17..ec70815b47 100644
--- a/k8s/discoverer/clusterrolebinding.yaml
+++ b/k8s/discoverer/clusterrolebinding.yaml
@@ -19,10 +19,10 @@ metadata:
name: discoverer
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
roleRef:
apiGroup: rbac.authorization.k8s.io
diff --git a/k8s/discoverer/configmap.yaml b/k8s/discoverer/configmap.yaml
index 86ac6e9760..348aeda802 100644
--- a/k8s/discoverer/configmap.yaml
+++ b/k8s/discoverer/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-discoverer-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
data:
config.yaml: |
diff --git a/k8s/discoverer/deployment.yaml b/k8s/discoverer/deployment.yaml
index 3e88680bf7..9a4bcaca9d 100644
--- a/k8s/discoverer/deployment.yaml
+++ b/k8s/discoverer/deployment.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-discoverer
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
spec:
progressDeadlineSeconds: 600
@@ -46,7 +46,7 @@ spec:
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: discoverer
annotations:
- checksum/configmap: 59dc2f613bfcf9d9a74e6a53e3fd58ffb09e9213c03ec7f4181be055c4f59edb
+ checksum/configmap: 421e7b05635dd0be50c1a81affe0bae20f02b82f12cd2ec0691756fc921089b4
profefe.com/enable: "true"
profefe.com/port: "6060"
profefe.com/service: vald-discoverer
diff --git a/k8s/discoverer/pdb.yaml b/k8s/discoverer/pdb.yaml
index 3973406ecf..ba5ac092e3 100644
--- a/k8s/discoverer/pdb.yaml
+++ b/k8s/discoverer/pdb.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-discoverer
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
spec:
maxUnavailable: 50%
diff --git a/k8s/discoverer/priorityclass.yaml b/k8s/discoverer/priorityclass.yaml
index 234eff3574..a705d98173 100644
--- a/k8s/discoverer/priorityclass.yaml
+++ b/k8s/discoverer/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-discoverer-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
value: 1e+06
globalDefault: false
diff --git a/k8s/discoverer/serviceaccount.yaml b/k8s/discoverer/serviceaccount.yaml
index 5056a58d22..938f2e72a0 100644
--- a/k8s/discoverer/serviceaccount.yaml
+++ b/k8s/discoverer/serviceaccount.yaml
@@ -19,8 +19,8 @@ metadata:
name: vald
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
diff --git a/k8s/discoverer/svc.yaml b/k8s/discoverer/svc.yaml
index bd431170d8..64c29d5160 100644
--- a/k8s/discoverer/svc.yaml
+++ b/k8s/discoverer/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-discoverer
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: discoverer
spec:
ports:
diff --git a/k8s/gateway/gateway/ing.yaml b/k8s/gateway/gateway/ing.yaml
index 409a5cf70b..c37ca32c84 100644
--- a/k8s/gateway/gateway/ing.yaml
+++ b/k8s/gateway/gateway/ing.yaml
@@ -22,10 +22,10 @@ metadata:
name: vald-lb-gateway-ingress
app: vald-lb-gateway-ingress
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
name: release-name-ingress
spec:
diff --git a/k8s/gateway/gateway/lb/configmap.yaml b/k8s/gateway/gateway/lb/configmap.yaml
index d188c411d9..7c3d1df81e 100644
--- a/k8s/gateway/gateway/lb/configmap.yaml
+++ b/k8s/gateway/gateway/lb/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-lb-gateway-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
data:
config.yaml: |
diff --git a/k8s/gateway/gateway/lb/deployment.yaml b/k8s/gateway/gateway/lb/deployment.yaml
index 07e176bb7d..fe038223eb 100644
--- a/k8s/gateway/gateway/lb/deployment.yaml
+++ b/k8s/gateway/gateway/lb/deployment.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-lb-gateway
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
spec:
progressDeadlineSeconds: 600
@@ -45,7 +45,7 @@ spec:
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: gateway-lb
annotations:
- checksum/configmap: 34833ada0d57883cd1515c5a66afe131e89919e947127f303f52f4f265316915
+ checksum/configmap: ed38233ba2f84a0878feccb134bab96073fbbe8e206be0bcbd149349881f75ac
profefe.com/enable: "true"
profefe.com/port: "6060"
profefe.com/service: vald-lb-gateway
diff --git a/k8s/gateway/gateway/lb/hpa.yaml b/k8s/gateway/gateway/lb/hpa.yaml
index b7fc2a7e52..d874852a6d 100644
--- a/k8s/gateway/gateway/lb/hpa.yaml
+++ b/k8s/gateway/gateway/lb/hpa.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-lb-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
spec:
maxReplicas: 9
diff --git a/k8s/gateway/gateway/lb/pdb.yaml b/k8s/gateway/gateway/lb/pdb.yaml
index e43ebbecc7..34ec03263f 100644
--- a/k8s/gateway/gateway/lb/pdb.yaml
+++ b/k8s/gateway/gateway/lb/pdb.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-lb-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
spec:
maxUnavailable: 50%
diff --git a/k8s/gateway/gateway/lb/priorityclass.yaml b/k8s/gateway/gateway/lb/priorityclass.yaml
index e84198032c..26a80e0373 100644
--- a/k8s/gateway/gateway/lb/priorityclass.yaml
+++ b/k8s/gateway/gateway/lb/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-lb-gateway-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
value: 1e+06
globalDefault: false
diff --git a/k8s/gateway/gateway/lb/svc.yaml b/k8s/gateway/gateway/lb/svc.yaml
index cd8f6566ba..e15d2d3062 100644
--- a/k8s/gateway/gateway/lb/svc.yaml
+++ b/k8s/gateway/gateway/lb/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-lb-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-lb
spec:
ports:
diff --git a/k8s/gateway/gateway/mirror/clusterrole.yaml b/k8s/gateway/gateway/mirror/clusterrole.yaml
index 96540214c4..569eae060d 100644
--- a/k8s/gateway/gateway/mirror/clusterrole.yaml
+++ b/k8s/gateway/gateway/mirror/clusterrole.yaml
@@ -19,10 +19,10 @@ metadata:
name: gateway-mirror
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
rules:
- apiGroups:
diff --git a/k8s/gateway/gateway/mirror/clusterrolebinding.yaml b/k8s/gateway/gateway/mirror/clusterrolebinding.yaml
index cacb0e2cd4..10ad228898 100644
--- a/k8s/gateway/gateway/mirror/clusterrolebinding.yaml
+++ b/k8s/gateway/gateway/mirror/clusterrolebinding.yaml
@@ -19,10 +19,10 @@ metadata:
name: gateway-mirror
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
roleRef:
apiGroup: rbac.authorization.k8s.io
diff --git a/k8s/gateway/gateway/mirror/configmap.yaml b/k8s/gateway/gateway/mirror/configmap.yaml
index bf3208622e..b27c2f357b 100644
--- a/k8s/gateway/gateway/mirror/configmap.yaml
+++ b/k8s/gateway/gateway/mirror/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-mirror-gateway-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
data:
config.yaml: "---\nversion: v0.0.0\ntime_zone: UTC\nlogging:\n format: raw\n level: debug\n logger: glg\nserver_config:\n servers:\n - name: grpc\n host: 0.0.0.0\n port: 8081\n grpc:\n bidirectional_stream_concurrency: 20\n connection_timeout: \"\"\n enable_admin: true\n enable_channelz: true\n enable_reflection: true\n header_table_size: 0\n initial_conn_window_size: 2097152\n initial_window_size: 1048576\n interceptors:\n - RecoverInterceptor\n keepalive:\n max_conn_age: \"\"\n max_conn_age_grace: \"\"\n max_conn_idle: \"\"\n min_time: 10m\n permit_without_stream: false\n time: 3h\n timeout: 60s\n max_concurrent_streams: 0\n max_header_list_size: 0\n max_receive_message_size: 0\n max_send_message_size: 0\n num_stream_workers: 0\n read_buffer_size: 0\n shared_write_buffer: false\n wait_for_handlers: true\n write_buffer_size: 0\n mode: GRPC\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n health_check_servers:\n - name: liveness\n host: 0.0.0.0\n port: 3000\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 5s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n - name: readiness\n host: 0.0.0.0\n port: 3001\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 0s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n metrics_servers:\n - name: pprof\n host: 0.0.0.0\n port: 6060\n http:\n handler_timeout: 5s\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: 2s\n read_header_timeout: 1s\n read_timeout: 1s\n shutdown_duration: 5s\n write_timeout: 1m\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: true\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n startup_strategy:\n - liveness\n - pprof\n - grpc\n - readiness\n shutdown_strategy:\n - readiness\n - grpc\n - pprof\n - liveness\n full_shutdown_duration: 600s\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\nobservability:\n enabled: false\n otlp:\n collector_endpoint: \"\"\n trace_batch_timeout: \"1s\"\n trace_export_timeout: \"1m\"\n trace_max_export_batch_size: 1024\n trace_max_queue_size: 256\n metrics_export_interval: \"1s\"\n metrics_export_timeout: \"1m\"\n attribute:\n namespace: \"_MY_POD_NAMESPACE_\"\n pod_name: \"_MY_POD_NAME_\"\n node_name: \"_MY_NODE_NAME_\"\n service_name: \"vald-mirror-gateway\"\n metrics:\n enable_cgo: true\n enable_goroutine: true\n enable_memory: true\n enable_version_info: true\n version_info_labels:\n - vald_version\n - server_name\n - git_commit\n - build_time\n - go_version\n - go_os\n - go_arch\n - algorithm_info\n trace:\n enabled: false\ngateway:\n pod_name: _MY_POD_NAME_\n register_duration: 1s\n namespace: _MY_POD_NAMESPACE_\n discovery_duration: 1s\n colocation: dc1\n group: \n net:\n dialer:\n dual_stack_enabled: false\n keepalive: 10m\n timeout: 30s\n dns:\n cache_enabled: true\n cache_expiration: 24h\n refresh_duration: 5m\n network: tcp\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: true\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\n client:\n addrs:\n - vald-lb-gateway.default.svc.cluster.local:8081\n health_check_duration: \"1s\"\n connection_pool:\n enable_dns_resolver: true\n enable_rebalance: true\n old_conn_close_duration: 2m\n rebalance_duration: 30m\n size: 3\n backoff:\n backoff_factor: 1.1\n backoff_time_limit: 5s\n enable_error_log: true\n initial_duration: 5ms\n jitter_limit: 100ms\n maximum_duration: 5s\n retry_count: 100\n circuit_breaker:\n closed_error_rate: 0.7\n closed_refresh_timeout: 10s\n half_open_error_rate: 0.5\n min_samples: 1000\n open_timeout: 1s\n call_option:\n content_subtype: \"\"\n max_recv_msg_size: 0\n max_retry_rpc_buffer_size: 0\n max_send_msg_size: 0\n wait_for_ready: true\n dial_option:\n authority: \"\"\n backoff_base_delay: 1s\n backoff_jitter: 0.2\n backoff_max_delay: 120s\n backoff_multiplier: 1.6\n disable_retry: false\n enable_backoff: false\n idle_timeout: 1h\n initial_connection_window_size: 2097152\n initial_window_size: 1048576\n insecure: true\n interceptors: []\n keepalive:\n permit_without_stream: false\n time: \"\"\n timeout: 30s\n max_call_attempts: 0\n max_header_list_size: 0\n max_msg_size: 0\n min_connection_timeout: 20s\n net:\n dialer:\n dual_stack_enabled: true\n keepalive: \"\"\n timeout: \"\"\n dns:\n cache_enabled: true\n cache_expiration: 1h\n refresh_duration: 30m\n network: tcp\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\n read_buffer_size: 0\n shared_write_buffer: false\n timeout: \"\"\n user_agent: Vald-gRPC\n write_buffer_size: 0\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\n self_mirror_addr: vald-mirror-gateway.default.svc.cluster.local:8081\n gateway_addr: vald-lb-gateway.default.svc.cluster.local:8081\n"
diff --git a/k8s/gateway/gateway/mirror/deployment.yaml b/k8s/gateway/gateway/mirror/deployment.yaml
index 5a0c8ab491..4a2b53a92c 100644
--- a/k8s/gateway/gateway/mirror/deployment.yaml
+++ b/k8s/gateway/gateway/mirror/deployment.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-mirror-gateway
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
spec:
progressDeadlineSeconds: 600
@@ -45,7 +45,7 @@ spec:
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: gateway-mirror
annotations:
- checksum/configmap: 5fec186a5052df1bd407582ddeb40b15289021ecfe3aa111d14fff4222d07291
+ checksum/configmap: 4525a8fc062a694dc2c9d424c60d6007518efd67863aa5817e202a3f47ffe4e6
pyroscope.io/scrape: "true"
pyroscope.io/application-name: vald-mirror-gateway
pyroscope.io/profile-cpu-enabled: "true"
diff --git a/k8s/gateway/gateway/mirror/hpa.yaml b/k8s/gateway/gateway/mirror/hpa.yaml
index 056985391b..df4ee9d00b 100644
--- a/k8s/gateway/gateway/mirror/hpa.yaml
+++ b/k8s/gateway/gateway/mirror/hpa.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-mirror-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
spec:
maxReplicas: 9
diff --git a/k8s/gateway/gateway/mirror/pdb.yaml b/k8s/gateway/gateway/mirror/pdb.yaml
index 930ad3b340..a676b0ca0d 100644
--- a/k8s/gateway/gateway/mirror/pdb.yaml
+++ b/k8s/gateway/gateway/mirror/pdb.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-mirror-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
spec:
maxUnavailable: 50%
diff --git a/k8s/gateway/gateway/mirror/priorityclass.yaml b/k8s/gateway/gateway/mirror/priorityclass.yaml
index 91950479e9..28d195cccd 100644
--- a/k8s/gateway/gateway/mirror/priorityclass.yaml
+++ b/k8s/gateway/gateway/mirror/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-mirror-gateway-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
value: 1e+06
globalDefault: false
diff --git a/k8s/gateway/gateway/mirror/serviceaccount.yaml b/k8s/gateway/gateway/mirror/serviceaccount.yaml
index 0898075c07..cf46c05a32 100644
--- a/k8s/gateway/gateway/mirror/serviceaccount.yaml
+++ b/k8s/gateway/gateway/mirror/serviceaccount.yaml
@@ -19,8 +19,8 @@ metadata:
name: gateway-mirror
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
diff --git a/k8s/gateway/gateway/mirror/svc.yaml b/k8s/gateway/gateway/mirror/svc.yaml
index 58b2f3248a..8e5bed3e0e 100644
--- a/k8s/gateway/gateway/mirror/svc.yaml
+++ b/k8s/gateway/gateway/mirror/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-mirror-gateway
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: gateway-mirror
spec:
ports:
diff --git a/k8s/index/job/correction/configmap.yaml b/k8s/index/job/correction/configmap.yaml
index 72550c006b..861e6f9adc 100644
--- a/k8s/index/job/correction/configmap.yaml
+++ b/k8s/index/job/correction/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-index-correction-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: vald-index-correction
data:
config.yaml: |
diff --git a/k8s/index/job/correction/cronjob.yaml b/k8s/index/job/correction/cronjob.yaml
index a79b1e0803..d0c4e14918 100644
--- a/k8s/index/job/correction/cronjob.yaml
+++ b/k8s/index/job/correction/cronjob.yaml
@@ -20,11 +20,11 @@ metadata:
labels:
app: vald-index-correction
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-correction
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
spec:
schedule: "6 3 * * *"
concurrencyPolicy: Forbid
@@ -38,11 +38,11 @@ spec:
labels:
app: vald-index-correction
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-correction
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
annotations:
pyroscope.io/scrape: "true"
pyroscope.io/application-name: vald-index-correction
@@ -75,6 +75,15 @@ spec:
echo "waiting for discoverer to be ready..."
sleep 2;
done
+ affinity:
+ nodeAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ podAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
containers:
- name: vald-index-correction
image: "vdaas/vald-index-correction:nightly"
diff --git a/k8s/index/job/creation/configmap.yaml b/k8s/index/job/creation/configmap.yaml
index b335317800..840ce477f6 100644
--- a/k8s/index/job/creation/configmap.yaml
+++ b/k8s/index/job/creation/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-index-creation-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: vald-index-creation
data:
config.yaml: |
diff --git a/k8s/index/job/creation/cronjob.yaml b/k8s/index/job/creation/cronjob.yaml
index fa4d06acf7..95bf852dbf 100644
--- a/k8s/index/job/creation/cronjob.yaml
+++ b/k8s/index/job/creation/cronjob.yaml
@@ -20,11 +20,11 @@ metadata:
labels:
app: vald-index-creation
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-creation
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
spec:
schedule: "* * * * *"
concurrencyPolicy: Forbid
@@ -38,11 +38,11 @@ spec:
labels:
app: vald-index-creation
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-creation
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
annotations:
pyroscope.io/scrape: "true"
pyroscope.io/application-name: vald-index-creation
@@ -75,6 +75,15 @@ spec:
echo "waiting for discoverer to be ready..."
sleep 2;
done
+ affinity:
+ nodeAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ podAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
containers:
- name: vald-index-creation
image: "vdaas/vald-index-creation:nightly"
diff --git a/k8s/index/job/deletion/configmap.yaml b/k8s/index/job/deletion/configmap.yaml
deleted file mode 100644
index 164fabb120..0000000000
--- a/k8s/index/job/deletion/configmap.yaml
+++ /dev/null
@@ -1,415 +0,0 @@
-#
-# Copyright (C) 2019-2024 vdaas.org vald team
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# You may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: vald-index-deletion-config
- labels:
- app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
- app.kubernetes.io/component: vald-index-deletion
-data:
- config.yaml: |
- ---
- version: v0.0.0
- time_zone: UTC
- logging:
- format: raw
- level: debug
- logger: glg
- server_config:
- servers:
- - name: grpc
- host: 0.0.0.0
- port: 8081
- grpc:
- bidirectional_stream_concurrency: 20
- connection_timeout: ""
- enable_admin: true
- enable_channelz: true
- enable_reflection: true
- header_table_size: 0
- initial_conn_window_size: 2097152
- initial_window_size: 1048576
- interceptors:
- - RecoverInterceptor
- keepalive:
- max_conn_age: ""
- max_conn_age_grace: ""
- max_conn_idle: ""
- min_time: 10m
- permit_without_stream: false
- time: 3h
- timeout: 60s
- max_concurrent_streams: 0
- max_header_list_size: 0
- max_receive_message_size: 0
- max_send_message_size: 0
- num_stream_workers: 0
- read_buffer_size: 0
- shared_write_buffer: false
- wait_for_handlers: true
- write_buffer_size: 0
- mode: GRPC
- network: tcp
- probe_wait_time: 3s
- restart: true
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: false
- tcp_defer_accept: false
- tcp_fast_open: false
- tcp_no_delay: false
- tcp_quick_ack: false
- socket_path: ""
- health_check_servers:
- - name: liveness
- host: 0.0.0.0
- port: 3000
- http:
- handler_timeout: ""
- http2:
- enabled: false
- handler_limit: 0
- max_concurrent_streams: 0
- max_decoder_header_table_size: 4096
- max_encoder_header_table_size: 4096
- max_read_frame_size: 0
- max_upload_buffer_per_connection: 0
- max_upload_buffer_per_stream: 0
- permit_prohibited_cipher_suites: true
- idle_timeout: ""
- read_header_timeout: ""
- read_timeout: ""
- shutdown_duration: 5s
- write_timeout: ""
- mode: REST
- network: tcp
- probe_wait_time: 3s
- restart: true
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: false
- tcp_defer_accept: false
- tcp_fast_open: true
- tcp_no_delay: true
- tcp_quick_ack: true
- socket_path: ""
- - name: readiness
- host: 0.0.0.0
- port: 3001
- http:
- handler_timeout: ""
- http2:
- enabled: false
- handler_limit: 0
- max_concurrent_streams: 0
- max_decoder_header_table_size: 4096
- max_encoder_header_table_size: 4096
- max_read_frame_size: 0
- max_upload_buffer_per_connection: 0
- max_upload_buffer_per_stream: 0
- permit_prohibited_cipher_suites: true
- idle_timeout: ""
- read_header_timeout: ""
- read_timeout: ""
- shutdown_duration: 0s
- write_timeout: ""
- mode: REST
- network: tcp
- probe_wait_time: 3s
- restart: true
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: false
- tcp_defer_accept: false
- tcp_fast_open: true
- tcp_no_delay: true
- tcp_quick_ack: true
- socket_path: ""
- metrics_servers:
- - name: pprof
- host: 0.0.0.0
- port: 6060
- http:
- handler_timeout: 5s
- http2:
- enabled: false
- handler_limit: 0
- max_concurrent_streams: 0
- max_decoder_header_table_size: 4096
- max_encoder_header_table_size: 4096
- max_read_frame_size: 0
- max_upload_buffer_per_connection: 0
- max_upload_buffer_per_stream: 0
- permit_prohibited_cipher_suites: true
- idle_timeout: 2s
- read_header_timeout: 1s
- read_timeout: 1s
- shutdown_duration: 5s
- write_timeout: 1m
- mode: REST
- network: tcp
- probe_wait_time: 3s
- restart: true
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: true
- tcp_defer_accept: false
- tcp_fast_open: false
- tcp_no_delay: false
- tcp_quick_ack: false
- socket_path: ""
- startup_strategy:
- - liveness
- - pprof
- - grpc
- - readiness
- shutdown_strategy:
- - readiness
- - grpc
- - pprof
- - liveness
- full_shutdown_duration: 600s
- tls:
- ca: /path/to/ca
- cert: /path/to/cert
- enabled: false
- insecure_skip_verify: false
- key: /path/to/key
- observability:
- enabled: false
- otlp:
- collector_endpoint: ""
- trace_batch_timeout: "1s"
- trace_export_timeout: "1m"
- trace_max_export_batch_size: 1024
- trace_max_queue_size: 256
- metrics_export_interval: "1s"
- metrics_export_timeout: "1m"
- attribute:
- namespace: "_MY_POD_NAMESPACE_"
- pod_name: "_MY_POD_NAME_"
- node_name: "_MY_NODE_NAME_"
- service_name: "vald-index-deletion"
- metrics:
- enable_cgo: true
- enable_goroutine: true
- enable_memory: true
- enable_version_info: true
- version_info_labels:
- - vald_version
- - server_name
- - git_commit
- - build_time
- - go_version
- - go_os
- - go_arch
- - algorithm_info
- trace:
- enabled: false
- deleter:
- index_id: "sample"
- agent_port: 8081
- agent_name: "vald-agent"
- agent_dns: vald-agent.default.svc.cluster.local
- agent_namespace: "_MY_POD_NAMESPACE_"
- node_name: ""
- concurrency: 1
- target_addrs: []
- discoverer:
- duration: 500ms
- client:
- addrs:
- - vald-discoverer.default.svc.cluster.local:8081
- health_check_duration: "1s"
- connection_pool:
- enable_dns_resolver: true
- enable_rebalance: true
- old_conn_close_duration: 2m
- rebalance_duration: 30m
- size: 3
- backoff:
- backoff_factor: 1.1
- backoff_time_limit: 5s
- enable_error_log: true
- initial_duration: 5ms
- jitter_limit: 100ms
- maximum_duration: 5s
- retry_count: 100
- circuit_breaker:
- closed_error_rate: 0.7
- closed_refresh_timeout: 10s
- half_open_error_rate: 0.5
- min_samples: 1000
- open_timeout: 1s
- call_option:
- content_subtype: ""
- max_recv_msg_size: 0
- max_retry_rpc_buffer_size: 0
- max_send_msg_size: 0
- wait_for_ready: true
- dial_option:
- authority: ""
- backoff_base_delay: 1s
- backoff_jitter: 0.2
- backoff_max_delay: 120s
- backoff_multiplier: 1.6
- disable_retry: false
- enable_backoff: false
- idle_timeout: 1h
- initial_connection_window_size: 2097152
- initial_window_size: 1048576
- insecure: true
- interceptors: []
- keepalive:
- permit_without_stream: false
- time: ""
- timeout: 30s
- max_call_attempts: 0
- max_header_list_size: 0
- max_msg_size: 0
- min_connection_timeout: 20s
- net:
- dialer:
- dual_stack_enabled: true
- keepalive: ""
- timeout: ""
- dns:
- cache_enabled: true
- cache_expiration: 1h
- refresh_duration: 30m
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: false
- tcp_defer_accept: false
- tcp_fast_open: false
- tcp_no_delay: false
- tcp_quick_ack: false
- tls:
- ca: /path/to/ca
- cert: /path/to/cert
- enabled: false
- insecure_skip_verify: false
- key: /path/to/key
- read_buffer_size: 0
- shared_write_buffer: false
- timeout: ""
- user_agent: Vald-gRPC
- write_buffer_size: 0
- tls:
- ca: /path/to/ca
- cert: /path/to/cert
- enabled: false
- insecure_skip_verify: false
- key: /path/to/key
- agent_client_options:
- addrs: []
- health_check_duration: "1s"
- connection_pool:
- enable_dns_resolver: true
- enable_rebalance: true
- old_conn_close_duration: 2m
- rebalance_duration: 30m
- size: 3
- backoff:
- backoff_factor: 1.1
- backoff_time_limit: 5s
- enable_error_log: true
- initial_duration: 5ms
- jitter_limit: 100ms
- maximum_duration: 5s
- retry_count: 100
- circuit_breaker:
- closed_error_rate: 0.7
- closed_refresh_timeout: 10s
- half_open_error_rate: 0.5
- min_samples: 1000
- open_timeout: 1s
- call_option:
- content_subtype: ""
- max_recv_msg_size: 0
- max_retry_rpc_buffer_size: 0
- max_send_msg_size: 0
- wait_for_ready: true
- dial_option:
- write_buffer_size: 0
- read_buffer_size: 0
- initial_window_size: 1.048576e+06
- initial_connection_window_size: 2.097152e+06
- max_msg_size: 0
- backoff_max_delay: "120s"
- backoff_base_delay: "1s"
- backoff_multiplier: 1.6
- backoff_jitter: 0.2
- min_connection_timeout: "20s"
- enable_backoff: false
- insecure: true
- timeout: ""
- interceptors: []
- net:
- dns:
- cache_enabled: true
- cache_expiration: 1h
- refresh_duration: 30m
- dialer:
- timeout: ""
- keepalive: "15m"
- dual_stack_enabled: true
- tls:
- ca: /path/to/ca
- cert: /path/to/cert
- enabled: false
- insecure_skip_verify: false
- key: /path/to/key
- socket_option:
- ip_recover_destination_addr: false
- ip_transparent: false
- reuse_addr: true
- reuse_port: true
- tcp_cork: false
- tcp_defer_accept: false
- tcp_fast_open: false
- tcp_no_delay: false
- tcp_quick_ack: false
- keepalive:
- permit_without_stream: false
- time: ""
- timeout: 30s
- tls:
- ca: /path/to/ca
- cert: /path/to/cert
- enabled: false
- insecure_skip_verify: false
- key: /path/to/key
diff --git a/k8s/index/job/deletion/cronjob.yaml b/k8s/index/job/deletion/cronjob.yaml
deleted file mode 100644
index ad1ff548f8..0000000000
--- a/k8s/index/job/deletion/cronjob.yaml
+++ /dev/null
@@ -1,146 +0,0 @@
-#
-# Copyright (C) 2019-2024 vdaas.org vald team
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# You may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# https://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-apiVersion: batch/v1
-kind: CronJob
-metadata:
- name: vald-index-deletion
- labels:
- app: vald-index-deletion
- app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/instance: release-name
- app.kubernetes.io/component: vald-index-deletion
- app.kubernetes.io/version: v1.7.14
-spec:
- schedule: "* * * * *"
- concurrencyPolicy: Forbid
- suspend: false
- startingDeadlineSeconds: 43200
- jobTemplate:
- spec:
- ttlSecondsAfterFinished: 86400
- template:
- metadata:
- labels:
- app: vald-index-deletion
- app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/instance: release-name
- app.kubernetes.io/component: vald-index-deletion
- app.kubernetes.io/version: v1.7.14
- annotations:
- pyroscope.io/scrape: "true"
- pyroscope.io/application-name: vald-index-deletion
- pyroscope.io/profile-cpu-enabled: "true"
- pyroscope.io/profile-mem-enabled: "true"
- pyroscope.io/port: "6060"
- spec:
- initContainers:
- - name: wait-for-agent
- image: busybox:stable
- imagePullPolicy: Always
- command:
- - /bin/sh
- - -e
- - -c
- - |
- until [ "$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')" == "200" ]; do
- echo "waiting for agent to be ready..."
- sleep 2;
- done
- - name: wait-for-discoverer
- image: busybox:stable
- imagePullPolicy: Always
- command:
- - /bin/sh
- - -e
- - -c
- - |
- until [ "$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')" == "200" ]; do
- echo "waiting for discoverer to be ready..."
- sleep 2;
- done
- containers:
- - name: vald-index-deletion
- image: "vdaas/vald-index-deletion:nightly"
- imagePullPolicy: Always
- volumeMounts:
- - name: vald-index-deletion-config
- mountPath: /etc/server/
- livenessProbe:
- failureThreshold: 2
- httpGet:
- path: /liveness
- port: liveness
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 3
- successThreshold: 1
- timeoutSeconds: 2
- readinessProbe:
- failureThreshold: 2
- httpGet:
- path: /readiness
- port: readiness
- scheme: HTTP
- initialDelaySeconds: 10
- periodSeconds: 3
- successThreshold: 1
- timeoutSeconds: 2
- startupProbe:
- failureThreshold: 30
- httpGet:
- path: /liveness
- port: liveness
- scheme: HTTP
- initialDelaySeconds: 5
- periodSeconds: 5
- successThreshold: 1
- timeoutSeconds: 2
- ports:
- - name: liveness
- protocol: TCP
- containerPort: 3000
- - name: readiness
- protocol: TCP
- containerPort: 3001
- - name: grpc
- protocol: TCP
- containerPort: 8081
- - name: pprof
- protocol: TCP
- containerPort: 6060
- env:
- - name: MY_NODE_NAME
- valueFrom:
- fieldRef:
- fieldPath: spec.nodeName
- - name: MY_POD_NAME
- valueFrom:
- fieldRef:
- fieldPath: metadata.name
- - name: MY_POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- restartPolicy: OnFailure
- volumes:
- - name: vald-index-deletion-config
- configMap:
- defaultMode: 420
- name: vald-index-deletion-config
diff --git a/k8s/index/job/save/configmap.yaml b/k8s/index/job/save/configmap.yaml
index c815e56b08..fcbc9566d7 100644
--- a/k8s/index/job/save/configmap.yaml
+++ b/k8s/index/job/save/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-index-save-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: vald-index-save
data:
config.yaml: |
diff --git a/k8s/index/job/save/cronjob.yaml b/k8s/index/job/save/cronjob.yaml
index 3a54463722..1de3c96cb2 100644
--- a/k8s/index/job/save/cronjob.yaml
+++ b/k8s/index/job/save/cronjob.yaml
@@ -20,11 +20,11 @@ metadata:
labels:
app: vald-index-save
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-save
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
spec:
schedule: "0 */3 * * *"
concurrencyPolicy: Forbid
@@ -38,11 +38,11 @@ spec:
labels:
app: vald-index-save
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: vald-index-save
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
annotations:
pyroscope.io/scrape: "true"
pyroscope.io/application-name: vald-index-save
@@ -75,6 +75,15 @@ spec:
echo "waiting for discoverer to be ready..."
sleep 2;
done
+ affinity:
+ nodeAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ podAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
+ podAntiAffinity:
+ preferredDuringSchedulingIgnoredDuringExecution: []
+ requiredDuringSchedulingIgnoredDuringExecution: []
containers:
- name: vald-index-save
image: "vdaas/vald-index-save:nightly"
diff --git a/k8s/index/operator/configmap.yaml b/k8s/index/operator/configmap.yaml
index 8fb7d958a2..002db7884b 100644
--- a/k8s/index/operator/configmap.yaml
+++ b/k8s/index/operator/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-index-operator-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: index-operator
data:
- config.yaml: "---\nversion: v0.0.0\ntime_zone: UTC\nlogging:\n format: raw\n level: debug\n logger: glg\nserver_config:\n servers:\n - name: grpc\n host: 0.0.0.0\n port: 8081\n grpc:\n bidirectional_stream_concurrency: 20\n connection_timeout: \"\"\n enable_admin: true\n enable_channelz: true\n enable_reflection: true\n header_table_size: 0\n initial_conn_window_size: 2097152\n initial_window_size: 1048576\n interceptors:\n - RecoverInterceptor\n keepalive:\n max_conn_age: \"\"\n max_conn_age_grace: \"\"\n max_conn_idle: \"\"\n min_time: 10m\n permit_without_stream: false\n time: 3h\n timeout: 60s\n max_concurrent_streams: 0\n max_header_list_size: 0\n max_receive_message_size: 0\n max_send_message_size: 0\n num_stream_workers: 0\n read_buffer_size: 0\n shared_write_buffer: false\n wait_for_handlers: true\n write_buffer_size: 0\n mode: GRPC\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n health_check_servers:\n - name: liveness\n host: 0.0.0.0\n port: 3000\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 5s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n - name: readiness\n host: 0.0.0.0\n port: 3001\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 0s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n metrics_servers:\n - name: pprof\n host: 0.0.0.0\n port: 6060\n http:\n handler_timeout: 5s\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: 2s\n read_header_timeout: 1s\n read_timeout: 1s\n shutdown_duration: 5s\n write_timeout: 1m\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: true\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n startup_strategy:\n - liveness\n - pprof\n - grpc\n - readiness\n shutdown_strategy:\n - readiness\n - grpc\n - pprof\n - liveness\n full_shutdown_duration: 600s\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\nobservability:\n enabled: false\n otlp:\n collector_endpoint: \"\"\n trace_batch_timeout: \"1s\"\n trace_export_timeout: \"1m\"\n trace_max_export_batch_size: 1024\n trace_max_queue_size: 256\n metrics_export_interval: \"1s\"\n metrics_export_timeout: \"1m\"\n attribute:\n namespace: \"_MY_POD_NAMESPACE_\"\n pod_name: \"_MY_POD_NAME_\"\n node_name: \"_MY_NODE_NAME_\"\n service_name: \"vald-index-operator\"\n metrics:\n enable_cgo: true\n enable_goroutine: true\n enable_memory: true\n enable_version_info: true\n version_info_labels:\n - vald_version\n - server_name\n - git_commit\n - build_time\n - go_version\n - go_os\n - go_arch\n - algorithm_info\n trace:\n enabled: false\noperator:\n namespace: _MY_POD_NAMESPACE_\n agent_name: vald-agent\n agent_namespace: \n rotator_name: vald-readreplica-rotate\n target_read_replica_id_annotations_key: vald.vdaas.org/target-read-replica-id\n rotation_job_concurrency: 2\n read_replica_enabled: false\n read_replica_label_key: vald-readreplica-id\n job_templates:\n rotate:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-readreplica-rotate\n labels:\n app: vald-readreplica-rotate\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-readreplica-rotate\n app.kubernetes.io/version: v1.7.14\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-readreplica-rotate\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-readreplica-rotate\n app.kubernetes.io/version: v1.7.14\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-readreplica-rotate\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n containers:\n - name: vald-readreplica-rotate\n image: \"vdaas/vald-readreplica-rotate:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-readreplica-rotate-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n securityContext:\n allowPrivilegeEscalation: false\n capabilities:\n drop:\n - ALL\n privileged: false\n readOnlyRootFilesystem: true\n runAsGroup: 65532\n runAsNonRoot: true\n runAsUser: 65532\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n - name: TARGET_READREPLICA_ID_RELEASE_NAME_DEFAULT_VALD\n valueFrom:\n fieldRef:\n fieldPath: metadata.annotations['vald.vdaas.org/target-read-replica-id']\n securityContext:\n fsGroup: 65532\n fsGroupChangePolicy: OnRootMismatch\n runAsGroup: 65532\n runAsNonRoot: true\n runAsUser: 65532\n restartPolicy: OnFailure\n volumes:\n - name: vald-readreplica-rotate-config\n configMap:\n defaultMode: 420\n name: vald-readreplica-rotate-config\n serviceAccountName: vald-readreplica-rotate\n creation:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-creation\n labels:\n app: vald-index-creation\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-creation\n app.kubernetes.io/version: v1.7.14\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-creation\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-creation\n app.kubernetes.io/version: v1.7.14\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-creation\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n containers:\n - name: vald-index-creation\n image: \"vdaas/vald-index-creation:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-creation-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-creation-config\n configMap:\n defaultMode: 420\n name: vald-index-creation-config\n save:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-save\n labels:\n app: vald-index-save\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-save\n app.kubernetes.io/version: v1.7.14\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-save\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-save\n app.kubernetes.io/version: v1.7.14\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-save\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n containers:\n - name: vald-index-save\n image: \"vdaas/vald-index-save:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-save-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-save-config\n configMap:\n defaultMode: 420\n name: vald-index-save-config\n correction:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-correction\n labels:\n app: vald-index-correction\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-correction\n app.kubernetes.io/version: v1.7.14\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-correction\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.14\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-correction\n app.kubernetes.io/version: v1.7.14\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-correction\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n containers:\n - name: vald-index-correction\n image: \"vdaas/vald-index-correction:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-correction-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-correction-config\n configMap:\n defaultMode: 420\n name: vald-index-correction-config\n"
+ config.yaml: "---\nversion: v0.0.0\ntime_zone: UTC\nlogging:\n format: raw\n level: debug\n logger: glg\nserver_config:\n servers:\n - name: grpc\n host: 0.0.0.0\n port: 8081\n grpc:\n bidirectional_stream_concurrency: 20\n connection_timeout: \"\"\n enable_admin: true\n enable_channelz: true\n enable_reflection: true\n header_table_size: 0\n initial_conn_window_size: 2097152\n initial_window_size: 1048576\n interceptors:\n - RecoverInterceptor\n keepalive:\n max_conn_age: \"\"\n max_conn_age_grace: \"\"\n max_conn_idle: \"\"\n min_time: 10m\n permit_without_stream: false\n time: 3h\n timeout: 60s\n max_concurrent_streams: 0\n max_header_list_size: 0\n max_receive_message_size: 0\n max_send_message_size: 0\n num_stream_workers: 0\n read_buffer_size: 0\n shared_write_buffer: false\n wait_for_handlers: true\n write_buffer_size: 0\n mode: GRPC\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n health_check_servers:\n - name: liveness\n host: 0.0.0.0\n port: 3000\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 5s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n - name: readiness\n host: 0.0.0.0\n port: 3001\n http:\n handler_timeout: \"\"\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: \"\"\n read_header_timeout: \"\"\n read_timeout: \"\"\n shutdown_duration: 0s\n write_timeout: \"\"\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: false\n tcp_defer_accept: false\n tcp_fast_open: true\n tcp_no_delay: true\n tcp_quick_ack: true\n socket_path: \"\"\n metrics_servers:\n - name: pprof\n host: 0.0.0.0\n port: 6060\n http:\n handler_timeout: 5s\n http2:\n enabled: false\n handler_limit: 0\n max_concurrent_streams: 0\n max_decoder_header_table_size: 4096\n max_encoder_header_table_size: 4096\n max_read_frame_size: 0\n max_upload_buffer_per_connection: 0\n max_upload_buffer_per_stream: 0\n permit_prohibited_cipher_suites: true\n idle_timeout: 2s\n read_header_timeout: 1s\n read_timeout: 1s\n shutdown_duration: 5s\n write_timeout: 1m\n mode: REST\n network: tcp\n probe_wait_time: 3s\n restart: true\n socket_option:\n ip_recover_destination_addr: false\n ip_transparent: false\n reuse_addr: true\n reuse_port: true\n tcp_cork: true\n tcp_defer_accept: false\n tcp_fast_open: false\n tcp_no_delay: false\n tcp_quick_ack: false\n socket_path: \"\"\n startup_strategy:\n - liveness\n - pprof\n - grpc\n - readiness\n shutdown_strategy:\n - readiness\n - grpc\n - pprof\n - liveness\n full_shutdown_duration: 600s\n tls:\n ca: /path/to/ca\n cert: /path/to/cert\n enabled: false\n insecure_skip_verify: false\n key: /path/to/key\nobservability:\n enabled: false\n otlp:\n collector_endpoint: \"\"\n trace_batch_timeout: \"1s\"\n trace_export_timeout: \"1m\"\n trace_max_export_batch_size: 1024\n trace_max_queue_size: 256\n metrics_export_interval: \"1s\"\n metrics_export_timeout: \"1m\"\n attribute:\n namespace: \"_MY_POD_NAMESPACE_\"\n pod_name: \"_MY_POD_NAME_\"\n node_name: \"_MY_NODE_NAME_\"\n service_name: \"vald-index-operator\"\n metrics:\n enable_cgo: true\n enable_goroutine: true\n enable_memory: true\n enable_version_info: true\n version_info_labels:\n - vald_version\n - server_name\n - git_commit\n - build_time\n - go_version\n - go_os\n - go_arch\n - algorithm_info\n trace:\n enabled: false\noperator:\n namespace: _MY_POD_NAMESPACE_\n agent_name: vald-agent\n agent_namespace: \n rotator_name: vald-readreplica-rotate\n target_read_replica_id_annotations_key: vald.vdaas.org/target-read-replica-id\n rotation_job_concurrency: 2\n read_replica_enabled: false\n read_replica_label_key: vald-readreplica-id\n job_templates:\n rotate:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-readreplica-rotate\n labels:\n app: vald-readreplica-rotate\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-readreplica-rotate\n app.kubernetes.io/version: v1.7.15\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-readreplica-rotate\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-readreplica-rotate\n app.kubernetes.io/version: v1.7.15\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-readreplica-rotate\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n containers:\n - name: vald-readreplica-rotate\n image: \"vdaas/vald-readreplica-rotate:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-readreplica-rotate-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n securityContext:\n allowPrivilegeEscalation: false\n capabilities:\n drop:\n - ALL\n privileged: false\n readOnlyRootFilesystem: true\n runAsGroup: 65532\n runAsNonRoot: true\n runAsUser: 65532\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n - name: TARGET_READREPLICA_ID_RELEASE_NAME_DEFAULT_VALD\n valueFrom:\n fieldRef:\n fieldPath: metadata.annotations['vald.vdaas.org/target-read-replica-id']\n securityContext:\n fsGroup: 65532\n fsGroupChangePolicy: OnRootMismatch\n runAsGroup: 65532\n runAsNonRoot: true\n runAsUser: 65532\n restartPolicy: OnFailure\n volumes:\n - name: vald-readreplica-rotate-config\n configMap:\n defaultMode: 420\n name: vald-readreplica-rotate-config\n serviceAccountName: vald-readreplica-rotate\n creation:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-creation\n labels:\n app: vald-index-creation\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-creation\n app.kubernetes.io/version: v1.7.15\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-creation\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-creation\n app.kubernetes.io/version: v1.7.15\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-creation\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n affinity:\n nodeAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n podAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n podAntiAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n containers:\n - name: vald-index-creation\n image: \"vdaas/vald-index-creation:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-creation-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-creation-config\n configMap:\n defaultMode: 420\n name: vald-index-creation-config\n save:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-save\n labels:\n app: vald-index-save\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-save\n app.kubernetes.io/version: v1.7.15\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-save\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-save\n app.kubernetes.io/version: v1.7.15\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-save\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n affinity:\n nodeAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n podAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n podAntiAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n containers:\n - name: vald-index-save\n image: \"vdaas/vald-index-save:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-save-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-save-config\n configMap:\n defaultMode: 420\n name: vald-index-save-config\n correction:\n apiVersion: batch/v1\n kind: Job\n metadata:\n name: vald-index-correction\n labels:\n app: vald-index-correction\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-correction\n app.kubernetes.io/version: v1.7.15\n spec:\n ttlSecondsAfterFinished: 86400\n template:\n metadata:\n labels:\n app: vald-index-correction\n app.kubernetes.io/name: vald\n helm.sh/chart: vald-v1.7.15\n app.kubernetes.io/managed-by: Helm\n app.kubernetes.io/instance: release-name\n app.kubernetes.io/component: vald-index-correction\n app.kubernetes.io/version: v1.7.15\n annotations:\n pyroscope.io/scrape: \"true\"\n pyroscope.io/application-name: vald-index-correction\n pyroscope.io/profile-cpu-enabled: \"true\"\n pyroscope.io/profile-mem-enabled: \"true\"\n pyroscope.io/port: \"6060\"\n spec:\n initContainers:\n - name: wait-for-agent\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-agent.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for agent to be ready...\"\n sleep 2;\n done\n - name: wait-for-discoverer\n image: busybox:stable\n imagePullPolicy: Always\n command:\n - /bin/sh\n - -e\n - -c\n - |\n until [ \"$(wget --server-response --spider --quiet http://vald-discoverer.default.svc.cluster.local:3001/readiness 2>&1 | awk 'NR==1{print $2}')\" == \"200\" ]; do\n echo \"waiting for discoverer to be ready...\"\n sleep 2;\n done\n affinity:\n nodeAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n podAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n podAntiAffinity:\n preferredDuringSchedulingIgnoredDuringExecution: []\n requiredDuringSchedulingIgnoredDuringExecution: []\n containers:\n - name: vald-index-correction\n image: \"vdaas/vald-index-correction:nightly\"\n imagePullPolicy: Always\n volumeMounts:\n - name: vald-index-correction-config\n mountPath: /etc/server/\n livenessProbe:\n failureThreshold: 2\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n readinessProbe:\n failureThreshold: 2\n httpGet:\n path: /readiness\n port: readiness\n scheme: HTTP\n initialDelaySeconds: 10\n periodSeconds: 3\n successThreshold: 1\n timeoutSeconds: 2\n startupProbe:\n failureThreshold: 30\n httpGet:\n path: /liveness\n port: liveness\n scheme: HTTP\n initialDelaySeconds: 5\n periodSeconds: 5\n successThreshold: 1\n timeoutSeconds: 2\n ports:\n - name: liveness\n protocol: TCP\n containerPort: 3000\n - name: readiness\n protocol: TCP\n containerPort: 3001\n - name: grpc\n protocol: TCP\n containerPort: 8081\n - name: pprof\n protocol: TCP\n containerPort: 6060\n env:\n - name: MY_NODE_NAME\n valueFrom:\n fieldRef:\n fieldPath: spec.nodeName\n - name: MY_POD_NAME\n valueFrom:\n fieldRef:\n fieldPath: metadata.name\n - name: MY_POD_NAMESPACE\n valueFrom:\n fieldRef:\n fieldPath: metadata.namespace\n restartPolicy: OnFailure\n volumes:\n - name: vald-index-correction-config\n configMap:\n defaultMode: 420\n name: vald-index-correction-config\n"
diff --git a/k8s/index/operator/deployment.yaml b/k8s/index/operator/deployment.yaml
index 756a412162..2243e924a8 100644
--- a/k8s/index/operator/deployment.yaml
+++ b/k8s/index/operator/deployment.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-index-operator
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: index-operator
spec:
progressDeadlineSeconds: 600
@@ -46,7 +46,7 @@ spec:
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: operator
annotations:
- checksum/configmap: cd59937fd89ee99143a6756511ebd87adb9b3b2dc9f72761892d91a014648c1a
+ checksum/configmap: 4debe2e5da3add8127b14a5fbbb6cfbd5fc37baf66da47bfea2829c14b001ebf
pyroscope.io/scrape: "true"
pyroscope.io/application-name: vald-index-operator
pyroscope.io/profile-cpu-enabled: "true"
diff --git a/k8s/index/operator/priorityclass.yaml b/k8s/index/operator/priorityclass.yaml
index 609f048687..29ed988a1f 100644
--- a/k8s/index/operator/priorityclass.yaml
+++ b/k8s/index/operator/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-index-operator-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: index-operator
value: 1e+06
preemptionPolicy: Never
diff --git a/k8s/manager/index/configmap.yaml b/k8s/manager/index/configmap.yaml
index dc325556e9..968aaf60da 100644
--- a/k8s/manager/index/configmap.yaml
+++ b/k8s/manager/index/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-manager-index-config
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: manager-index
data:
config.yaml: |
diff --git a/k8s/manager/index/deployment.yaml b/k8s/manager/index/deployment.yaml
index 11e81cf427..1103329bd0 100644
--- a/k8s/manager/index/deployment.yaml
+++ b/k8s/manager/index/deployment.yaml
@@ -20,10 +20,10 @@ metadata:
labels:
app: vald-manager-index
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: manager-index
spec:
progressDeadlineSeconds: 600
@@ -46,7 +46,7 @@ spec:
app.kubernetes.io/instance: release-name
app.kubernetes.io/component: manager-index
annotations:
- checksum/configmap: f3baa2e31b4339536e8adfc395a9ef81906c592f02cf1ec0d892715a5313d7af
+ checksum/configmap: b9a73b354c6a70dd900f847ddc460eb899032d44810e4b4bba2f9479d2513452
profefe.com/enable: "true"
profefe.com/port: "6060"
profefe.com/service: vald-manager-index
diff --git a/k8s/manager/index/pdb.yaml b/k8s/manager/index/pdb.yaml
index 759d57caa1..a587cc53d9 100644
--- a/k8s/manager/index/pdb.yaml
+++ b/k8s/manager/index/pdb.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-manager-index
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: manager-index
spec:
maxUnavailable: 50%
diff --git a/k8s/manager/index/priorityclass.yaml b/k8s/manager/index/priorityclass.yaml
index cdbd78e960..452ff96b3c 100644
--- a/k8s/manager/index/priorityclass.yaml
+++ b/k8s/manager/index/priorityclass.yaml
@@ -19,10 +19,10 @@ metadata:
name: default-vald-manager-index-priority
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: manager-index
value: 1e+06
globalDefault: false
diff --git a/k8s/manager/index/svc.yaml b/k8s/manager/index/svc.yaml
index 37c4768c22..9dc6b861ee 100644
--- a/k8s/manager/index/svc.yaml
+++ b/k8s/manager/index/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-manager-index
labels:
app.kubernetes.io/name: vald
- helm.sh/chart: vald-v1.7.14
+ helm.sh/chart: vald-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: manager-index
spec:
ports:
diff --git a/k8s/operator/helm/crds/valdrelease.yaml b/k8s/operator/helm/crds/valdrelease.yaml
index 7c1ed31966..e91608a6a5 100644
--- a/k8s/operator/helm/crds/valdrelease.yaml
+++ b/k8s/operator/helm/crds/valdrelease.yaml
@@ -8406,6 +8406,51 @@ spec:
corrector:
type: object
properties:
+ affinity:
+ type: object
+ properties:
+ nodeAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: object
+ properties:
+ nodeSelectorTerms:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAntiAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
agent_namespace:
type: string
discoverer:
@@ -9037,6 +9082,9 @@ spec:
type: string
node_name:
type: string
+ nodeSelector:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
observability:
type: object
properties:
@@ -9714,6 +9762,11 @@ spec:
minimum: 1
suspend:
type: boolean
+ tolerations:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
ttlSecondsAfterFinished:
type: integer
version:
@@ -9722,6 +9775,51 @@ spec:
creator:
type: object
properties:
+ affinity:
+ type: object
+ properties:
+ nodeAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: object
+ properties:
+ nodeSelectorTerms:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAntiAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
agent_namespace:
type: string
concurrency:
@@ -10157,6 +10255,9 @@ spec:
type: string
node_name:
type: string
+ nodeSelector:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
observability:
type: object
properties:
@@ -10835,6 +10936,11 @@ spec:
type: array
items:
type: string
+ tolerations:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
ttlSecondsAfterFinished:
type: integer
version:
@@ -13012,6 +13118,51 @@ spec:
saver:
type: object
properties:
+ affinity:
+ type: object
+ properties:
+ nodeAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: object
+ properties:
+ nodeSelectorTerms:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ podAntiAffinity:
+ type: object
+ properties:
+ preferredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
+ requiredDuringSchedulingIgnoredDuringExecution:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
agent_namespace:
type: string
concurrency:
@@ -13445,6 +13596,9 @@ spec:
type: string
node_name:
type: string
+ nodeSelector:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
observability:
type: object
properties:
@@ -14123,6 +14277,11 @@ spec:
type: array
items:
type: string
+ tolerations:
+ type: array
+ items:
+ type: object
+ x-kubernetes-preserve-unknown-fields: true
ttlSecondsAfterFinished:
type: integer
version:
diff --git a/k8s/operator/helm/operator.yaml b/k8s/operator/helm/operator.yaml
index f49ee08def..85b78dc800 100644
--- a/k8s/operator/helm/operator.yaml
+++ b/k8s/operator/helm/operator.yaml
@@ -21,10 +21,10 @@ metadata:
labels:
app: vald-helm-operator
app.kubernetes.io/name: vald-helm-operator
- helm.sh/chart: vald-helm-operator-v1.7.14
+ helm.sh/chart: vald-helm-operator-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: helm-operator
spec:
replicas: 2
@@ -42,7 +42,7 @@ spec:
serviceAccountName: vald-helm-operator
containers:
- name: vald-helm-operator
- image: "vdaas/vald-helm-operator:v1.7.14"
+ image: "vdaas/vald-helm-operator:v1.7.15"
imagePullPolicy: Always
args:
- "--leader-elect"
diff --git a/k8s/operator/helm/svc.yaml b/k8s/operator/helm/svc.yaml
index 445c886b45..177228beb2 100644
--- a/k8s/operator/helm/svc.yaml
+++ b/k8s/operator/helm/svc.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-helm-operator
labels:
app.kubernetes.io/name: vald-helm-operator
- helm.sh/chart: vald-helm-operator-v1.7.14
+ helm.sh/chart: vald-helm-operator-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: helm-operator
spec:
ports:
diff --git a/k8s/readreplica/configmap.yaml b/k8s/readreplica/configmap.yaml
index 5a0f0d6938..1590be4358 100644
--- a/k8s/readreplica/configmap.yaml
+++ b/k8s/readreplica/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-agent-ngt-readreplica-config
labels:
app.kubernetes.io/name: vald-readreplica
- helm.sh/chart: vald-readreplica-v1.7.14
+ helm.sh/chart: vald-readreplica-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: agent
data:
config.yaml: |
diff --git a/k8s/tools/benchmark/operator/configmap.yaml b/k8s/tools/benchmark/operator/configmap.yaml
index 7a6ff898c0..8c7d31c4df 100644
--- a/k8s/tools/benchmark/operator/configmap.yaml
+++ b/k8s/tools/benchmark/operator/configmap.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-benchmark-operator-config
labels:
app.kubernetes.io/name: vald-benchmark-operator
- helm.sh/chart: vald-benchmark-operator-v1.7.14
+ helm.sh/chart: vald-benchmark-operator-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: benchmark-operator
data:
config.yaml: |
@@ -219,4 +219,4 @@ data:
image:
pullPolicy: Always
repository: vdaas/vald-benchmark-job
- tag: v1.7.14
+ tag: v1.7.15
diff --git a/k8s/tools/benchmark/operator/deployment.yaml b/k8s/tools/benchmark/operator/deployment.yaml
index 7cbf22c2c5..0ba36a2198 100644
--- a/k8s/tools/benchmark/operator/deployment.yaml
+++ b/k8s/tools/benchmark/operator/deployment.yaml
@@ -21,10 +21,10 @@ metadata:
labels:
app: vald-benchmark-operator
app.kubernetes.io/name: vald-benchmark-operator
- helm.sh/chart: vald-benchmark-operator-v1.7.14
+ helm.sh/chart: vald-benchmark-operator-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: benchmark-operator
spec:
replicas: 1
@@ -42,7 +42,7 @@ spec:
serviceAccountName: vald-benchmark-operator
containers:
- name: vald-benchmark-operator
- image: "vdaas/vald-benchmark-operator:v1.7.14"
+ image: "vdaas/vald-benchmark-operator:v1.7.15"
imagePullPolicy: Always
livenessProbe:
failureThreshold: 2
diff --git a/k8s/tools/benchmark/operator/service.yaml b/k8s/tools/benchmark/operator/service.yaml
index 7134bec720..fe25799018 100644
--- a/k8s/tools/benchmark/operator/service.yaml
+++ b/k8s/tools/benchmark/operator/service.yaml
@@ -19,10 +19,10 @@ metadata:
name: vald-benchmark-operator
labels:
app.kubernetes.io/name: vald-benchmark-operator
- helm.sh/chart: vald-benchmark-operator-v1.7.14
+ helm.sh/chart: vald-benchmark-operator-v1.7.15
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/instance: release-name
- app.kubernetes.io/version: v1.7.14
+ app.kubernetes.io/version: v1.7.15
app.kubernetes.io/component: helm-operator
spec:
ports:
diff --git a/versions/VALD_VERSION b/versions/VALD_VERSION
index 25aa920d90..2af46cc3f3 100644
--- a/versions/VALD_VERSION
+++ b/versions/VALD_VERSION
@@ -1 +1 @@
-v1.7.14
+v1.7.15