Почему моя веб-книга kubernetes вызывается только при создании, а не при обновлении?

#kubernetes

#kubernetes

Вопрос:

У меня есть работающий изменяющий доступ хук для kubernetes. Она вызывается при первом развертывании и приложении с использованием helm. Но она не вызывается при обновлении с помощью helm. На самом деле это будет вызвано, если я изменю номер версии для развертывания. Но если изменилось только содержимое, тогда он пропускает вызов перехвата.

Как я могу заставить его всегда вызывать перехват для любого развертывания?

Вот моя конфигурация hook:

     apiVersion: admissionregistration.k8s.io/v1beta1
    kind: MutatingWebhookConfiguration
    metadata:
    name: appcfg-mutator
    webhooks:
    - name: appcfg-mutator.devops.primerica.com
        clientConfig:
        service:
            name: appcfg-mutator
            namespace: appcfg-mutator
            path: "/"
        caBundle: {{ .Values.webhook.caBundle }}
        rules:
        - operations: ["*"]
            apiGroups: [""]
            apiVersions: ["v1","v1beta1","v1beta2"]
            resources: ["pod","deployments","namespaces","services"]
        failurePolicy: Fail
  

Я регистрирую все запросы, как только они поступают, и перед десериализацией тела http rq, чтобы я мог видеть, что оно не вызывается при каждом обновлении. Только при создании, удалении или при изменении поля версии в yaml.

Ответ №1:

Оказывается, у меня была опечатка в моей конфигурации mutator для «pod» вместо «pods». Кроме того, я неправильно понял и ожидал увидеть обновления «deployments», поскольку я фактически менял yaml типа «Deployment». Это просто «модули», которые мне были нужны.

Вот исправление:

 resources: ["pods","deployments","namespaces","services"]