From 3457a5b9ffdf2fe151b2a00a583f93c219982e3b Mon Sep 17 00:00:00 2001 From: Yusuke Kato Date: Wed, 7 Aug 2024 10:02:36 +0900 Subject: [PATCH] add HTTP2 support for http.Client and Vald HTTP Server (#2572) Signed-off-by: kpango --- .github/ISSUE_TEMPLATE/bug_report.md | 4 +- .../ISSUE_TEMPLATE/security_issue_report.md | 4 +- .github/PULL_REQUEST_TEMPLATE.md | 4 +- .../dockers-buildkit-syft-scanner-image.yaml | 48 + .github/workflows/helm.yml | 1 + Makefile | 9 +- Makefile.d/docker.mk | 14 +- assets/test/templates/common/inline.tmpl | 0 assets/test/templates/common/inputs.tmpl | 0 assets/test/templates/common/message.tmpl | 0 assets/test/templates/option/inline.tmpl | 1 - assets/test/templates/option/inputs.tmpl | 1 - assets/test/templates/option/message.tmpl | 1 - .../vald-helm-operator/crds/valdrelease.yaml | 1092 +++++++++ charts/vald/README.md | 36 + charts/vald/values.schema.json | 2132 +++++++++++++++++ charts/vald/values.yaml | 89 + design/.gitkeep | 0 dockers/agent/core/agent/Dockerfile | 2 +- dockers/buildkit/syft/scanner/Dockerfile | 18 + dockers/ci/base/Dockerfile | 2 +- example/client/go.mod | 16 +- example/client/go.mod.default | 2 +- example/client/go.sum | 23 +- go.mod | 34 +- go.sum | 30 +- hack/go.mod.default | 2 +- internal/config/server.go | 57 +- internal/net/http/client/client.go | 5 +- internal/net/http/client/client_test.go | 22 +- internal/servers/server/option.go | 102 + internal/servers/server/server.go | 28 +- internal/servers/server/server_test.go | 17 +- internal/test/data/hdf5/hdf5.go | 5 +- k8s/agent/clusterrole.yaml | 0 k8s/agent/clusterrolebinding.yaml | 0 k8s/agent/daemonset.yaml | 0 k8s/agent/deployment.yaml | 0 k8s/agent/faiss/configmap.yaml | 0 k8s/agent/hpa.yaml | 0 k8s/agent/networkpolicy.yaml | 0 k8s/agent/ngt/configmap.yaml | 30 + k8s/agent/serviceaccount.yaml | 0 k8s/agent/sidecar/configmap.yaml | 0 k8s/agent/sidecar/svc.yaml | 0 k8s/discoverer/configmap.yaml | 30 + k8s/discoverer/daemonset.yaml | 0 k8s/discoverer/deployment.yaml | 2 +- k8s/discoverer/hpa.yaml | 0 k8s/discoverer/networkpolicy.yaml | 0 k8s/gateway/gateway/filter/configmap.yaml | 0 k8s/gateway/gateway/filter/daemonset.yaml | 0 k8s/gateway/gateway/filter/deployment.yaml | 0 k8s/gateway/gateway/filter/hpa.yaml | 0 k8s/gateway/gateway/filter/networkpolicy.yaml | 0 k8s/gateway/gateway/filter/pdb.yaml | 0 k8s/gateway/gateway/filter/priorityclass.yaml | 0 k8s/gateway/gateway/filter/svc.yaml | 0 k8s/gateway/gateway/lb/configmap.yaml | 30 + k8s/gateway/gateway/lb/daemonset.yaml | 0 k8s/gateway/gateway/lb/deployment.yaml | 2 +- k8s/gateway/gateway/lb/networkpolicy.yaml | 0 k8s/gateway/gateway/mirror/clusterrole.yaml | 0 .../gateway/mirror/clusterrolebinding.yaml | 0 k8s/gateway/gateway/mirror/configmap.yaml | 0 k8s/gateway/gateway/mirror/daemonset.yaml | 0 k8s/gateway/gateway/mirror/deployment.yaml | 0 k8s/gateway/gateway/mirror/hpa.yaml | 0 k8s/gateway/gateway/mirror/networkpolicy.yaml | 0 k8s/gateway/gateway/mirror/pdb.yaml | 0 k8s/gateway/gateway/mirror/priorityclass.yaml | 0 .../gateway/mirror/serviceaccount.yaml | 0 k8s/gateway/gateway/mirror/svc.yaml | 0 k8s/index/job/correction/configmap.yaml | 30 + k8s/index/job/correction/networkpolicy.yaml | 0 k8s/index/job/creation/configmap.yaml | 30 + k8s/index/job/creation/networkpolicy.yaml | 0 .../job/readreplica/rotate/clusterrole.yaml | 0 .../rotate/clusterrolebinding.yaml | 0 .../job/readreplica/rotate/configmap.yaml | 0 .../job/readreplica/rotate/networkpolicy.yaml | 0 .../readreplica/rotate/serviceaccount.yaml | 0 k8s/index/job/save/configmap.yaml | 30 + k8s/index/job/save/networkpolicy.yaml | 0 k8s/index/operator/configmap.yaml | 2 +- k8s/index/operator/deployment.yaml | 2 +- k8s/manager/index/configmap.yaml | 30 + k8s/manager/index/daemonset.yaml | 0 k8s/manager/index/deployment.yaml | 2 +- k8s/manager/index/networkpolicy.yaml | 0 k8s/operator/helm/crds/valdrelease.yaml | 1092 +++++++++ k8s/readreplica/deployment.yaml | 0 k8s/readreplica/hpa.yaml | 0 k8s/readreplica/networkpolicy.yaml | 0 k8s/readreplica/pvc.yaml | 0 k8s/readreplica/snapshot.yaml | 0 k8s/readreplica/svc.yaml | 0 rust/libs/proto/src/core.v1.rs | 0 rust/libs/proto/src/discoverer.v1.rs | 0 rust/libs/proto/src/filter.egress.v1.rs | 0 rust/libs/proto/src/filter.ingress.v1.rs | 0 rust/libs/proto/src/mirror.v1.rs | 0 rust/libs/proto/src/sidecar.v1.rs | 0 rust/libs/proto/src/vald.v1.rs | 0 tests/chaos/chart/templates/NOTES.txt | 0 versions/GO_VERSION | 2 +- versions/actions/ACTIONS_UPLOAD_ARTIFACT | 2 +- 107 files changed, 5000 insertions(+), 117 deletions(-) create mode 100644 .github/workflows/dockers-buildkit-syft-scanner-image.yaml delete mode 100644 assets/test/templates/common/inline.tmpl delete mode 100644 assets/test/templates/common/inputs.tmpl delete mode 100644 assets/test/templates/common/message.tmpl delete mode 120000 assets/test/templates/option/inline.tmpl delete mode 120000 assets/test/templates/option/inputs.tmpl delete mode 120000 assets/test/templates/option/message.tmpl delete mode 100755 design/.gitkeep create mode 100644 dockers/buildkit/syft/scanner/Dockerfile delete mode 100644 k8s/agent/clusterrole.yaml delete mode 100644 k8s/agent/clusterrolebinding.yaml delete mode 100644 k8s/agent/daemonset.yaml delete mode 100644 k8s/agent/deployment.yaml delete mode 100644 k8s/agent/faiss/configmap.yaml delete mode 100644 k8s/agent/hpa.yaml delete mode 100644 k8s/agent/networkpolicy.yaml delete mode 100644 k8s/agent/serviceaccount.yaml delete mode 100644 k8s/agent/sidecar/configmap.yaml delete mode 100644 k8s/agent/sidecar/svc.yaml delete mode 100644 k8s/discoverer/daemonset.yaml delete mode 100644 k8s/discoverer/hpa.yaml delete mode 100644 k8s/discoverer/networkpolicy.yaml delete mode 100644 k8s/gateway/gateway/filter/configmap.yaml delete mode 100644 k8s/gateway/gateway/filter/daemonset.yaml delete mode 100644 k8s/gateway/gateway/filter/deployment.yaml delete mode 100644 k8s/gateway/gateway/filter/hpa.yaml delete mode 100644 k8s/gateway/gateway/filter/networkpolicy.yaml delete mode 100644 k8s/gateway/gateway/filter/pdb.yaml delete mode 100644 k8s/gateway/gateway/filter/priorityclass.yaml delete mode 100644 k8s/gateway/gateway/filter/svc.yaml delete mode 100644 k8s/gateway/gateway/lb/daemonset.yaml delete mode 100644 k8s/gateway/gateway/lb/networkpolicy.yaml delete mode 100644 k8s/gateway/gateway/mirror/clusterrole.yaml delete mode 100644 k8s/gateway/gateway/mirror/clusterrolebinding.yaml delete mode 100644 k8s/gateway/gateway/mirror/configmap.yaml delete mode 100644 k8s/gateway/gateway/mirror/daemonset.yaml delete mode 100644 k8s/gateway/gateway/mirror/deployment.yaml delete mode 100644 k8s/gateway/gateway/mirror/hpa.yaml delete mode 100644 k8s/gateway/gateway/mirror/networkpolicy.yaml delete mode 100644 k8s/gateway/gateway/mirror/pdb.yaml delete mode 100644 k8s/gateway/gateway/mirror/priorityclass.yaml delete mode 100644 k8s/gateway/gateway/mirror/serviceaccount.yaml delete mode 100644 k8s/gateway/gateway/mirror/svc.yaml delete mode 100644 k8s/index/job/correction/networkpolicy.yaml delete mode 100644 k8s/index/job/creation/networkpolicy.yaml delete mode 100644 k8s/index/job/readreplica/rotate/clusterrole.yaml delete mode 100644 k8s/index/job/readreplica/rotate/clusterrolebinding.yaml delete mode 100644 k8s/index/job/readreplica/rotate/configmap.yaml delete mode 100644 k8s/index/job/readreplica/rotate/networkpolicy.yaml delete mode 100644 k8s/index/job/readreplica/rotate/serviceaccount.yaml delete mode 100644 k8s/index/job/save/networkpolicy.yaml delete mode 100644 k8s/manager/index/daemonset.yaml delete mode 100644 k8s/manager/index/networkpolicy.yaml delete mode 100644 k8s/readreplica/deployment.yaml delete mode 100644 k8s/readreplica/hpa.yaml delete mode 100644 k8s/readreplica/networkpolicy.yaml delete mode 100644 k8s/readreplica/pvc.yaml delete mode 100644 k8s/readreplica/snapshot.yaml delete mode 100644 k8s/readreplica/svc.yaml delete mode 100644 rust/libs/proto/src/core.v1.rs delete mode 100644 rust/libs/proto/src/discoverer.v1.rs delete mode 100644 rust/libs/proto/src/filter.egress.v1.rs delete mode 100644 rust/libs/proto/src/filter.ingress.v1.rs delete mode 100644 rust/libs/proto/src/mirror.v1.rs delete mode 100644 rust/libs/proto/src/sidecar.v1.rs delete mode 100644 rust/libs/proto/src/vald.v1.rs delete mode 100644 tests/chaos/chart/templates/NOTES.txt diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index c5db91ca9c..a6af52139d 100755 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -22,8 +22,8 @@ assignees: "" -- Vald Version: v1.7.12 -- Go Version: v1.22.5 +- Vald Version: v1.7.13 +- Go Version: v1.22.6 - Rust Version: v1.80.0 - Docker Version: v27.1.1 - Kubernetes Version: v1.30.3 diff --git a/.github/ISSUE_TEMPLATE/security_issue_report.md b/.github/ISSUE_TEMPLATE/security_issue_report.md index 3474581d6c..0b668c55a4 100644 --- a/.github/ISSUE_TEMPLATE/security_issue_report.md +++ b/.github/ISSUE_TEMPLATE/security_issue_report.md @@ -16,8 +16,8 @@ assignees: "" -- Vald Version: v1.7.12 -- Go Version: v1.22.5 +- Vald Version: v1.7.13 +- Go Version: v1.22.6 - Rust Version: v1.80.0 - Docker Version: v27.1.1 - Kubernetes Version: v1.30.3 diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 8f43359802..dbf641e9f8 100755 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -15,8 +15,8 @@ ### Versions -- Vald Version: v1.7.12 -- Go Version: v1.22.5 +- Vald Version: v1.7.13 +- Go Version: v1.22.6 - Rust Version: v1.80.0 - Docker Version: v27.1.1 - Kubernetes Version: v1.30.3 diff --git a/.github/workflows/dockers-buildkit-syft-scanner-image.yaml b/.github/workflows/dockers-buildkit-syft-scanner-image.yaml new file mode 100644 index 0000000000..0476cfdfb9 --- /dev/null +++ b/.github/workflows/dockers-buildkit-syft-scanner-image.yaml @@ -0,0 +1,48 @@ +# +# 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. +# +name: "Build docker image: buildkit-syft-scanner" +on: + schedule: + - cron: "0 * * * *" + push: + branches: + - "main" + - "release/v*.*" + - "!release/v*.*.*" + tags: + - "*.*.*" + - "v*.*.*" + - "*.*.*-*" + - "v*.*.*-*" + pull_request: + paths: + - ".github/actions/docker-build/action.yaml" + - ".github/workflows/_docker-image.yaml" + - ".github/workflows/dockers-buildkit-syft-scanner-image.yml" + - "dockers/buildkit/syft/scanner/Dockerfile" + pull_request_target: + paths: + - ".github/actions/docker-build/action.yaml" + - ".github/workflows/_docker-image.yaml" + - ".github/workflows/dockers-buildkit-syft-scanner-image.yml" + - "dockers/buildkit/syft/scanner/Dockerfile" +jobs: + build: + uses: ./.github/workflows/_docker-image.yaml + with: + target: buildkit-syft-scanner + platforms: linux/amd64,linux/arm64 + secrets: inherit diff --git a/.github/workflows/helm.yml b/.github/workflows/helm.yml index a360808379..4539fdbfbb 100644 --- a/.github/workflows/helm.yml +++ b/.github/workflows/helm.yml @@ -35,6 +35,7 @@ jobs: needs: [detect-ci-container] container: image: ghcr.io/vdaas/vald/vald-ci-container:${{ needs.detect-ci-container.outputs.TAG }} + options: "--add-host host.docker.internal:host-gateway" steps: - uses: actions/checkout@v4 with: diff --git a/Makefile b/Makefile index 75190950f2..77a9a98316 100644 --- a/Makefile +++ b/Makefile @@ -32,6 +32,7 @@ BENCHMARK_OPERATOR_IMAGE = $(NAME)-benchmark-operator BINFMT_IMAGE = $(NAME)-binfmt BUILDBASE_IMAGE = $(NAME)-buildbase BUILDKIT_IMAGE = $(NAME)-buildkit +BUILDKIT_SYFT_SCANNER_IMAGE = $(NAME)-buildkit-syft-scanner CI_CONTAINER_IMAGE = $(NAME)-ci-container DEV_CONTAINER_IMAGE = $(NAME)-dev-container DISCOVERER_IMAGE = $(NAME)-discoverer-k8s @@ -478,7 +479,13 @@ format: \ format/go \ format/json \ format/md \ - format/yaml + format/yaml \ + remove/empty/file + +.PHONY: remove/empty/file +## removes empty file such as just includes \r \n space tab +remove/empty/file: + find $(ROOTDIR)/ -type f ! -name ".gitkeep" -print0 | xargs -0 -P$(CORES) -n 1 sh -c 'grep -qvE "^[ \t\n]*$$" "$$1" || rm "$$1"' sh .PHONY: format/go ## run golines, gofumpt, goimports for all go files diff --git a/Makefile.d/docker.mk b/Makefile.d/docker.mk index 295289f08a..f9179ba659 100644 --- a/Makefile.d/docker.mk +++ b/Makefile.d/docker.mk @@ -25,6 +25,7 @@ docker/build: \ docker/build/binfmt \ docker/build/buildbase \ docker/build/buildkit \ + docker/build/buildkit-syft-scanner \ docker/build/ci-container \ docker/build/dev-container \ docker/build/discoverer-k8s \ @@ -67,7 +68,7 @@ ifeq ($(REMOTE),true) --build-arg GO_VERSION=$(GO_VERSION) \ --build-arg RUST_VERSION=$(RUST_VERSION) \ --build-arg MAINTAINER=$(MAINTAINER) \ - --sbom=true \ + --attest type=sbom,generator=docker/buildkit-syft-scanner:edge \ --provenance=mode=max \ -t $(CRORG)/$(IMAGE):$(TAG) \ -t $(GHCRORG)/$(IMAGE):$(TAG) \ @@ -219,6 +220,17 @@ docker/build/binfmt: IMAGE=$(BINFMT_IMAGE) \ docker/build/image +PHONY: docker/name/buildkit-syft-scanner +docker/name/buildkit-syft-scanner: + @echo "$(ORG)/$(BUILDKIT_SYFT_SCANNER_IMAGE)" + +.PHONY: docker/build/buildkit-syft-scanner +## build buildkit-syft-scanner image +docker/build/buildkit-syft-scanner: + @make DOCKERFILE="$(ROOTDIR)/dockers/buildkit/syft/scanner/Dockerfile" \ + IMAGE=$(BUILDKIT_SYFT_SCANNER_IMAGE) \ + docker/build/image + .PHONY: docker/name/ci-container docker/name/ci-container: @echo "$(ORG)/$(CI_CONTAINER_IMAGE)" diff --git a/assets/test/templates/common/inline.tmpl b/assets/test/templates/common/inline.tmpl deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/assets/test/templates/common/inputs.tmpl b/assets/test/templates/common/inputs.tmpl deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/assets/test/templates/common/message.tmpl b/assets/test/templates/common/message.tmpl deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/assets/test/templates/option/inline.tmpl b/assets/test/templates/option/inline.tmpl deleted file mode 120000 index 20800f829f..0000000000 --- a/assets/test/templates/option/inline.tmpl +++ /dev/null @@ -1 +0,0 @@ -../common/inline.tmpl \ No newline at end of file diff --git a/assets/test/templates/option/inputs.tmpl b/assets/test/templates/option/inputs.tmpl deleted file mode 120000 index 2e62eb5e25..0000000000 --- a/assets/test/templates/option/inputs.tmpl +++ /dev/null @@ -1 +0,0 @@ -../common/inputs.tmpl \ No newline at end of file diff --git a/assets/test/templates/option/message.tmpl b/assets/test/templates/option/message.tmpl deleted file mode 120000 index 8fabb08f36..0000000000 --- a/assets/test/templates/option/message.tmpl +++ /dev/null @@ -1 +0,0 @@ -../common/message.tmpl \ No newline at end of file diff --git a/charts/vald-helm-operator/crds/valdrelease.yaml b/charts/vald-helm-operator/crds/valdrelease.yaml index 7d6d808199..14ddee3236 100644 --- a/charts/vald-helm-operator/crds/valdrelease.yaml +++ b/charts/vald-helm-operator/crds/valdrelease.yaml @@ -582,6 +582,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -678,6 +699,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -786,6 +828,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -975,6 +1038,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1459,6 +1543,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1555,6 +1660,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1663,6 +1789,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1852,6 +1999,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2310,6 +2478,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2406,6 +2595,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2514,6 +2724,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2703,6 +2934,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3177,6 +3429,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3273,6 +3546,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3381,6 +3675,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3570,6 +3885,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4548,6 +4884,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4644,6 +5001,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4752,6 +5130,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4941,6 +5340,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -5892,6 +6312,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -5988,6 +6429,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6096,6 +6558,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6285,6 +6768,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6956,6 +7460,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7052,6 +7577,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7160,6 +7706,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7349,6 +7916,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8204,6 +8792,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8300,6 +8909,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8408,6 +9038,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8597,6 +9248,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9186,6 +9858,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9282,6 +9975,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9390,6 +10104,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9579,6 +10314,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10430,6 +11186,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10526,6 +11303,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10634,6 +11432,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10823,6 +11642,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11100,6 +11940,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11196,6 +12057,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11304,6 +12186,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11493,6 +12396,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12104,6 +13028,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12200,6 +13145,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12308,6 +13274,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12497,6 +13484,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12630,6 +13638,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12726,6 +13755,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12834,6 +13884,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -13023,6 +14094,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: diff --git a/charts/vald/README.md b/charts/vald/README.md index e837fd3ec8..c2c9e211d4 100644 --- a/charts/vald/README.md +++ b/charts/vald/README.md @@ -379,6 +379,15 @@ Run the following command to install the chart, | 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 | @@ -411,6 +420,15 @@ Run the following command to install the chart, | 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 | @@ -445,6 +463,15 @@ Run the following command to install the chart, | 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 | @@ -507,6 +534,15 @@ Run the following command to install the chart, | 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 | diff --git a/charts/vald/values.schema.json b/charts/vald/values.schema.json index 2526ae01f4..d67182b679 100644 --- a/charts/vald/values.schema.json +++ b/charts/vald/values.schema.json @@ -780,6 +780,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -950,6 +991,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -1140,6 +1222,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -1474,6 +1597,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -2291,6 +2455,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -2461,6 +2666,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -2651,6 +2897,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -2985,6 +3272,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -3729,6 +4057,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -3899,6 +4268,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -4089,6 +4499,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -4423,6 +4874,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -5151,6 +5643,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -5321,6 +5854,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -5511,6 +6085,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -5845,6 +6460,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -7456,6 +8112,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -7626,6 +8323,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -7816,6 +8554,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -8150,6 +8929,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -9726,6 +10546,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -9896,6 +10757,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -10086,6 +10988,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -10420,6 +11363,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -11510,6 +12494,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -11680,6 +12705,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -11870,6 +12936,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -12204,6 +13311,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -13655,6 +14803,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -13825,6 +15014,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -14015,6 +15245,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -14349,6 +15620,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -15389,6 +16701,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -15559,6 +16912,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -15749,6 +17143,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -16083,6 +17518,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -17490,6 +18966,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -17660,6 +19177,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -17850,6 +19408,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -18184,6 +19783,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -18641,6 +20281,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -18811,6 +20492,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -19001,6 +20723,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -19335,6 +21098,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -20408,6 +22212,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -20578,6 +22423,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -20768,6 +22654,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -21102,6 +23029,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -21339,6 +23307,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -21509,6 +23518,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -21699,6 +23749,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" @@ -22033,6 +24124,47 @@ "type": "string", "description": "REST server handler timeout" }, + "http2": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "HTTP2 server enabled" + }, + "handler_limit": { + "type": "integer", + "description": "Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit." + }, + "max_concurrent_streams": { + "type": "integer", + "description": "The number of concurrent streams that each client may have open at a time." + }, + "max_decoder_header_table_size": { + "type": "integer", + "description": "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." + }, + "max_encoder_header_table_size": { + "type": "integer", + "description": "An upper limit for the header compression table used for encoding request headers." + }, + "max_read_frame_size": { + "type": "integer", + "description": "The largest frame this server is willing to read." + }, + "max_upload_buffer_per_connection": { + "type": "integer", + "description": "The size of the initial flow control window for each connections." + }, + "max_upload_buffer_per_stream": { + "type": "integer", + "description": "The size of the initial flow control window for each streams." + }, + "permit_prohibited_cipher_suites": { + "type": "boolean", + "description": "if true, permits the use of cipher suites prohibited by the HTTP/2 spec." + } + } + }, "idle_timeout": { "type": "string", "description": "REST server idle timeout" diff --git a/charts/vald/values.yaml b/charts/vald/values.yaml index 1bd5b5899c..acbc75da52 100644 --- a/charts/vald/values.yaml +++ b/charts/vald/values.yaml @@ -94,6 +94,35 @@ defaults: # @schema {"name": "defaults.server_config.servers.rest.server.http.write_timeout", "type": "string"} # defaults.server_config.servers.rest.server.http.write_timeout -- REST server write timeout write_timeout: 1s + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2", "type": "object", "anchor": "http2_server_config"} + http2: + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.enabled", "type": "boolean"} + # defaults.server_config.servers.rest.server.http.http2.enabled -- HTTP2 server enabled + enabled: false + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.handler_limit", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.handler_limit -- Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. + handler_limit: 0 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.permit_prohibited_cipher_suites", "type": "boolean"} + # defaults.server_config.servers.rest.server.http.http2.permit_prohibited_cipher_suites -- if true, permits the use of cipher suites prohibited by the HTTP/2 spec. + permit_prohibited_cipher_suites: true + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_connection", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_connection -- The size of the initial flow control window for each connections. + max_upload_buffer_per_connection: 0 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_stream", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_upload_buffer_per_stream -- The size of the initial flow control window for each streams. + max_upload_buffer_per_stream: 0 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_concurrent_streams", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_concurrent_streams -- The number of concurrent streams that each client may have open at a time. + max_concurrent_streams: 0 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_decoder_header_table_size", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_decoder_header_table_size -- 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. + max_decoder_header_table_size: 4096 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_encoder_header_table_size", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_encoder_header_table_size -- An upper limit for the header compression table used for encoding request headers. + max_encoder_header_table_size: 4096 + # @schema {"name": "defaults.server_config.servers.rest.server.http.http2.max_read_frame_size", "type": "integer"} + # defaults.server_config.servers.rest.server.http.http2.max_read_frame_size -- The largest frame this server is willing to read. + max_read_frame_size: 0 # @schema {"name": "defaults.server_config.servers.rest.server.socket_option", "type": "object", "anchor": "socket_option"} socket_option: # @schema {"name": "defaults.server_config.servers.rest.server.socket_option.reuse_port", "type": "boolean"} @@ -356,6 +385,26 @@ defaults: # @schema {"name": "defaults.server_config.healths.liveness.server.http.write_timeout", "type": "string"} # defaults.server_config.healths.liveness.server.http.write_timeout -- liveness server write timeout write_timeout: "" + # @schema {"name": "defaults.server_config.healths.liveness.server.http.http2", "type": "object", "alias": "http2_server_config"} + http2: + # defaults.server_config.healths.liveness.server.http.http2.enabled -- HTTP2 server enabled + enabled: false + # defaults.server_config.healths.liveness.server.http.http2.handler_limit -- Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. + handler_limit: 0 + # defaults.server_config.healths.liveness.server.http.http2.permit_prohibited_cipher_suites -- if true, permits the use of cipher suites prohibited by the HTTP/2 spec. + permit_prohibited_cipher_suites: true + # defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_connection -- The size of the initial flow control window for each connections. + max_upload_buffer_per_connection: 0 + # defaults.server_config.healths.liveness.server.http.http2.max_upload_buffer_per_stream -- The size of the initial flow control window for each streams. + max_upload_buffer_per_stream: 0 + # defaults.server_config.healths.liveness.server.http.http2.max_concurrent_streams -- The number of concurrent streams that each client may have open at a time. + max_concurrent_streams: 0 + # defaults.server_config.healths.liveness.server.http.http2.max_decoder_header_table_size -- 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. + max_decoder_header_table_size: 4096 + # defaults.server_config.healths.liveness.server.http.http2.max_encoder_header_table_size -- An upper limit for the header compression table used for encoding request headers. + max_encoder_header_table_size: 4096 + # defaults.server_config.healths.liveness.server.http.http2.max_read_frame_size -- The largest frame this server is willing to read. + max_read_frame_size: 0 # @schema {"name": "defaults.server_config.healths.liveness.server.socket_option", "alias": "socket_option"} socket_option: # defaults.server_config.healths.liveness.server.socket_option.reuse_port -- server listen socket option for reuse_port functionality @@ -455,6 +504,26 @@ defaults: # @schema {"name": "defaults.server_config.healths.readiness.server.http.write_timeout", "type": "string"} # defaults.server_config.healths.readiness.server.http.write_timeout -- readiness server write timeout write_timeout: "" + # @schema {"name": "defaults.server_config.healths.readiness.server.http.http2", "type": "object", "alias": "http2_server_config"} + http2: + # defaults.server_config.healths.readiness.server.http.http2.enabled -- HTTP2 server enabled + enabled: false + # defaults.server_config.healths.readiness.server.http.http2.handler_limit -- Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. + handler_limit: 0 + # defaults.server_config.healths.readiness.server.http.http2.permit_prohibited_cipher_suites -- if true, permits the use of cipher suites prohibited by the HTTP/2 spec. + permit_prohibited_cipher_suites: true + # defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_connection -- The size of the initial flow control window for each connections. + max_upload_buffer_per_connection: 0 + # defaults.server_config.healths.readiness.server.http.http2.max_upload_buffer_per_stream -- The size of the initial flow control window for each streams. + max_upload_buffer_per_stream: 0 + # defaults.server_config.healths.readiness.server.http.http2.max_concurrent_streams -- The number of concurrent streams that each client may have open at a time. + max_concurrent_streams: 0 + # defaults.server_config.healths.readiness.server.http.http2.max_decoder_header_table_size -- 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. + max_decoder_header_table_size: 4096 + # defaults.server_config.healths.readiness.server.http.http2.max_encoder_header_table_size -- An upper limit for the header compression table used for encoding request headers. + max_encoder_header_table_size: 4096 + # defaults.server_config.healths.readiness.server.http.http2.max_read_frame_size -- The largest frame this server is willing to read. + max_read_frame_size: 0 # @schema {"name": "defaults.server_config.healths.readiness.server.socket_option", "alias": "socket_option"} socket_option: # defaults.server_config.healths.readiness.server.socket_option.reuse_port -- server listen socket option for reuse_port functionality @@ -528,6 +597,26 @@ defaults: # @schema {"name": "defaults.server_config.metrics.pprof.server.http.write_timeout", "type": "string"} # defaults.server_config.metrics.pprof.server.http.write_timeout -- pprof server write timeout write_timeout: 1m + # @schema {"name": "defaults.server_config.metrics.pprof.server.http.http2", "type": "object", "alias": "http2_server_config"} + http2: + # defaults.server_config.metrics.pprof.server.http.http2.enabled -- HTTP2 server enabled + enabled: false + # defaults.server_config.metrics.pprof.server.http.http2.handler_limit -- Limits the number of http.Handler ServeHTTP goroutines which may run at a time over all connections. Negative or zero no limit. + handler_limit: 0 + # defaults.server_config.metrics.pprof.server.http.http2.permit_prohibited_cipher_suites -- if true, permits the use of cipher suites prohibited by the HTTP/2 spec. + permit_prohibited_cipher_suites: true + # defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_connection -- The size of the initial flow control window for each connections. + max_upload_buffer_per_connection: 0 + # defaults.server_config.metrics.pprof.server.http.http2.max_upload_buffer_per_stream -- The size of the initial flow control window for each streams. + max_upload_buffer_per_stream: 0 + # defaults.server_config.metrics.pprof.server.http.http2.max_concurrent_streams -- The number of concurrent streams that each client may have open at a time. + max_concurrent_streams: 0 + # defaults.server_config.metrics.pprof.server.http.http2.max_decoder_header_table_size -- 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. + max_decoder_header_table_size: 4096 + # defaults.server_config.metrics.pprof.server.http.http2.max_encoder_header_table_size -- An upper limit for the header compression table used for encoding request headers. + max_encoder_header_table_size: 4096 + # defaults.server_config.metrics.pprof.server.http.http2.max_read_frame_size -- The largest frame this server is willing to read. + max_read_frame_size: 0 # @schema {"name": "defaults.server_config.metrics.pprof.server.socket_option", "alias": "socket_option"} socket_option: # defaults.server_config.metrics.pprof.server.socket_option.reuse_port -- server listen socket option for reuse_port functionality diff --git a/design/.gitkeep b/design/.gitkeep deleted file mode 100755 index e69de29bb2..0000000000 diff --git a/dockers/agent/core/agent/Dockerfile b/dockers/agent/core/agent/Dockerfile index da44df6a34..f6ab236dfa 100644 --- a/dockers/agent/core/agent/Dockerfile +++ b/dockers/agent/core/agent/Dockerfile @@ -43,8 +43,8 @@ ENV REPO=vald ENV RUST_HOME=/usr/loacl/lib/rust ENV TZ=Etc/UTC ENV USER=root -ENV CARGO_HOME=${RUST_HOME}/cargo ENV RUSTUP_HOME=${RUST_HOME}/rustup +ENV CARGO_HOME=${RUST_HOME}/cargo ENV PATH=${CARGO_HOME}/bin:${RUSTUP_HOME}/bin:/usr/local/bin:${PATH} WORKDIR ${HOME}/rust/src/github.com/${ORG}/${REPO} diff --git a/dockers/buildkit/syft/scanner/Dockerfile b/dockers/buildkit/syft/scanner/Dockerfile new file mode 100644 index 0000000000..c729fa7298 --- /dev/null +++ b/dockers/buildkit/syft/scanner/Dockerfile @@ -0,0 +1,18 @@ +# syntax = docker/dockerfile:latest +# +# 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. +# + +FROM docker/buildkit-syft-scanner:edge AS scanner diff --git a/dockers/ci/base/Dockerfile b/dockers/ci/base/Dockerfile index 2b0bc874ad..0377c37a8f 100644 --- a/dockers/ci/base/Dockerfile +++ b/dockers/ci/base/Dockerfile @@ -48,8 +48,8 @@ ENV REPO=vald ENV RUST_HOME=/usr/loacl/lib/rust ENV TZ=Etc/UTC ENV USER=root -ENV CARGO_HOME=${RUST_HOME}/cargo ENV RUSTUP_HOME=${RUST_HOME}/rustup +ENV CARGO_HOME=${RUST_HOME}/cargo ENV PATH=${CARGO_HOME}/bin:${GOPATH}/bin:${GOROOT}/bin:${RUSTUP_HOME}/bin:/usr/local/bin:${PATH} WORKDIR ${GOPATH}/src/github.com/${ORG}/${REPO} diff --git a/example/client/go.mod b/example/client/go.mod index 2522b6f703..f64e6546d4 100644 --- a/example/client/go.mod +++ b/example/client/go.mod @@ -1,6 +1,6 @@ module github.com/vdaas/vald/example/client -go 1.22.5 +go 1.22.6 replace ( github.com/envoyproxy/protoc-gen-validate => github.com/envoyproxy/protoc-gen-validate v1.1.0 @@ -8,9 +8,9 @@ replace ( github.com/golang/protobuf => github.com/golang/protobuf v1.5.4 github.com/kpango/glg => github.com/kpango/glg v1.6.15 github.com/pkg/sftp => github.com/pkg/sftp v1.13.6 - golang.org/x/crypto => golang.org/x/crypto v0.25.0 - golang.org/x/net => golang.org/x/net v0.27.0 - golang.org/x/text => golang.org/x/text v0.16.0 + golang.org/x/crypto => golang.org/x/crypto v0.26.0 + golang.org/x/net => golang.org/x/net v0.28.0 + golang.org/x/text => golang.org/x/text v0.17.0 google.golang.org/genproto => google.golang.org/genproto v0.0.0-20240805194559-2c9e96a0b5d4 google.golang.org/genproto/googleapis/api => google.golang.org/genproto/googleapis/api v0.0.0-20240805194559-2c9e96a0b5d4 google.golang.org/genproto/googleapis/rpc => google.golang.org/genproto/googleapis/rpc v0.0.0-20240805194559-2c9e96a0b5d4 @@ -23,19 +23,19 @@ replace ( require ( github.com/kpango/fuid v0.0.0-20221203053508-503b5ad89aa1 github.com/kpango/glg v1.6.14 - github.com/vdaas/vald-client-go v1.7.12 + github.com/vdaas/vald-client-go v1.7.13 gonum.org/v1/hdf5 v0.0.0-20210714002203-8c5d23bc6946 google.golang.org/grpc v1.64.1 ) require ( - buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1 // indirect + buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240717164558-a6c49f84cc0f.2 // indirect github.com/goccy/go-json v0.10.2 // indirect github.com/kpango/fastime v1.1.9 // indirect github.com/planetscale/vtprotobuf v0.6.0 // indirect golang.org/x/net v0.26.0 // indirect - golang.org/x/sys v0.22.0 // indirect - golang.org/x/text v0.16.0 // indirect + golang.org/x/sys v0.23.0 // indirect + golang.org/x/text v0.17.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240730163845-b1a4ccb954bf // indirect google.golang.org/protobuf v1.34.2 // indirect diff --git a/example/client/go.mod.default b/example/client/go.mod.default index 14c78eebdf..3775a940ed 100644 --- a/example/client/go.mod.default +++ b/example/client/go.mod.default @@ -1,6 +1,6 @@ module github.com/vdaas/vald/example/client -go 1.22.5 +go 1.22.6 replace ( github.com/envoyproxy/protoc-gen-validate => github.com/envoyproxy/protoc-gen-validate latest diff --git a/example/client/go.sum b/example/client/go.sum index 8764390aec..d91b037bda 100644 --- a/example/client/go.sum +++ b/example/client/go.sum @@ -1,9 +1,7 @@ -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1 h1:AmmAwHbvaeOIxDKG2+aTn5C36HjmFIMkrdTp49rp80Q= -buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.32.0-20240221180331-f05a6f4403ce.1/go.mod h1:tiTMKD8j6Pd/D2WzREoweufjzaJKHZg35f/VGcZ2v3I= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240717164558-a6c49f84cc0f.2 h1:SZRVx928rbYZ6hEKUIN+vtGDkl7uotABRWGY4OAg5gM= +buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go v1.34.2-20240717164558-a6c49f84cc0f.2/go.mod h1:ylS4c28ACSI59oJrOdW4pHS4n0Hw4TgSPHn8rpHl4Yw= github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= -github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/kpango/fastime v1.1.9 h1:xVQHcqyPt5M69DyFH7g1EPRns1YQNap9d5eLhl/Jy84= @@ -16,21 +14,20 @@ github.com/planetscale/vtprotobuf v0.6.0 h1:nBeETjudeJ5ZgBHUz1fVHvbqUKnYOXNhsIEa github.com/planetscale/vtprotobuf v0.6.0/go.mod h1:t/avpk3KcrXxUnYOhZhMXJlSEyie6gQbtLq5NM3loB8= github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/vdaas/vald-client-go v1.7.12 h1:61o1y1rA6ScjGf71dm0fx4sE/zGhM4zzDsM9QFuyEtU= -github.com/vdaas/vald-client-go v1.7.12/go.mod h1:Sz8IsW2V5UYcfi0FVXPBS1KZMrX/KLqjkUQI8WakEbs= +github.com/vdaas/vald-client-go v1.7.13 h1:WGhy3buxn5ECgySfxd/t8ZCooF6UfZuwy6kqfKoFP7c= +github.com/vdaas/vald-client-go v1.7.13/go.mod h1:bH7XUMU/JnfRiv06V8J6Pahcjve4DUyX7wbw2lFvM64= go.uber.org/atomic v1.7.0 h1:ADUqmZGgLDDfbSL9ZmPxKTybcoEYHgpYfELNoN+7hsw= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/multierr v1.6.0 h1:y6IPFStTAIT5Ytl7/XYmHvzXQ7S3g/IeZW9hyZ5thw4= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/zap v1.24.0 h1:FiJd5l1UOLj0wCgbSE0rwwXHzEdAZS6hiiSnxJN/D60= go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= -golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= -golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= -golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= -golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= +golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= +golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= gonum.org/v1/hdf5 v0.0.0-20210714002203-8c5d23bc6946 h1:vJpL69PeUullhJyKtTjHjENEmZU3BkO4e+fod7nKzgM= gonum.org/v1/hdf5 v0.0.0-20210714002203-8c5d23bc6946/go.mod h1:BQUWDHIAygjdt1HnUPQ0eWqLN2n5FwJycrpYUVUOx2I= google.golang.org/genproto/googleapis/api v0.0.0-20240805194559-2c9e96a0b5d4 h1:ABEBT/sZ7We8zd7A5f3KO6zMQe+s3901H7l8Whhijt0= diff --git a/go.mod b/go.mod index bcee71bc47..2db586b22a 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/vdaas/vald -go 1.22.5 +go 1.22.6 replace ( cloud.google.com/go => cloud.google.com/go v0.115.0 @@ -15,7 +15,7 @@ replace ( cloud.google.com/go/secretmanager => cloud.google.com/go/secretmanager v1.13.5 cloud.google.com/go/storage => cloud.google.com/go/storage v1.43.0 cloud.google.com/go/trace => cloud.google.com/go/trace v1.10.11 - code.cloudfoundry.org/bytefmt => code.cloudfoundry.org/bytefmt v0.0.0-20240804182054-0a63f33a903d + code.cloudfoundry.org/bytefmt => code.cloudfoundry.org/bytefmt v0.0.0-20240806182212-6cf545ebdd6b contrib.go.opencensus.io/exporter/aws => contrib.go.opencensus.io/exporter/aws v0.0.0-20230502192102-15967c811cec contrib.go.opencensus.io/exporter/prometheus => contrib.go.opencensus.io/exporter/prometheus v0.4.2 contrib.go.opencensus.io/integrations/ocsql => contrib.go.opencensus.io/integrations/ocsql v0.1.7 @@ -294,21 +294,21 @@ replace ( go.uber.org/multierr => go.uber.org/multierr v1.11.0 go.uber.org/zap => go.uber.org/zap v1.27.0 gocloud.dev => gocloud.dev v0.38.0 - golang.org/x/crypto => golang.org/x/crypto v0.25.0 + golang.org/x/crypto => golang.org/x/crypto v0.26.0 golang.org/x/exp => golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 golang.org/x/exp/typeparams => golang.org/x/exp/typeparams v0.0.0-20240719175910-8a7402abbf56 - golang.org/x/image => golang.org/x/image v0.18.0 + golang.org/x/image => golang.org/x/image v0.19.0 golang.org/x/lint => golang.org/x/lint v0.0.0-20210508222113-6edffad5e616 - golang.org/x/mobile => golang.org/x/mobile v0.0.0-20240716161057-1ad2df20a8b6 + golang.org/x/mobile => golang.org/x/mobile v0.0.0-20240806205939-81131f6468ab golang.org/x/mod => golang.org/x/mod v0.20.0 - golang.org/x/net => golang.org/x/net v0.27.0 + golang.org/x/net => golang.org/x/net v0.28.0 golang.org/x/oauth2 => golang.org/x/oauth2 v0.22.0 golang.org/x/sync => golang.org/x/sync v0.8.0 golang.org/x/sys => golang.org/x/sys v0.23.0 - golang.org/x/term => golang.org/x/term v0.22.0 - golang.org/x/text => golang.org/x/text v0.16.0 + golang.org/x/term => golang.org/x/term v0.23.0 + golang.org/x/text => golang.org/x/text v0.17.0 golang.org/x/time => golang.org/x/time v0.6.0 - golang.org/x/tools => golang.org/x/tools v0.23.0 + golang.org/x/tools => golang.org/x/tools v0.24.0 golang.org/x/xerrors => golang.org/x/xerrors v0.0.0-20240716161551-93cc26a95ae9 gomodules.xyz/jsonpatch/v2 => gomodules.xyz/jsonpatch/v2 v2.4.0 gonum.org/v1/gonum => gonum.org/v1/gonum v0.15.0 @@ -396,13 +396,13 @@ require ( go.uber.org/ratelimit v0.3.1 go.uber.org/zap v1.27.0 gocloud.dev v0.0.0-00010101000000-000000000000 - golang.org/x/net v0.27.0 + golang.org/x/net v0.28.0 golang.org/x/oauth2 v0.21.0 - golang.org/x/sync v0.7.0 + golang.org/x/sync v0.8.0 golang.org/x/sys v0.23.0 - golang.org/x/text v0.16.0 + golang.org/x/text v0.17.0 golang.org/x/time v0.5.0 - golang.org/x/tools v0.23.0 + golang.org/x/tools v0.24.0 gonum.org/v1/hdf5 v0.0.0-00010101000000-000000000000 gonum.org/v1/plot v0.14.0 google.golang.org/genproto/googleapis/api v0.0.0-20240730163845-b1a4ccb954bf @@ -505,12 +505,12 @@ require ( go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect go.uber.org/multierr v1.11.0 // indirect - golang.org/x/crypto v0.25.0 // indirect + golang.org/x/crypto v0.26.0 // indirect golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect golang.org/x/exp/typeparams v0.0.0-20240213143201-ec583247a57a // indirect - golang.org/x/image v0.18.0 // indirect - golang.org/x/mod v0.19.0 // indirect - golang.org/x/term v0.22.0 // indirect + golang.org/x/image v0.19.0 // indirect + golang.org/x/mod v0.20.0 // indirect + golang.org/x/term v0.23.0 // indirect golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/api v0.189.0 // indirect diff --git a/go.sum b/go.sum index d6cd2cd00f..d0de794fc3 100644 --- a/go.sum +++ b/go.sum @@ -159,8 +159,8 @@ cloud.google.com/go/vpcaccess v1.7.11/go.mod h1:a2cuAiSCI4TVK0Dt6/dRjf22qQvfY+po cloud.google.com/go/webrisk v1.9.11/go.mod h1:mK6M8KEO0ZI7VkrjCq3Tjzw4vYq+3c4DzlMUDVaiswE= cloud.google.com/go/websecurityscanner v1.6.11/go.mod h1:vhAZjksELSg58EZfUQ1BMExD+hxqpn0G0DuyCZQjiTg= cloud.google.com/go/workflows v1.12.10/go.mod h1:RcKqCiOmKs8wFUEf3EwWZPH5eHc7Oq0kamIyOUCk0IE= -code.cloudfoundry.org/bytefmt v0.0.0-20240804182054-0a63f33a903d h1:ZLm6EHoj1ci9UabYcqoReI2NMXXkKKqPU0tFN2r2kqE= -code.cloudfoundry.org/bytefmt v0.0.0-20240804182054-0a63f33a903d/go.mod h1:0uEmgxxcOTCe4IeYr8HTbVll002oKimIOGp7vuHVK/o= +code.cloudfoundry.org/bytefmt v0.0.0-20240806182212-6cf545ebdd6b h1:C+YxvUtePwiSzniQagI/yDdWjh1Lx1TkstHBGN7OTnA= +code.cloudfoundry.org/bytefmt v0.0.0-20240806182212-6cf545ebdd6b/go.mod h1:9aVxojRyikUaWddFMb0A9tgpGMtDPhk1pnCfhY0/fA4= dmitri.shuralyov.com/gpu/mtl v0.0.0-20201218220906-28db891af037/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= dmitri.shuralyov.com/gpu/mtl v0.0.0-20221208032759-85de2813cf6b/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= eliasnaur.com/font v0.0.0-20230308162249-dd43949cb42d/go.mod h1:OYVuxibdk9OSLX8vAqydtRPP87PyTFcT9uH3MlEGBQA= @@ -682,8 +682,8 @@ go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= gocloud.dev v0.38.0 h1:SpxfaOc/Fp4PeO8ui7wRcCZV0EgXZ+IWcVSLn6ZMSw0= gocloud.dev v0.38.0/go.mod h1:3XjKvd2E5iVNu/xFImRzjN0d/fkNHe4s0RiKidpEUMQ= -golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= -golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= golang.org/x/exp/shiny v0.0.0-20220827204233-334a2380cb91/go.mod h1:VjAR7z0ngyATZTELrBSkxOOHhhlnVUxDye4mcjx5h/8= @@ -692,14 +692,14 @@ golang.org/x/exp/shiny v0.0.0-20230817173708-d852ddb80c63/go.mod h1:UH99kUObWAZk golang.org/x/exp/shiny v0.0.0-20240707233637-46b078467d37/go.mod h1:3F+MieQB7dRYLTmnncoFbb1crS5lfQoTfDgQy6K4N0o= golang.org/x/exp/typeparams v0.0.0-20240719175910-8a7402abbf56 h1:i+QrZdyNyfLEnWjd5T6LQZvQP3xk2XiNs3sQgN7QDGE= golang.org/x/exp/typeparams v0.0.0-20240719175910-8a7402abbf56/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= -golang.org/x/image v0.18.0 h1:jGzIakQa/ZXI1I0Fxvaa9W7yP25TqT6cHIHn+6CqvSQ= -golang.org/x/image v0.18.0/go.mod h1:4yyo5vMFQjVjUcVk4jEQcU9MGy/rulF5WvUILseCM2E= +golang.org/x/image v0.19.0 h1:D9FX4QWkLfkeqaC62SonffIIuYdOk/UE2XKUBgRIBIQ= +golang.org/x/image v0.19.0/go.mod h1:y0zrRqlQRWQ5PXaYCOMLTW2fpsxZ8Qh9I/ohnInJEys= golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= -golang.org/x/mobile v0.0.0-20240716161057-1ad2df20a8b6/go.mod h1:TCsc78+c4cqb8IKEosz2LwJ6YRNkIjMuAYeHYjchGDE= +golang.org/x/mobile v0.0.0-20240806205939-81131f6468ab/go.mod h1:udWezQGYjqrCxz5nV321pXQTx5oGbZx+khZvFjZNOPM= golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= -golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys= -golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= golang.org/x/oauth2 v0.22.0 h1:BzDx2FehcG7jJwgWLELCdmLuxk2i+x9UDpSiss2u0ZA= golang.org/x/oauth2 v0.22.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= @@ -707,14 +707,14 @@ golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/telemetry v0.0.0-20240521205824-bda55230c457/go.mod h1:pRgIJT+bRLFKnoM1ldnzKoxTIn14Yxz928LQRYYgIN0= -golang.org/x/term v0.22.0 h1:BbsgPEJULsl2fV/AT3v15Mjva5yXKQDyKf+TbDz7QJk= -golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= +golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U= golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= -golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg= -golang.org/x/tools v0.23.0/go.mod h1:pnu6ufv6vQkll6szChhK3C3L/ruaIv5eBeztNG8wtsI= +golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= +golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20240716161551-93cc26a95ae9 h1:LLhsEBxRTBLuKlQxFBYUOU8xyFgXv6cOTp2HASDlsDk= golang.org/x/xerrors v0.0.0-20240716161551-93cc26a95ae9/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= gomodules.xyz/jsonpatch/v2 v2.4.0 h1:Ci3iUJyx9UeRx7CeFN8ARgGbkESwJK+KB9lLcWxY/Zw= diff --git a/hack/go.mod.default b/hack/go.mod.default index c55303d4ce..bd8e18fe13 100644 --- a/hack/go.mod.default +++ b/hack/go.mod.default @@ -1,6 +1,6 @@ module github.com/vdaas/vald -go 1.22.5 +go 1.22.6 replace ( cloud.google.com/go => cloud.google.com/go upgrade diff --git a/internal/config/server.go b/internal/config/server.go index dc1529e357..13ca458b77 100644 --- a/internal/config/server.go +++ b/internal/config/server.go @@ -29,6 +29,12 @@ import ( // Servers represents the configuration of server list. type Servers struct { + // TLS represent server tls configuration. + TLS *TLS `json:"tls" yaml:"tls"` + + // FullShutdownDuration represent summary duration of shutdown time + FullShutdownDuration string `json:"full_shutdown_duration" yaml:"full_shutdown_duration"` + // Server represent server configuration. Servers []*Server `json:"servers" yaml:"servers"` @@ -43,31 +49,26 @@ type Servers struct { // ShutdownStrategy represent shutdown order of server name ShutdownStrategy []string `json:"shutdown_strategy" yaml:"shutdown_strategy"` - - // FullShutdownDuration represent summary duration of shutdown time - FullShutdownDuration string `json:"full_shutdown_duration" yaml:"full_shutdown_duration"` - - // TLS represent server tls configuration. - TLS *TLS `json:"tls" yaml:"tls"` } // Server represents the server configuration. type Server struct { + GRPC *GRPC `json:"grpc,omitempty" yaml:"grpc"` + SocketOption *SocketOption `json:"socket_option,omitempty" yaml:"socket_option"` + HTTP *HTTP `json:"http,omitempty" yaml:"http"` Name string `json:"name,omitempty" yaml:"name"` Network string `json:"network,omitempty" yaml:"network"` Host string `json:"host,omitempty" yaml:"host"` - Port uint16 `json:"port,omitempty" yaml:"port"` SocketPath string `json:"socket_path,omitempty" yaml:"socket_path"` Mode string `json:"mode,omitempty" yaml:"mode"` // gRPC, REST, GraphQL ProbeWaitTime string `json:"probe_wait_time,omitempty" yaml:"probe_wait_time"` - HTTP *HTTP `json:"http,omitempty" yaml:"http"` - GRPC *GRPC `json:"grpc,omitempty" yaml:"grpc"` - SocketOption *SocketOption `json:"socket_option,omitempty" yaml:"socket_option"` Restart bool `json:"restart,omitempty" yaml:"restart"` + Port uint16 `json:"port,omitempty" yaml:"port"` } // HTTP represents the configuration for HTTP. type HTTP struct { + HTTP2 *HTTP2 `json:"http2" yaml:"http2"` ShutdownDuration string `json:"shutdown_duration" yaml:"shutdown_duration"` HandlerTimeout string `json:"handler_timeout" yaml:"handler_timeout"` IdleTimeout string `json:"idle_timeout" yaml:"idle_timeout"` @@ -76,22 +77,35 @@ type HTTP struct { WriteTimeout string `json:"write_timeout" yaml:"write_timeout"` } +// HTTP2 represents the configuration for HTTP2. +type HTTP2 struct { + HandlerLimit int `json:"handler_limit,omitempty" yaml:"handler_limit"` + Enabled bool `json:"enabled,omitempty" yaml:"enabled"` + PermitProhibitedCipherSuites bool `json:"permit_prohibited_cipher_suites,omitempty" yaml:"permit_prohibited_cipher_suites"` + MaxUploadBufferPerConnection int32 `json:"max_upload_buffer_per_connection,omitempty" yaml:"max_upload_buffer_per_connection"` + MaxUploadBufferPerStream int32 `json:"max_upload_buffer_per_stream,omitempty" yaml:"max_upload_buffer_per_stream"` + MaxConcurrentStreams uint32 `json:"max_concurrent_streams,omitempty" yaml:"max_concurrent_streams"` + MaxDecoderHeaderTableSize uint32 `json:"max_decoder_header_table_size,omitempty" yaml:"max_decoder_header_table_size"` + MaxEncoderHeaderTableSize uint32 `json:"max_encoder_header_table_size,omitempty" yaml:"max_encoder_header_table_size"` + MaxReadFrameSize uint32 `json:"max_read_frame_size,omitempty" yaml:"max_read_frame_size"` +} + // GRPC represents the configuration for gPRC. type GRPC struct { + Keepalive *GRPCKeepalive `json:"keepalive,omitempty" yaml:"keepalive"` + ConnectionTimeout string `json:"connection_timeout,omitempty" yaml:"connection_timeout"` + Interceptors []string `json:"interceptors,omitempty" yaml:"interceptors"` + EnableReflection bool `json:"enable_reflection,omitempty" yaml:"enable_reflection"` + EnableAdmin bool `json:"enable_admin,omitempty" yaml:"enable_admin"` BidirectionalStreamConcurrency int `json:"bidirectional_stream_concurrency,omitempty" yaml:"bidirectional_stream_concurrency"` MaxReceiveMessageSize int `json:"max_receive_message_size,omitempty" yaml:"max_receive_message_size"` MaxSendMessageSize int `json:"max_send_message_size,omitempty" yaml:"max_send_message_size"` InitialWindowSize int `json:"initial_window_size,omitempty" yaml:"initial_window_size"` InitialConnWindowSize int `json:"initial_conn_window_size,omitempty" yaml:"initial_conn_window_size"` - Keepalive *GRPCKeepalive `json:"keepalive,omitempty" yaml:"keepalive"` WriteBufferSize int `json:"write_buffer_size,omitempty" yaml:"write_buffer_size"` ReadBufferSize int `json:"read_buffer_size,omitempty" yaml:"read_buffer_size"` - ConnectionTimeout string `json:"connection_timeout,omitempty" yaml:"connection_timeout"` MaxHeaderListSize int `json:"max_header_list_size,omitempty" yaml:"max_header_list_size"` HeaderTableSize int `json:"header_table_size,omitempty" yaml:"header_table_size"` - Interceptors []string `json:"interceptors,omitempty" yaml:"interceptors"` - EnableReflection bool `json:"enable_reflection,omitempty" yaml:"enable_reflection"` - EnableAdmin bool `json:"enable_admin,omitempty" yaml:"enable_admin"` } // GRPCKeepalive represents the configuration for gRPC keep-alive. @@ -257,6 +271,19 @@ func (s *Server) Opts() []server.Option { server.WithIdleTimeout(s.HTTP.IdleTimeout), server.WithShutdownDuration(s.HTTP.ShutdownDuration), ) + if s.HTTP.HTTP2 != nil && s.HTTP.HTTP2.Enabled { + opts = append(opts, + server.WithHTTP2Enabled(s.HTTP.HTTP2.Enabled), + server.WithHandlerLimit(s.HTTP.HTTP2.HandlerLimit), + server.WithPermitProhibitedCipherSuites(s.HTTP.HTTP2.PermitProhibitedCipherSuites), + server.WithMaxConcurrentStreams(s.HTTP.HTTP2.MaxConcurrentStreams), + server.WithMaxUploadBufferPerConnection(s.HTTP.HTTP2.MaxUploadBufferPerConnection), + server.WithMaxUploadBufferPerStream(s.HTTP.HTTP2.MaxUploadBufferPerStream), + server.WithMaxDecoderHeaderTableSize(s.HTTP.HTTP2.MaxDecoderHeaderTableSize), + server.WithMaxEncoderHeaderTableSize(s.HTTP.HTTP2.MaxEncoderHeaderTableSize), + server.WithMaxReadFrameSize(s.HTTP.HTTP2.MaxReadFrameSize), + ) + } } case server.GRPC: opts = append(opts, diff --git a/internal/net/http/client/client.go b/internal/net/http/client/client.go index dff6e79bae..39f113b265 100644 --- a/internal/net/http/client/client.go +++ b/internal/net/http/client/client.go @@ -49,8 +49,9 @@ func New(opts ...Option) (*http.Client, error) { } } - if err := http2.ConfigureTransport(tr.Transport); err != nil { - return nil, err + err := http2.ConfigureTransport(tr.Transport) + if err != nil { + log.Warnf("Transport is already configured for HTTP2 error: %v", err) } return &http.Client{ diff --git a/internal/net/http/client/client_test.go b/internal/net/http/client/client_test.go index 9b621f9f5a..62176e3b9d 100644 --- a/internal/net/http/client/client_test.go +++ b/internal/net/http/client/client_test.go @@ -134,12 +134,11 @@ func TestNew(t *testing.T) { want: want{ want: &http.Client{ Transport: htr.NewExpBackoff( - htr.WithRoundTripper(func() *http.Transport { - t := new(http.Transport) - t.Proxy = http.ProxyFromEnvironment - _ = http2.ConfigureTransport(t) - - return t + htr.WithRoundTripper(func() http.RoundTripper { + tr := new(http.Transport) + tr.Proxy = http.ProxyFromEnvironment + _ = http2.ConfigureTransport(tr) + return tr }()), htr.WithBackoff( backoff.New(), @@ -160,12 +159,11 @@ func TestNew(t *testing.T) { want: want{ want: &http.Client{ Transport: htr.NewExpBackoff( - htr.WithRoundTripper(func() *http.Transport { - t := new(http.Transport) - t.Proxy = http.ProxyFromEnvironment - _ = http2.ConfigureTransport(t) - - return t + htr.WithRoundTripper(func() http.RoundTripper { + tr := new(http.Transport) + tr.Proxy = http.ProxyFromEnvironment + _ = http2.ConfigureTransport(tr) + return tr }()), htr.WithBackoff( backoff.New(), diff --git a/internal/servers/server/option.go b/internal/servers/server/option.go index 2bf128223c..38190527a5 100644 --- a/internal/servers/server/option.go +++ b/internal/servers/server/option.go @@ -37,6 +37,7 @@ import ( "github.com/vdaas/vald/internal/strings" "github.com/vdaas/vald/internal/sync/errgroup" "github.com/vdaas/vald/internal/timeutil" + "golang.org/x/net/http2" ) type Option func(*server) error @@ -275,6 +276,107 @@ func WithHTTPServer(srv *http.Server) Option { } } +func WithHTTP2Enabled(enabled bool) Option { + return func(s *server) error { + s.http.enableH2 = enabled + return nil + } +} + +func WithHandlerLimit(size int) Option { + return func(s *server) error { + if size != 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxHandlers = size + } + return nil + } +} + +func WithPermitProhibitedCipherSuites(perm bool) Option { + return func(s *server) error { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.PermitProhibitedCipherSuites = perm + return nil + } +} + +func WithMaxUploadBufferPerConnection(size int32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxUploadBufferPerConnection = size + } + return nil + } +} + +func WithMaxUploadBufferPerStream(size int32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxUploadBufferPerStream = size + } + return nil + } +} + +func WithMaxConcurrentStreams(size uint32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxConcurrentStreams = size + } + return nil + } +} + +func WithMaxDecoderHeaderTableSize(size uint32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxDecoderHeaderTableSize = size + } + return nil + } +} + +func WithMaxEncoderHeaderTableSize(size uint32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxEncoderHeaderTableSize = size + } + return nil + } +} + +func WithMaxReadFrameSize(size uint32) Option { + return func(s *server) error { + if size > 0 { + if s.http.h2srv == nil { + s.http.h2srv = new(http2.Server) + } + s.http.h2srv.MaxReadFrameSize = size + } + return nil + } +} + func WithGRPCServer(srv *grpc.Server) Option { return func(s *server) error { if srv != nil { diff --git a/internal/servers/server/server.go b/internal/servers/server/server.go index a642f83267..063e6f41eb 100644 --- a/internal/servers/server/server.go +++ b/internal/servers/server/server.go @@ -40,6 +40,7 @@ import ( "github.com/vdaas/vald/internal/strings" "github.com/vdaas/vald/internal/sync" "github.com/vdaas/vald/internal/sync/errgroup" + "golang.org/x/net/http2" ) type Server interface { @@ -88,9 +89,11 @@ type server struct { wg sync.WaitGroup eg errgroup.Group http struct { // REST API - srv *http.Server - h http.Handler - starter func(net.Listener) error + srv *http.Server + h http.Handler + h2srv *http2.Server + enableH2 bool + starter func(net.Listener) error } grpc struct { // gRPC API srv *grpc.Server @@ -178,16 +181,29 @@ func New(opts ...Option) (Server, error) { srv.http.srv.Handler = srv.http.h } srv.http.starter = srv.http.srv.Serve + srv.http.srv.SetKeepAlivesEnabled(true) if srv.tcfg != nil && (len(srv.tcfg.Certificates) != 0 || srv.tcfg.GetCertificate != nil || srv.tcfg.GetConfigForClient != nil) { srv.http.srv.TLSConfig = srv.tcfg - srv.http.starter = func(l net.Listener) error { - return srv.http.srv.ServeTLS(l, "", "") + srv.http.starter = func(l net.Listener) (err error) { + if srv.http.enableH2 { + if srv.http.h2srv != nil { + srv.http.h2srv.IdleTimeout = srv.it + } + err = http2.ConfigureServer(srv.http.srv, srv.http.h2srv) + if err != nil { + return err + } + } + err = srv.http.srv.ServeTLS(l, "", "") + if err != nil { + return err + } + return nil } } - srv.http.srv.SetKeepAlivesEnabled(true) case GRPC: if srv.grpc.regs == nil { return nil, errors.ErrInvalidAPIConfig diff --git a/internal/servers/server/server_test.go b/internal/servers/server/server_test.go index be0177c96b..b8accb317b 100644 --- a/internal/servers/server/server_test.go +++ b/internal/servers/server/server_test.go @@ -27,6 +27,7 @@ import ( "github.com/vdaas/vald/internal/net" "github.com/vdaas/vald/internal/net/grpc" "github.com/vdaas/vald/internal/sync/errgroup" + "golang.org/x/net/http2" ) func TestServerMode_String(t *testing.T) { @@ -502,9 +503,11 @@ func Test_server_ListenAndServe(t *testing.T) { mode: test.field.mode, eg: test.field.eg, http: struct { - srv *http.Server - h http.Handler - starter func(net.Listener) error + srv *http.Server + h http.Handler + h2srv *http2.Server + enableH2 bool + starter func(net.Listener) error }{ starter: test.field.httpSrvStarter, }, @@ -661,9 +664,11 @@ func Test_server_Shutdown(t *testing.T) { mode: test.field.mode, eg: test.field.eg, http: struct { - srv *http.Server - h http.Handler - starter func(net.Listener) error + srv *http.Server + h http.Handler + h2srv *http2.Server + enableH2 bool + starter func(net.Listener) error }{ srv: test.field.httpSrv, }, diff --git a/internal/test/data/hdf5/hdf5.go b/internal/test/data/hdf5/hdf5.go index 5275a57e10..4582fb82ac 100644 --- a/internal/test/data/hdf5/hdf5.go +++ b/internal/test/data/hdf5/hdf5.go @@ -209,7 +209,10 @@ func downloadFile(url, path string) error { if len(path) == 0 { return errors.NewErrInvalidOption("no path is specified", path) } - cli, err := client.New() + cli, err := client.New( + client.WithForceAttemptHTTP2(true), + client.WithEnableKeepalives(true), + ) if err != nil { return err } diff --git a/k8s/agent/clusterrole.yaml b/k8s/agent/clusterrole.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/clusterrolebinding.yaml b/k8s/agent/clusterrolebinding.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/daemonset.yaml b/k8s/agent/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/deployment.yaml b/k8s/agent/deployment.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/faiss/configmap.yaml b/k8s/agent/faiss/configmap.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/hpa.yaml b/k8s/agent/hpa.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/networkpolicy.yaml b/k8s/agent/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/ngt/configmap.yaml b/k8s/agent/ngt/configmap.yaml index 641e8f585b..6db7cd3992 100644 --- a/k8s/agent/ngt/configmap.yaml +++ b/k8s/agent/ngt/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/agent/serviceaccount.yaml b/k8s/agent/serviceaccount.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/sidecar/configmap.yaml b/k8s/agent/sidecar/configmap.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/agent/sidecar/svc.yaml b/k8s/agent/sidecar/svc.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/discoverer/configmap.yaml b/k8s/discoverer/configmap.yaml index 739aa30009..cae17fc2b0 100644 --- a/k8s/discoverer/configmap.yaml +++ b/k8s/discoverer/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/discoverer/daemonset.yaml b/k8s/discoverer/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/discoverer/deployment.yaml b/k8s/discoverer/deployment.yaml index 7dc8dd57af..d14a6b9bdc 100644 --- a/k8s/discoverer/deployment.yaml +++ b/k8s/discoverer/deployment.yaml @@ -46,7 +46,7 @@ spec: app.kubernetes.io/instance: release-name app.kubernetes.io/component: discoverer annotations: - checksum/configmap: ca500bded47c16f972f9e30b421744d60e5679f8d9eeabe8d74befbabcdc2275 + checksum/configmap: 907c35fdcb537ed8572fe186653ff813cb0f8af4428efaa9cd40ad84b1311101 profefe.com/enable: "true" profefe.com/port: "6060" profefe.com/service: vald-discoverer diff --git a/k8s/discoverer/hpa.yaml b/k8s/discoverer/hpa.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/discoverer/networkpolicy.yaml b/k8s/discoverer/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/configmap.yaml b/k8s/gateway/gateway/filter/configmap.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/daemonset.yaml b/k8s/gateway/gateway/filter/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/deployment.yaml b/k8s/gateway/gateway/filter/deployment.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/hpa.yaml b/k8s/gateway/gateway/filter/hpa.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/networkpolicy.yaml b/k8s/gateway/gateway/filter/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/pdb.yaml b/k8s/gateway/gateway/filter/pdb.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/priorityclass.yaml b/k8s/gateway/gateway/filter/priorityclass.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/filter/svc.yaml b/k8s/gateway/gateway/filter/svc.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/lb/configmap.yaml b/k8s/gateway/gateway/lb/configmap.yaml index 75d6438a18..59e26b9a09 100644 --- a/k8s/gateway/gateway/lb/configmap.yaml +++ b/k8s/gateway/gateway/lb/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/gateway/gateway/lb/daemonset.yaml b/k8s/gateway/gateway/lb/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/lb/deployment.yaml b/k8s/gateway/gateway/lb/deployment.yaml index 10b83c3039..a6217c029e 100644 --- a/k8s/gateway/gateway/lb/deployment.yaml +++ b/k8s/gateway/gateway/lb/deployment.yaml @@ -45,7 +45,7 @@ spec: app.kubernetes.io/instance: release-name app.kubernetes.io/component: gateway-lb annotations: - checksum/configmap: bb098f9de38f18f2d8686a2168a1466c22de1801fff463de384a3b73252c69cb + checksum/configmap: 92b60d09b5e957c16d7a665138f8ddd8765c38d47df0740b05e55871ddd20cf4 profefe.com/enable: "true" profefe.com/port: "6060" profefe.com/service: vald-lb-gateway diff --git a/k8s/gateway/gateway/lb/networkpolicy.yaml b/k8s/gateway/gateway/lb/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/clusterrole.yaml b/k8s/gateway/gateway/mirror/clusterrole.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/clusterrolebinding.yaml b/k8s/gateway/gateway/mirror/clusterrolebinding.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/configmap.yaml b/k8s/gateway/gateway/mirror/configmap.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/daemonset.yaml b/k8s/gateway/gateway/mirror/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/deployment.yaml b/k8s/gateway/gateway/mirror/deployment.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/hpa.yaml b/k8s/gateway/gateway/mirror/hpa.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/networkpolicy.yaml b/k8s/gateway/gateway/mirror/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/pdb.yaml b/k8s/gateway/gateway/mirror/pdb.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/priorityclass.yaml b/k8s/gateway/gateway/mirror/priorityclass.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/serviceaccount.yaml b/k8s/gateway/gateway/mirror/serviceaccount.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/gateway/gateway/mirror/svc.yaml b/k8s/gateway/gateway/mirror/svc.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/correction/configmap.yaml b/k8s/index/job/correction/configmap.yaml index 0d551fdb6e..84678c2df4 100644 --- a/k8s/index/job/correction/configmap.yaml +++ b/k8s/index/job/correction/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/index/job/correction/networkpolicy.yaml b/k8s/index/job/correction/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/creation/configmap.yaml b/k8s/index/job/creation/configmap.yaml index a4ac6e9470..629166095b 100644 --- a/k8s/index/job/creation/configmap.yaml +++ b/k8s/index/job/creation/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/index/job/creation/networkpolicy.yaml b/k8s/index/job/creation/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/readreplica/rotate/clusterrole.yaml b/k8s/index/job/readreplica/rotate/clusterrole.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/readreplica/rotate/clusterrolebinding.yaml b/k8s/index/job/readreplica/rotate/clusterrolebinding.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/readreplica/rotate/configmap.yaml b/k8s/index/job/readreplica/rotate/configmap.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/readreplica/rotate/networkpolicy.yaml b/k8s/index/job/readreplica/rotate/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/readreplica/rotate/serviceaccount.yaml b/k8s/index/job/readreplica/rotate/serviceaccount.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/job/save/configmap.yaml b/k8s/index/job/save/configmap.yaml index 487fcf56b1..aeb901a76b 100644 --- a/k8s/index/job/save/configmap.yaml +++ b/k8s/index/job/save/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/index/job/save/networkpolicy.yaml b/k8s/index/job/save/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/index/operator/configmap.yaml b/k8s/index/operator/configmap.yaml index 1fbefc2d80..2643183955 100644 --- a/k8s/index/operator/configmap.yaml +++ b/k8s/index/operator/configmap.yaml @@ -25,4 +25,4 @@ metadata: app.kubernetes.io/version: v1.7.13 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_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_header_list_size: 0\n max_receive_message_size: 0\n max_send_message_size: 0\n read_buffer_size: 0\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 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 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 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.13\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.13\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.13\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.13\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.13\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.13\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.13\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.13\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 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 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.13\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.13\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.13\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.13\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 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 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.13\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.13\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.13\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.13\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 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 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_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_header_list_size: 0\n max_receive_message_size: 0\n max_send_message_size: 0\n read_buffer_size: 0\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.12\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.12\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.12\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.12\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.12\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.12\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.12\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.12\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 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 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.12\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.12\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.12\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.12\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 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 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.12\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.12\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.12\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.12\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 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 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" diff --git a/k8s/index/operator/deployment.yaml b/k8s/index/operator/deployment.yaml index 97226d5b64..d6c02d3ac2 100644 --- a/k8s/index/operator/deployment.yaml +++ b/k8s/index/operator/deployment.yaml @@ -46,7 +46,7 @@ spec: app.kubernetes.io/instance: release-name app.kubernetes.io/component: operator annotations: - checksum/configmap: 12eb34383858d657de2bdf7bd6c8594ae7ea6e5ee3add454a82cef63aba3cf2e + checksum/configmap: eae6b3eac702f445f9b5a0d1495af9917479303b103f986c10b5b3db9d749086 pyroscope.io/scrape: "true" pyroscope.io/application-name: vald-index-operator pyroscope.io/profile-cpu-enabled: "true" diff --git a/k8s/manager/index/configmap.yaml b/k8s/manager/index/configmap.yaml index f01677a6b7..459f10e036 100644 --- a/k8s/manager/index/configmap.yaml +++ b/k8s/manager/index/configmap.yaml @@ -82,6 +82,16 @@ data: 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: "" @@ -107,6 +117,16 @@ data: 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: "" @@ -133,6 +153,16 @@ data: 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 diff --git a/k8s/manager/index/daemonset.yaml b/k8s/manager/index/daemonset.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/manager/index/deployment.yaml b/k8s/manager/index/deployment.yaml index c1a55236f1..1caef441d3 100644 --- a/k8s/manager/index/deployment.yaml +++ b/k8s/manager/index/deployment.yaml @@ -46,7 +46,7 @@ spec: app.kubernetes.io/instance: release-name app.kubernetes.io/component: manager-index annotations: - checksum/configmap: 8f46024fd15030dbea48c80bcd8becf43a805ac2677efffc8adc4b9306fc62ca + checksum/configmap: 749ebf7ce611dafee119650baad5ea66a08b3b5df9858d4bce9a94ef86851e9c profefe.com/enable: "true" profefe.com/port: "6060" profefe.com/service: vald-manager-index diff --git a/k8s/manager/index/networkpolicy.yaml b/k8s/manager/index/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/operator/helm/crds/valdrelease.yaml b/k8s/operator/helm/crds/valdrelease.yaml index 7d6d808199..14ddee3236 100644 --- a/k8s/operator/helm/crds/valdrelease.yaml +++ b/k8s/operator/helm/crds/valdrelease.yaml @@ -582,6 +582,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -678,6 +699,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -786,6 +828,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -975,6 +1038,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1459,6 +1543,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1555,6 +1660,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1663,6 +1789,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -1852,6 +1999,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2310,6 +2478,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2406,6 +2595,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2514,6 +2724,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -2703,6 +2934,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3177,6 +3429,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3273,6 +3546,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3381,6 +3675,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -3570,6 +3885,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4548,6 +4884,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4644,6 +5001,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4752,6 +5130,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -4941,6 +5340,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -5892,6 +6312,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -5988,6 +6429,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6096,6 +6558,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6285,6 +6768,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -6956,6 +7460,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7052,6 +7577,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7160,6 +7706,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -7349,6 +7916,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8204,6 +8792,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8300,6 +8909,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8408,6 +9038,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -8597,6 +9248,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9186,6 +9858,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9282,6 +9975,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9390,6 +10104,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -9579,6 +10314,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10430,6 +11186,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10526,6 +11303,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10634,6 +11432,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -10823,6 +11642,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11100,6 +11940,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11196,6 +12057,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11304,6 +12186,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -11493,6 +12396,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12104,6 +13028,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12200,6 +13145,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12308,6 +13274,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12497,6 +13484,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12630,6 +13638,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12726,6 +13755,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -12834,6 +13884,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: @@ -13023,6 +14094,27 @@ spec: properties: handler_timeout: type: string + http2: + type: object + properties: + enabled: + type: boolean + handler_limit: + type: integer + max_concurrent_streams: + type: integer + max_decoder_header_table_size: + type: integer + max_encoder_header_table_size: + type: integer + max_read_frame_size: + type: integer + max_upload_buffer_per_connection: + type: integer + max_upload_buffer_per_stream: + type: integer + permit_prohibited_cipher_suites: + type: boolean idle_timeout: type: string read_header_timeout: diff --git a/k8s/readreplica/deployment.yaml b/k8s/readreplica/deployment.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/readreplica/hpa.yaml b/k8s/readreplica/hpa.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/readreplica/networkpolicy.yaml b/k8s/readreplica/networkpolicy.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/readreplica/pvc.yaml b/k8s/readreplica/pvc.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/readreplica/snapshot.yaml b/k8s/readreplica/snapshot.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/k8s/readreplica/svc.yaml b/k8s/readreplica/svc.yaml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/core.v1.rs b/rust/libs/proto/src/core.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/discoverer.v1.rs b/rust/libs/proto/src/discoverer.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/filter.egress.v1.rs b/rust/libs/proto/src/filter.egress.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/filter.ingress.v1.rs b/rust/libs/proto/src/filter.ingress.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/mirror.v1.rs b/rust/libs/proto/src/mirror.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/sidecar.v1.rs b/rust/libs/proto/src/sidecar.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/rust/libs/proto/src/vald.v1.rs b/rust/libs/proto/src/vald.v1.rs deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tests/chaos/chart/templates/NOTES.txt b/tests/chaos/chart/templates/NOTES.txt deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/versions/GO_VERSION b/versions/GO_VERSION index da9594fd66..013173af5e 100644 --- a/versions/GO_VERSION +++ b/versions/GO_VERSION @@ -1 +1 @@ -1.22.5 +1.22.6 diff --git a/versions/actions/ACTIONS_UPLOAD_ARTIFACT b/versions/actions/ACTIONS_UPLOAD_ARTIFACT index e198586e42..43270543f7 100644 --- a/versions/actions/ACTIONS_UPLOAD_ARTIFACT +++ b/versions/actions/ACTIONS_UPLOAD_ARTIFACT @@ -1 +1 @@ -4.3.5 +4.3.6