From 6eb3e081360c793a414be37ff6402a2d6fcdcb17 Mon Sep 17 00:00:00 2001 From: Yusuke Kadowaki Date: Thu, 7 Dec 2023 17:03:38 +0900 Subject: [PATCH] update schema (#2265) --- .../vald-helm-operator/crds/valdrelease.yaml | 2 + charts/vald/values.schema.json | 1902 +++++++++-------- 2 files changed, 981 insertions(+), 923 deletions(-) diff --git a/charts/vald-helm-operator/crds/valdrelease.yaml b/charts/vald-helm-operator/crds/valdrelease.yaml index 5efaeced14..38f1d2e254 100644 --- a/charts/vald-helm-operator/crds/valdrelease.yaml +++ b/charts/vald-helm-operator/crds/valdrelease.yaml @@ -388,6 +388,8 @@ spec: readreplica: type: object properties: + component_name: + type: string enabled: type: boolean label_key: diff --git a/charts/vald/values.schema.json b/charts/vald/values.schema.json index b4b3ca9576..99e70097af 100644 --- a/charts/vald/values.schema.json +++ b/charts/vald/values.schema.json @@ -463,6 +463,50 @@ "type": "integer", "description": "progress deadline seconds" }, + "readreplica": { + "type": "object", + "description": "readreplica deployment annotations", + "properties": { + "component_name": { + "type": "string", + "description": "app.kubernetes.io/component name of agent readreplica" + }, + "enabled": { + "type": "boolean", + "description": "[This feature is WORK IN PROGRESS]enable agent readreplica" + }, + "label_key": { + "type": "string", + "description": "label key to identify read replica resources" + }, + "name": { + "type": "string", + "description": "name of agent readreplica" + }, + "replica": { + "type": "integer", + "description": "replica number of read replica" + }, + "service": { + "type": "object", + "description": "service settings for read replica service resources", + "properties": { + "annotations": { + "type": "object", + "description": "readreplica deployment annotations" + } + } + }, + "snapshot_classname": { + "type": "string", + "description": "snapshot class name for snapshotter used for read replica" + }, + "volume_name": { + "type": "string", + "description": "name of clone volume of agent pvc for read replica" + } + } + }, "resources": { "type": "object", "description": "compute resources", @@ -14404,1104 +14448,1116 @@ }, "readreplica": { "type": "object", - "description": "[This feature is work in progress] readreplica agents rotation job", "properties": { - "": { "type": "object" }, - "agent_namespace": { - "type": "string", - "description": "namespace of agent pods to manage" - }, - "clusterRole": { + "rotator": { "type": "object", + "description": "[This feature is work in progress] readreplica agents rotation job", "properties": { - "enabled": { - "type": "boolean", - "description": "creates clusterRole resource" - }, - "name": { - "type": "string", - "description": "name of clusterRole" - } - } - }, - "clusterRoleBinding": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "creates clusterRoleBinding resource" - }, - "name": { - "type": "string", - "description": "name of clusterRoleBinding" - } - } - }, - "env": { - "type": "array", - "description": "environment variables", - "items": { "type": "object" } - }, - "image": { - "type": "object", - "properties": { - "pullPolicy": { - "type": "string", - "description": "image pull policy", - "enum": ["Always", "Never", "IfNotPresent"] - }, - "repository": { + "agent_namespace": { "type": "string", - "description": "image repository" - }, - "tag": { - "type": "string", - "description": "image tag (overrides defaults.image.tag)" - } - } - }, - "initContainers": { - "type": "array", - "description": "init containers", - "items": { "type": "object" } - }, - "name": { - "type": "string", - "description": "name of readreplica rotator job" - }, - "observability": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "observability features enabled" + "description": "namespace of agent pods to manage" }, - "metrics": { + "clusterRole": { "type": "object", "properties": { - "enable_cgo": { + "enabled": { "type": "boolean", - "description": "CGO metrics enabled" + "description": "creates clusterRole resource" }, - "enable_goroutine": { + "name": { + "type": "string", + "description": "name of clusterRole" + } + } + }, + "clusterRoleBinding": { + "type": "object", + "properties": { + "enabled": { "type": "boolean", - "description": "goroutine metrics enabled" + "description": "creates clusterRoleBinding resource" }, - "enable_memory": { - "type": "boolean", - "description": "memory metrics enabled" + "name": { + "type": "string", + "description": "name of clusterRoleBinding" + } + } + }, + "env": { + "type": "array", + "description": "environment variables", + "items": { "type": "object" } + }, + "image": { + "type": "object", + "properties": { + "pullPolicy": { + "type": "string", + "description": "image pull policy", + "enum": ["Always", "Never", "IfNotPresent"] }, - "enable_version_info": { - "type": "boolean", - "description": "version info metrics enabled" + "repository": { + "type": "string", + "description": "image repository" }, - "version_info_labels": { - "type": "array", - "description": "enabled label names of version info", - "items": { - "type": "string", - "enum": [ - "vald_version", - "server_name", - "git_commit", - "build_time", - "go_version", - "go_os", - "go_arch", - "cgo_enabled", - "ngt_version", - "build_cpu_info_flags" - ] - } + "tag": { + "type": "string", + "description": "image tag (overrides defaults.image.tag)" } } }, - "otlp": { + "initContainers": { + "type": "array", + "description": "init containers", + "items": { "type": "object" } + }, + "name": { + "type": "string", + "description": "name of readreplica rotator job" + }, + "observability": { "type": "object", "properties": { - "attribute": { + "enabled": { + "type": "boolean", + "description": "observability features enabled" + }, + "metrics": { "type": "object", - "description": "default resource attribute", "properties": { - "namespace": { + "enable_cgo": { + "type": "boolean", + "description": "CGO metrics enabled" + }, + "enable_goroutine": { + "type": "boolean", + "description": "goroutine metrics enabled" + }, + "enable_memory": { + "type": "boolean", + "description": "memory metrics enabled" + }, + "enable_version_info": { + "type": "boolean", + "description": "version info metrics enabled" + }, + "version_info_labels": { + "type": "array", + "description": "enabled label names of version info", + "items": { + "type": "string", + "enum": [ + "vald_version", + "server_name", + "git_commit", + "build_time", + "go_version", + "go_os", + "go_arch", + "cgo_enabled", + "ngt_version", + "build_cpu_info_flags" + ] + } + } + } + }, + "otlp": { + "type": "object", + "properties": { + "attribute": { + "type": "object", + "description": "default resource attribute", + "properties": { + "namespace": { + "type": "string", + "description": "namespace" + }, + "node_name": { + "type": "string", + "description": "node name" + }, + "pod_name": { + "type": "string", + "description": "pod name" + }, + "service_name": { + "type": "string", + "description": "service name" + } + } + }, + "collector_endpoint": { "type": "string", - "description": "namespace" + "description": "OpenTelemetry Collector endpoint" }, - "node_name": { + "metrics_export_interval": { "type": "string", - "description": "node name" + "description": "metrics export interval" }, - "pod_name": { + "metrics_export_timeout": { "type": "string", - "description": "pod name" + "description": "metrics export timeout" }, - "service_name": { + "trace_batch_timeout": { "type": "string", - "description": "service name" + "description": "trace batch timeout" + }, + "trace_export_timeout": { + "type": "string", + "description": "trace export timeout" + }, + "trace_max_export_batch_size": { + "type": "integer", + "description": "trace maximum export batch size" + }, + "trace_max_queue_size": { + "type": "integer", + "description": "trace maximum queue size" } } }, - "collector_endpoint": { - "type": "string", - "description": "OpenTelemetry Collector endpoint" - }, - "metrics_export_interval": { - "type": "string", - "description": "metrics export interval" - }, - "metrics_export_timeout": { - "type": "string", - "description": "metrics export timeout" - }, - "trace_batch_timeout": { - "type": "string", - "description": "trace batch timeout" - }, - "trace_export_timeout": { - "type": "string", - "description": "trace export timeout" - }, - "trace_max_export_batch_size": { - "type": "integer", - "description": "trace maximum export batch size" - }, - "trace_max_queue_size": { - "type": "integer", - "description": "trace maximum queue size" + "trace": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "trace enabled" + } + } } } }, - "trace": { + "podSecurityContext": { "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "trace enabled" - } - } - } - } - }, - "read_replica_id": { - "type": "string", - "description": "read replica id to perform rotation" - }, - "server_config": { - "type": "object", - "properties": { - "full_shutdown_duration": { + "description": "security context for pod" + }, + "read_replica_id": { "type": "string", - "description": "server full shutdown duration" + "description": "read replica id to perform rotation" }, - "healths": { + "securityContext": { + "type": "object", + "description": "security context for container" + }, + "server_config": { "type": "object", "properties": { - "liveness": { + "full_shutdown_duration": { + "type": "string", + "description": "server full shutdown duration" + }, + "healths": { "type": "object", "properties": { - "enabled": { - "type": "boolean", - "description": "liveness server enabled" - }, - "host": { - "type": "string", - "description": "liveness server host" - }, - "livenessProbe": { - "type": "object", - "properties": { - "failureThreshold": { - "type": "integer", - "description": "liveness probe failure threshold" - }, - "httpGet": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "liveness probe path" - }, - "port": { - "type": "string", - "description": "liveness probe port" - }, - "scheme": { - "type": "string", - "description": "liveness probe scheme" - } - } - }, - "initialDelaySeconds": { - "type": "integer", - "description": "liveness probe initial delay seconds" - }, - "periodSeconds": { - "type": "integer", - "description": "liveness probe period seconds" - }, - "successThreshold": { - "type": "integer", - "description": "liveness probe success threshold" - }, - "timeoutSeconds": { - "type": "integer", - "description": "liveness probe timeout seconds" - } - } - }, - "port": { - "type": "integer", - "description": "liveness server port", - "maximum": 65535, - "minimum": 0 - }, - "server": { + "liveness": { "type": "object", "properties": { - "http": { - "type": "object", - "properties": { - "handler_timeout": { - "type": "string", - "description": "REST server handler timeout" - }, - "idle_timeout": { - "type": "string", - "description": "REST server idle timeout" - }, - "read_header_timeout": { - "type": "string", - "description": "REST server read header timeout" - }, - "read_timeout": { - "type": "string", - "description": "REST server read timeout" - }, - "shutdown_duration": { - "type": "string", - "description": "REST server shutdown duration" - }, - "write_timeout": { - "type": "string", - "description": "REST server write timeout" - } - } - }, - "mode": { - "type": "string", - "description": "REST server server mode" - }, - "network": { - "type": "string", - "description": "mysql network", - "enum": [ - "tcp", - "tcp4", - "tcp6", - "udp", - "udp4", - "udp6", - "unix", - "unixgram", - "unixpacket" - ] + "enabled": { + "type": "boolean", + "description": "liveness server enabled" }, - "probe_wait_time": { + "host": { "type": "string", - "description": "REST server probe wait time" + "description": "liveness server host" }, - "socket_option": { + "livenessProbe": { "type": "object", "properties": { - "ip_recover_destination_addr": { - "type": "boolean", - "description": "server listen socket option for ip_recover_destination_addr functionality" - }, - "ip_transparent": { - "type": "boolean", - "description": "server listen socket option for ip_transparent functionality" - }, - "reuse_addr": { - "type": "boolean", - "description": "server listen socket option for reuse_addr functionality" - }, - "reuse_port": { - "type": "boolean", - "description": "server listen socket option for reuse_port functionality" + "failureThreshold": { + "type": "integer", + "description": "liveness probe failure threshold" }, - "tcp_cork": { - "type": "boolean", - "description": "server listen socket option for tcp_cork functionality" + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "liveness probe path" + }, + "port": { + "type": "string", + "description": "liveness probe port" + }, + "scheme": { + "type": "string", + "description": "liveness probe scheme" + } + } }, - "tcp_defer_accept": { - "type": "boolean", - "description": "server listen socket option for tcp_defer_accept functionality" + "initialDelaySeconds": { + "type": "integer", + "description": "liveness probe initial delay seconds" }, - "tcp_fast_open": { - "type": "boolean", - "description": "server listen socket option for tcp_fast_open functionality" + "periodSeconds": { + "type": "integer", + "description": "liveness probe period seconds" }, - "tcp_no_delay": { - "type": "boolean", - "description": "server listen socket option for tcp_no_delay functionality" + "successThreshold": { + "type": "integer", + "description": "liveness probe success threshold" }, - "tcp_quick_ack": { - "type": "boolean", - "description": "server listen socket option for tcp_quick_ack functionality" + "timeoutSeconds": { + "type": "integer", + "description": "liveness probe timeout seconds" } } }, - "socket_path": { - "type": "string", - "description": "mysql socket_path" - } - } - }, - "servicePort": { - "type": "integer", - "description": "liveness server service port", - "maximum": 65535, - "minimum": 0 - } - } - }, - "readiness": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "readiness server enabled" - }, - "host": { - "type": "string", - "description": "readiness server host" - }, - "port": { - "type": "integer", - "description": "readiness server port", - "maximum": 65535, - "minimum": 0 - }, - "readinessProbe": { - "type": "object", - "properties": { - "failureThreshold": { + "port": { "type": "integer", - "description": "readiness probe failure threshold" + "description": "liveness server port", + "maximum": 65535, + "minimum": 0 }, - "httpGet": { + "server": { "type": "object", "properties": { - "path": { + "http": { + "type": "object", + "properties": { + "handler_timeout": { + "type": "string", + "description": "REST server handler timeout" + }, + "idle_timeout": { + "type": "string", + "description": "REST server idle timeout" + }, + "read_header_timeout": { + "type": "string", + "description": "REST server read header timeout" + }, + "read_timeout": { + "type": "string", + "description": "REST server read timeout" + }, + "shutdown_duration": { + "type": "string", + "description": "REST server shutdown duration" + }, + "write_timeout": { + "type": "string", + "description": "REST server write timeout" + } + } + }, + "mode": { "type": "string", - "description": "readiness probe path" + "description": "REST server server mode" }, - "port": { + "network": { "type": "string", - "description": "readiness probe port" + "description": "mysql network", + "enum": [ + "tcp", + "tcp4", + "tcp6", + "udp", + "udp4", + "udp6", + "unix", + "unixgram", + "unixpacket" + ] + }, + "probe_wait_time": { + "type": "string", + "description": "REST server probe wait time" }, - "scheme": { + "socket_option": { + "type": "object", + "properties": { + "ip_recover_destination_addr": { + "type": "boolean", + "description": "server listen socket option for ip_recover_destination_addr functionality" + }, + "ip_transparent": { + "type": "boolean", + "description": "server listen socket option for ip_transparent functionality" + }, + "reuse_addr": { + "type": "boolean", + "description": "server listen socket option for reuse_addr functionality" + }, + "reuse_port": { + "type": "boolean", + "description": "server listen socket option for reuse_port functionality" + }, + "tcp_cork": { + "type": "boolean", + "description": "server listen socket option for tcp_cork functionality" + }, + "tcp_defer_accept": { + "type": "boolean", + "description": "server listen socket option for tcp_defer_accept functionality" + }, + "tcp_fast_open": { + "type": "boolean", + "description": "server listen socket option for tcp_fast_open functionality" + }, + "tcp_no_delay": { + "type": "boolean", + "description": "server listen socket option for tcp_no_delay functionality" + }, + "tcp_quick_ack": { + "type": "boolean", + "description": "server listen socket option for tcp_quick_ack functionality" + } + } + }, + "socket_path": { "type": "string", - "description": "readiness probe scheme" + "description": "mysql socket_path" } } }, - "initialDelaySeconds": { - "type": "integer", - "description": "readiness probe initial delay seconds" - }, - "periodSeconds": { - "type": "integer", - "description": "readiness probe period seconds" - }, - "successThreshold": { - "type": "integer", - "description": "readiness probe success threshold" - }, - "timeoutSeconds": { + "servicePort": { "type": "integer", - "description": "readiness probe timeout seconds" + "description": "liveness server service port", + "maximum": 65535, + "minimum": 0 } } }, - "server": { - "type": "object", - "properties": { - "http": { - "type": "object", - "properties": { - "handler_timeout": { - "type": "string", - "description": "REST server handler timeout" - }, - "idle_timeout": { - "type": "string", - "description": "REST server idle timeout" - }, - "read_header_timeout": { - "type": "string", - "description": "REST server read header timeout" - }, - "read_timeout": { - "type": "string", - "description": "REST server read timeout" - }, - "shutdown_duration": { - "type": "string", - "description": "REST server shutdown duration" - }, - "write_timeout": { - "type": "string", - "description": "REST server write timeout" - } - } - }, - "mode": { - "type": "string", - "description": "REST server server mode" - }, - "network": { - "type": "string", - "description": "mysql network", - "enum": [ - "tcp", - "tcp4", - "tcp6", - "udp", - "udp4", - "udp6", - "unix", - "unixgram", - "unixpacket" - ] - }, - "probe_wait_time": { - "type": "string", - "description": "REST server probe wait time" - }, - "socket_option": { - "type": "object", - "properties": { - "ip_recover_destination_addr": { - "type": "boolean", - "description": "server listen socket option for ip_recover_destination_addr functionality" - }, - "ip_transparent": { - "type": "boolean", - "description": "server listen socket option for ip_transparent functionality" - }, - "reuse_addr": { - "type": "boolean", - "description": "server listen socket option for reuse_addr functionality" - }, - "reuse_port": { - "type": "boolean", - "description": "server listen socket option for reuse_port functionality" - }, - "tcp_cork": { - "type": "boolean", - "description": "server listen socket option for tcp_cork functionality" - }, - "tcp_defer_accept": { - "type": "boolean", - "description": "server listen socket option for tcp_defer_accept functionality" - }, - "tcp_fast_open": { - "type": "boolean", - "description": "server listen socket option for tcp_fast_open functionality" - }, - "tcp_no_delay": { - "type": "boolean", - "description": "server listen socket option for tcp_no_delay functionality" - }, - "tcp_quick_ack": { - "type": "boolean", - "description": "server listen socket option for tcp_quick_ack functionality" - } - } - }, - "socket_path": { - "type": "string", - "description": "mysql socket_path" - } - } - }, - "servicePort": { - "type": "integer", - "description": "readiness server service port", - "maximum": 65535, - "minimum": 0 - } - } - }, - "startup": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "startup server enabled" - }, - "port": { - "type": "integer", - "description": "startup server port", - "maximum": 65535, - "minimum": 0 - }, - "startupProbe": { - "type": "object", - "properties": { - "failureThreshold": { - "type": "integer", - "description": "startup probe failure threshold" - }, - "httpGet": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "startup probe path" - }, - "port": { - "type": "string", - "description": "startup probe port" - }, - "scheme": { - "type": "string", - "description": "startup probe scheme" - } - } - }, - "initialDelaySeconds": { - "type": "integer", - "description": "startup probe initial delay seconds" - }, - "periodSeconds": { - "type": "integer", - "description": "startup probe period seconds" - }, - "successThreshold": { - "type": "integer", - "description": "startup probe success threshold" - }, - "timeoutSeconds": { - "type": "integer", - "description": "startup probe timeout seconds" - } - } - } - } - } - } - }, - "metrics": { - "type": "object", - "properties": { - "pprof": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "pprof server enabled" - }, - "host": { - "type": "string", - "description": "pprof server host" - }, - "port": { - "type": "integer", - "description": "pprof server port", - "maximum": 65535, - "minimum": 0 - }, - "server": { - "type": "object", - "properties": { - "http": { - "type": "object", - "properties": { - "handler_timeout": { - "type": "string", - "description": "REST server handler timeout" - }, - "idle_timeout": { - "type": "string", - "description": "REST server idle timeout" - }, - "read_header_timeout": { - "type": "string", - "description": "REST server read header timeout" - }, - "read_timeout": { - "type": "string", - "description": "REST server read timeout" - }, - "shutdown_duration": { - "type": "string", - "description": "REST server shutdown duration" - }, - "write_timeout": { - "type": "string", - "description": "REST server write timeout" - } - } - }, - "mode": { - "type": "string", - "description": "REST server server mode" - }, - "network": { - "type": "string", - "description": "mysql network", - "enum": [ - "tcp", - "tcp4", - "tcp6", - "udp", - "udp4", - "udp6", - "unix", - "unixgram", - "unixpacket" - ] - }, - "probe_wait_time": { - "type": "string", - "description": "REST server probe wait time" - }, - "socket_option": { - "type": "object", - "properties": { - "ip_recover_destination_addr": { - "type": "boolean", - "description": "server listen socket option for ip_recover_destination_addr functionality" - }, - "ip_transparent": { - "type": "boolean", - "description": "server listen socket option for ip_transparent functionality" - }, - "reuse_addr": { - "type": "boolean", - "description": "server listen socket option for reuse_addr functionality" - }, - "reuse_port": { - "type": "boolean", - "description": "server listen socket option for reuse_port functionality" - }, - "tcp_cork": { - "type": "boolean", - "description": "server listen socket option for tcp_cork functionality" - }, - "tcp_defer_accept": { - "type": "boolean", - "description": "server listen socket option for tcp_defer_accept functionality" - }, - "tcp_fast_open": { - "type": "boolean", - "description": "server listen socket option for tcp_fast_open functionality" - }, - "tcp_no_delay": { - "type": "boolean", - "description": "server listen socket option for tcp_no_delay functionality" - }, - "tcp_quick_ack": { - "type": "boolean", - "description": "server listen socket option for tcp_quick_ack functionality" - } - } - }, - "socket_path": { - "type": "string", - "description": "mysql socket_path" - } - } - }, - "servicePort": { - "type": "integer", - "description": "pprof server service port", - "maximum": 65535, - "minimum": 0 - } - } - } - } - }, - "servers": { - "type": "object", - "properties": { - "grpc": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "gRPC server enabled" - }, - "host": { - "type": "string", - "description": "gRPC server host" - }, - "port": { - "type": "integer", - "description": "gRPC server port", - "maximum": 65535, - "minimum": 0 - }, - "server": { + "readiness": { "type": "object", "properties": { - "grpc": { + "enabled": { + "type": "boolean", + "description": "readiness server enabled" + }, + "host": { + "type": "string", + "description": "readiness server host" + }, + "port": { + "type": "integer", + "description": "readiness server port", + "maximum": 65535, + "minimum": 0 + }, + "readinessProbe": { "type": "object", "properties": { - "bidirectional_stream_concurrency": { + "failureThreshold": { "type": "integer", - "description": "gRPC server bidirectional stream concurrency" - }, - "connection_timeout": { - "type": "string", - "description": "gRPC server connection timeout" + "description": "readiness probe failure threshold" }, - "enable_reflection": { - "type": "boolean", - "description": "gRPC server reflection option" + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "readiness probe path" + }, + "port": { + "type": "string", + "description": "readiness probe port" + }, + "scheme": { + "type": "string", + "description": "readiness probe scheme" + } + } }, - "header_table_size": { + "initialDelaySeconds": { "type": "integer", - "description": "gRPC server header table size" + "description": "readiness probe initial delay seconds" }, - "initial_conn_window_size": { + "periodSeconds": { "type": "integer", - "description": "gRPC server initial connection window size" + "description": "readiness probe period seconds" }, - "initial_window_size": { + "successThreshold": { "type": "integer", - "description": "gRPC server initial window size" - }, - "interceptors": { - "type": "array", - "description": "gRPC server interceptors", - "items": { - "type": "string", - "enum": [ - "RecoverInterceptor", - "AccessLogInterceptor", - "TraceInterceptor", - "MetricInterceptor" - ] - } + "description": "readiness probe success threshold" }, - "keepalive": { + "timeoutSeconds": { + "type": "integer", + "description": "readiness probe timeout seconds" + } + } + }, + "server": { + "type": "object", + "properties": { + "http": { "type": "object", "properties": { - "max_conn_age": { + "handler_timeout": { "type": "string", - "description": "gRPC server keep alive max connection age" + "description": "REST server handler timeout" }, - "max_conn_age_grace": { + "idle_timeout": { "type": "string", - "description": "gRPC server keep alive max connection age grace" + "description": "REST server idle timeout" }, - "max_conn_idle": { + "read_header_timeout": { "type": "string", - "description": "gRPC server keep alive max connection idle" + "description": "REST server read header timeout" }, - "min_time": { + "read_timeout": { "type": "string", - "description": "gRPC server keep alive min_time" - }, - "permit_without_stream": { - "type": "boolean", - "description": "gRPC server keep alive permit_without_stream" + "description": "REST server read timeout" }, - "time": { + "shutdown_duration": { "type": "string", - "description": "gRPC server keep alive time" + "description": "REST server shutdown duration" }, - "timeout": { + "write_timeout": { "type": "string", - "description": "gRPC server keep alive timeout" + "description": "REST server write timeout" } } }, - "max_header_list_size": { + "mode": { + "type": "string", + "description": "REST server server mode" + }, + "network": { + "type": "string", + "description": "mysql network", + "enum": [ + "tcp", + "tcp4", + "tcp6", + "udp", + "udp4", + "udp6", + "unix", + "unixgram", + "unixpacket" + ] + }, + "probe_wait_time": { + "type": "string", + "description": "REST server probe wait time" + }, + "socket_option": { + "type": "object", + "properties": { + "ip_recover_destination_addr": { + "type": "boolean", + "description": "server listen socket option for ip_recover_destination_addr functionality" + }, + "ip_transparent": { + "type": "boolean", + "description": "server listen socket option for ip_transparent functionality" + }, + "reuse_addr": { + "type": "boolean", + "description": "server listen socket option for reuse_addr functionality" + }, + "reuse_port": { + "type": "boolean", + "description": "server listen socket option for reuse_port functionality" + }, + "tcp_cork": { + "type": "boolean", + "description": "server listen socket option for tcp_cork functionality" + }, + "tcp_defer_accept": { + "type": "boolean", + "description": "server listen socket option for tcp_defer_accept functionality" + }, + "tcp_fast_open": { + "type": "boolean", + "description": "server listen socket option for tcp_fast_open functionality" + }, + "tcp_no_delay": { + "type": "boolean", + "description": "server listen socket option for tcp_no_delay functionality" + }, + "tcp_quick_ack": { + "type": "boolean", + "description": "server listen socket option for tcp_quick_ack functionality" + } + } + }, + "socket_path": { + "type": "string", + "description": "mysql socket_path" + } + } + }, + "servicePort": { + "type": "integer", + "description": "readiness server service port", + "maximum": 65535, + "minimum": 0 + } + } + }, + "startup": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "startup server enabled" + }, + "port": { + "type": "integer", + "description": "startup server port", + "maximum": 65535, + "minimum": 0 + }, + "startupProbe": { + "type": "object", + "properties": { + "failureThreshold": { "type": "integer", - "description": "gRPC server max header list size" + "description": "startup probe failure threshold" }, - "max_receive_message_size": { + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "startup probe path" + }, + "port": { + "type": "string", + "description": "startup probe port" + }, + "scheme": { + "type": "string", + "description": "startup probe scheme" + } + } + }, + "initialDelaySeconds": { "type": "integer", - "description": "gRPC server max receive message size" + "description": "startup probe initial delay seconds" }, - "max_send_message_size": { + "periodSeconds": { "type": "integer", - "description": "gRPC server max send message size" + "description": "startup probe period seconds" }, - "read_buffer_size": { + "successThreshold": { "type": "integer", - "description": "gRPC server read buffer size" + "description": "startup probe success threshold" }, - "write_buffer_size": { + "timeoutSeconds": { "type": "integer", - "description": "gRPC server write buffer size" + "description": "startup probe timeout seconds" } } + } + } + } + } + }, + "metrics": { + "type": "object", + "properties": { + "pprof": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "pprof server enabled" }, - "mode": { - "type": "string", - "description": "gRPC server server mode" - }, - "network": { - "type": "string", - "description": "mysql network", - "enum": [ - "tcp", - "tcp4", - "tcp6", - "udp", - "udp4", - "udp6", - "unix", - "unixgram", - "unixpacket" - ] - }, - "probe_wait_time": { + "host": { "type": "string", - "description": "gRPC server probe wait time" + "description": "pprof server host" }, - "restart": { - "type": "boolean", - "description": "gRPC server restart" + "port": { + "type": "integer", + "description": "pprof server port", + "maximum": 65535, + "minimum": 0 }, - "socket_option": { + "server": { "type": "object", "properties": { - "ip_recover_destination_addr": { - "type": "boolean", - "description": "server listen socket option for ip_recover_destination_addr functionality" - }, - "ip_transparent": { - "type": "boolean", - "description": "server listen socket option for ip_transparent functionality" - }, - "reuse_addr": { - "type": "boolean", - "description": "server listen socket option for reuse_addr functionality" - }, - "reuse_port": { - "type": "boolean", - "description": "server listen socket option for reuse_port functionality" - }, - "tcp_cork": { - "type": "boolean", - "description": "server listen socket option for tcp_cork functionality" + "http": { + "type": "object", + "properties": { + "handler_timeout": { + "type": "string", + "description": "REST server handler timeout" + }, + "idle_timeout": { + "type": "string", + "description": "REST server idle timeout" + }, + "read_header_timeout": { + "type": "string", + "description": "REST server read header timeout" + }, + "read_timeout": { + "type": "string", + "description": "REST server read timeout" + }, + "shutdown_duration": { + "type": "string", + "description": "REST server shutdown duration" + }, + "write_timeout": { + "type": "string", + "description": "REST server write timeout" + } + } }, - "tcp_defer_accept": { - "type": "boolean", - "description": "server listen socket option for tcp_defer_accept functionality" + "mode": { + "type": "string", + "description": "REST server server mode" }, - "tcp_fast_open": { - "type": "boolean", - "description": "server listen socket option for tcp_fast_open functionality" + "network": { + "type": "string", + "description": "mysql network", + "enum": [ + "tcp", + "tcp4", + "tcp6", + "udp", + "udp4", + "udp6", + "unix", + "unixgram", + "unixpacket" + ] + }, + "probe_wait_time": { + "type": "string", + "description": "REST server probe wait time" }, - "tcp_no_delay": { - "type": "boolean", - "description": "server listen socket option for tcp_no_delay functionality" + "socket_option": { + "type": "object", + "properties": { + "ip_recover_destination_addr": { + "type": "boolean", + "description": "server listen socket option for ip_recover_destination_addr functionality" + }, + "ip_transparent": { + "type": "boolean", + "description": "server listen socket option for ip_transparent functionality" + }, + "reuse_addr": { + "type": "boolean", + "description": "server listen socket option for reuse_addr functionality" + }, + "reuse_port": { + "type": "boolean", + "description": "server listen socket option for reuse_port functionality" + }, + "tcp_cork": { + "type": "boolean", + "description": "server listen socket option for tcp_cork functionality" + }, + "tcp_defer_accept": { + "type": "boolean", + "description": "server listen socket option for tcp_defer_accept functionality" + }, + "tcp_fast_open": { + "type": "boolean", + "description": "server listen socket option for tcp_fast_open functionality" + }, + "tcp_no_delay": { + "type": "boolean", + "description": "server listen socket option for tcp_no_delay functionality" + }, + "tcp_quick_ack": { + "type": "boolean", + "description": "server listen socket option for tcp_quick_ack functionality" + } + } }, - "tcp_quick_ack": { - "type": "boolean", - "description": "server listen socket option for tcp_quick_ack functionality" + "socket_path": { + "type": "string", + "description": "mysql socket_path" } - } - }, - "socket_path": { - "type": "string", - "description": "mysql socket_path" - } - } - }, - "servicePort": { - "type": "integer", - "description": "gRPC server service port", - "maximum": 65535, - "minimum": 0 + } + }, + "servicePort": { + "type": "integer", + "description": "pprof server service port", + "maximum": 65535, + "minimum": 0 + } + } } } }, - "rest": { + "servers": { "type": "object", "properties": { - "enabled": { - "type": "boolean", - "description": "REST server enabled" - }, - "host": { - "type": "string", - "description": "REST server host" - }, - "port": { - "type": "integer", - "description": "REST server port", - "maximum": 65535, - "minimum": 0 - }, - "server": { + "grpc": { "type": "object", "properties": { - "http": { + "enabled": { + "type": "boolean", + "description": "gRPC server enabled" + }, + "host": { + "type": "string", + "description": "gRPC server host" + }, + "port": { + "type": "integer", + "description": "gRPC server port", + "maximum": 65535, + "minimum": 0 + }, + "server": { "type": "object", "properties": { - "handler_timeout": { - "type": "string", - "description": "REST server handler timeout" + "grpc": { + "type": "object", + "properties": { + "bidirectional_stream_concurrency": { + "type": "integer", + "description": "gRPC server bidirectional stream concurrency" + }, + "connection_timeout": { + "type": "string", + "description": "gRPC server connection timeout" + }, + "enable_reflection": { + "type": "boolean", + "description": "gRPC server reflection option" + }, + "header_table_size": { + "type": "integer", + "description": "gRPC server header table size" + }, + "initial_conn_window_size": { + "type": "integer", + "description": "gRPC server initial connection window size" + }, + "initial_window_size": { + "type": "integer", + "description": "gRPC server initial window size" + }, + "interceptors": { + "type": "array", + "description": "gRPC server interceptors", + "items": { + "type": "string", + "enum": [ + "RecoverInterceptor", + "AccessLogInterceptor", + "TraceInterceptor", + "MetricInterceptor" + ] + } + }, + "keepalive": { + "type": "object", + "properties": { + "max_conn_age": { + "type": "string", + "description": "gRPC server keep alive max connection age" + }, + "max_conn_age_grace": { + "type": "string", + "description": "gRPC server keep alive max connection age grace" + }, + "max_conn_idle": { + "type": "string", + "description": "gRPC server keep alive max connection idle" + }, + "min_time": { + "type": "string", + "description": "gRPC server keep alive min_time" + }, + "permit_without_stream": { + "type": "boolean", + "description": "gRPC server keep alive permit_without_stream" + }, + "time": { + "type": "string", + "description": "gRPC server keep alive time" + }, + "timeout": { + "type": "string", + "description": "gRPC server keep alive timeout" + } + } + }, + "max_header_list_size": { + "type": "integer", + "description": "gRPC server max header list size" + }, + "max_receive_message_size": { + "type": "integer", + "description": "gRPC server max receive message size" + }, + "max_send_message_size": { + "type": "integer", + "description": "gRPC server max send message size" + }, + "read_buffer_size": { + "type": "integer", + "description": "gRPC server read buffer size" + }, + "write_buffer_size": { + "type": "integer", + "description": "gRPC server write buffer size" + } + } }, - "idle_timeout": { + "mode": { "type": "string", - "description": "REST server idle timeout" + "description": "gRPC server server mode" }, - "read_header_timeout": { + "network": { "type": "string", - "description": "REST server read header timeout" - }, - "read_timeout": { + "description": "mysql network", + "enum": [ + "tcp", + "tcp4", + "tcp6", + "udp", + "udp4", + "udp6", + "unix", + "unixgram", + "unixpacket" + ] + }, + "probe_wait_time": { "type": "string", - "description": "REST server read timeout" + "description": "gRPC server probe wait time" }, - "shutdown_duration": { - "type": "string", - "description": "REST server shutdown duration" + "restart": { + "type": "boolean", + "description": "gRPC server restart" }, - "write_timeout": { + "socket_option": { + "type": "object", + "properties": { + "ip_recover_destination_addr": { + "type": "boolean", + "description": "server listen socket option for ip_recover_destination_addr functionality" + }, + "ip_transparent": { + "type": "boolean", + "description": "server listen socket option for ip_transparent functionality" + }, + "reuse_addr": { + "type": "boolean", + "description": "server listen socket option for reuse_addr functionality" + }, + "reuse_port": { + "type": "boolean", + "description": "server listen socket option for reuse_port functionality" + }, + "tcp_cork": { + "type": "boolean", + "description": "server listen socket option for tcp_cork functionality" + }, + "tcp_defer_accept": { + "type": "boolean", + "description": "server listen socket option for tcp_defer_accept functionality" + }, + "tcp_fast_open": { + "type": "boolean", + "description": "server listen socket option for tcp_fast_open functionality" + }, + "tcp_no_delay": { + "type": "boolean", + "description": "server listen socket option for tcp_no_delay functionality" + }, + "tcp_quick_ack": { + "type": "boolean", + "description": "server listen socket option for tcp_quick_ack functionality" + } + } + }, + "socket_path": { "type": "string", - "description": "REST server write timeout" + "description": "mysql socket_path" } } }, - "mode": { - "type": "string", - "description": "REST server server mode" + "servicePort": { + "type": "integer", + "description": "gRPC server service port", + "maximum": 65535, + "minimum": 0 + } + } + }, + "rest": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "REST server enabled" }, - "network": { + "host": { "type": "string", - "description": "mysql network", - "enum": [ - "tcp", - "tcp4", - "tcp6", - "udp", - "udp4", - "udp6", - "unix", - "unixgram", - "unixpacket" - ] + "description": "REST server host" }, - "probe_wait_time": { - "type": "string", - "description": "REST server probe wait time" + "port": { + "type": "integer", + "description": "REST server port", + "maximum": 65535, + "minimum": 0 }, - "socket_option": { + "server": { "type": "object", "properties": { - "ip_recover_destination_addr": { - "type": "boolean", - "description": "server listen socket option for ip_recover_destination_addr functionality" - }, - "ip_transparent": { - "type": "boolean", - "description": "server listen socket option for ip_transparent functionality" - }, - "reuse_addr": { - "type": "boolean", - "description": "server listen socket option for reuse_addr functionality" - }, - "reuse_port": { - "type": "boolean", - "description": "server listen socket option for reuse_port functionality" - }, - "tcp_cork": { - "type": "boolean", - "description": "server listen socket option for tcp_cork functionality" + "http": { + "type": "object", + "properties": { + "handler_timeout": { + "type": "string", + "description": "REST server handler timeout" + }, + "idle_timeout": { + "type": "string", + "description": "REST server idle timeout" + }, + "read_header_timeout": { + "type": "string", + "description": "REST server read header timeout" + }, + "read_timeout": { + "type": "string", + "description": "REST server read timeout" + }, + "shutdown_duration": { + "type": "string", + "description": "REST server shutdown duration" + }, + "write_timeout": { + "type": "string", + "description": "REST server write timeout" + } + } }, - "tcp_defer_accept": { - "type": "boolean", - "description": "server listen socket option for tcp_defer_accept functionality" + "mode": { + "type": "string", + "description": "REST server server mode" }, - "tcp_fast_open": { - "type": "boolean", - "description": "server listen socket option for tcp_fast_open functionality" + "network": { + "type": "string", + "description": "mysql network", + "enum": [ + "tcp", + "tcp4", + "tcp6", + "udp", + "udp4", + "udp6", + "unix", + "unixgram", + "unixpacket" + ] + }, + "probe_wait_time": { + "type": "string", + "description": "REST server probe wait time" }, - "tcp_no_delay": { - "type": "boolean", - "description": "server listen socket option for tcp_no_delay functionality" + "socket_option": { + "type": "object", + "properties": { + "ip_recover_destination_addr": { + "type": "boolean", + "description": "server listen socket option for ip_recover_destination_addr functionality" + }, + "ip_transparent": { + "type": "boolean", + "description": "server listen socket option for ip_transparent functionality" + }, + "reuse_addr": { + "type": "boolean", + "description": "server listen socket option for reuse_addr functionality" + }, + "reuse_port": { + "type": "boolean", + "description": "server listen socket option for reuse_port functionality" + }, + "tcp_cork": { + "type": "boolean", + "description": "server listen socket option for tcp_cork functionality" + }, + "tcp_defer_accept": { + "type": "boolean", + "description": "server listen socket option for tcp_defer_accept functionality" + }, + "tcp_fast_open": { + "type": "boolean", + "description": "server listen socket option for tcp_fast_open functionality" + }, + "tcp_no_delay": { + "type": "boolean", + "description": "server listen socket option for tcp_no_delay functionality" + }, + "tcp_quick_ack": { + "type": "boolean", + "description": "server listen socket option for tcp_quick_ack functionality" + } + } }, - "tcp_quick_ack": { - "type": "boolean", - "description": "server listen socket option for tcp_quick_ack functionality" + "socket_path": { + "type": "string", + "description": "mysql socket_path" } } }, - "socket_path": { - "type": "string", - "description": "mysql socket_path" + "servicePort": { + "type": "integer", + "description": "REST server service port", + "maximum": 65535, + "minimum": 0 } } + } + } + }, + "tls": { + "type": "object", + "properties": { + "ca": { + "type": "string", + "description": "TLS ca path" }, - "servicePort": { - "type": "integer", - "description": "REST server service port", - "maximum": 65535, - "minimum": 0 + "cert": { + "type": "string", + "description": "TLS cert path" + }, + "enabled": { + "type": "boolean", + "description": "TLS enabled" + }, + "insecure_skip_verify": { + "type": "boolean", + "description": "enable/disable skip SSL certificate verification" + }, + "key": { + "type": "string", + "description": "TLS key path" } } } } }, - "tls": { + "serviceAccount": { "type": "object", "properties": { - "ca": { - "type": "string", - "description": "TLS ca path" - }, - "cert": { - "type": "string", - "description": "TLS cert path" - }, "enabled": { "type": "boolean", - "description": "TLS enabled" - }, - "insecure_skip_verify": { - "type": "boolean", - "description": "enable/disable skip SSL certificate verification" + "description": "creates service account" }, - "key": { + "name": { "type": "string", - "description": "TLS key path" + "description": "name of service account" } } - } - } - }, - "serviceAccount": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean", - "description": "creates service account" }, - "name": { + "ttlSecondsAfterFinished": { + "type": "integer", + "description": "ttl setting for K8s completed jobs" + }, + "version": { "type": "string", - "description": "name of service account" + "description": "version of gateway config", + "pattern": "^v[0-9]+\\.[0-9]+\\.[0-9]$" } } - }, - "ttlSecondsAfterFinished": { - "type": "integer", - "description": "ttl setting for K8s completed jobs" - }, - "version": { - "type": "string", - "description": "version of gateway config", - "pattern": "^v[0-9]+\\.[0-9]+\\.[0-9]$" } } },