配置 Webhook 超时时间
本页介绍了如何为 Config Connector 配置 webhook 超时设置。您可以在 Config Connector 1.110 及更高版本中配置这些 webhook。
为验证 Webhook 配置超时
您可以配置以下验证网络钩子:
deny-immutable-field-updates.cnrm.cloud.google.com
deny-unknown-fields.cnrm.cloud.google.com
iam-validation.cnrm.cloud.google.com
resource-validation.cnrm.cloud.google.com
abandon-on-uninstall.cnrm.cloud.google.com
例如,您可以创建并应用以下示例 YAML 文件,配置验证 webhook deny-immutable-field-updates.cnrm.cloud.google.com
和 deny-unknown-fields.cnrm.cloud.google.com
的超时设置。这些 webhook 是 validating-webhook.cnrm.cloud.google.com
验证 webhook 配置的一部分。
创建名为
configure-validating-webhook-timeout.yaml
的文件并将以下 YAML 复制到其中:apiVersion: customize.core.cnrm.cloud.google.com/v1beta1 kind: ValidatingWebhookConfigurationCustomization metadata: name: validating-webhook spec: webhooks: - name: deny-immutable-field-updates timeoutSeconds: 12 - name: deny-unknown-fields timeoutSeconds: 15
使用
kubectl apply
将 webhook 超时自定义设置应用到您的集群:kubectl apply -f configure-validating-webhook-timeout.yaml
通过运行以下命令验证配置是否成功:
kubectl get validatingwebhookconfigurationcustomizations validating-webhook -o jsonpath='{.status.healthy}{"\n"}'
它应显示
status.healthy
字段设置为true
。验证是否已将新的自定义超时设置应用到目标 webhook:
kubectl get validatingwebhookconfigurations validating-webhook.cnrm.cloud.google.com -o jsonpath='{.webhooks[?(@.name=="deny-immutable-field-updates.cnrm.cloud.google.com")].timeoutSeconds}{"\n"}'
kubectl get validatingwebhookconfigurations validating-webhook.cnrm.cloud.google.com -o jsonpath='{.webhooks[?(@.name=="deny-unknown-fields.cnrm.cloud.google.com")].timeoutSeconds}{"\n"}'
应用自定义设置可能需要几分钟时间。
为变更型网络钩子配置超时
您可以配置以下更改型 webhook:
container-annotation-handler.cnrm.cloud.google.com
generic-defaulter.cnrm.cloud.google.com
iam-defaulter.cnrm.cloud.google.com
management-conflict-annotation-defaulter.cnrm.cloud.google.com
例如,您可以通过创建并应用以下示例 YAML 文件来配置更改 webhook container-annotation-handler.cnrm.cloud.google.com
的超时设置。该 webhook 是 mutating-webhook.cnrm.cloud.google.com
变更网络钩子配置的一部分。
创建名为
configure-mutating-webhook-timeout.yaml
的文件并将以下 YAML 复制到其中:apiVersion: customize.core.cnrm.cloud.google.com/v1beta1 kind: MutatingWebhookConfigurationCustomization metadata: name: mutating-webhook spec: webhooks: - name: container-annotation-handler timeoutSeconds: 20
使用
kubectl apply
将 webhook 超时自定义设置应用到您的集群:kubectl apply -f configure-mutating-webhook-timeout.yaml
通过运行以下命令验证配置是否成功:
kubectl get mutatingwebhookconfigurationcustomizations mutating-webhook -o jsonpath='{.status.healthy}{"\n"}'
它应显示
status.healthy
字段设置为true
。验证是否已将新的自定义超时设置应用到目标 webhook:
kubectl get mutatingwebhookconfigurations mutating-webhook.cnrm.cloud.google.com -o jsonpath='{.webhooks[?(@.name=="container-annotation-handler.cnrm.cloud.google.com")].timeoutSeconds}{"\n"}'
应用自定义设置可能需要几分钟时间。