Как я могу изменить kube-apiserver audit-policy.yaml в OpenShift?

#kubernetes #openshift

#kubernetes #openshift

Вопрос:

В настоящее время я пытаюсь изменить политику аудита для модуля openshift-kube-apiserver, чтобы выводить больше информации, которая не настроена по умолчанию, в первую очередь получая RequestBody всех входящих запросов. На сервере kube-apiserver есть возможность изменить политику аудита здесь: https://kubernetes.io/docs/tasks/debug-application-cluster/audit /. Однако, похоже, я не могу найти эту опцию в OpenShift. Я подозреваю, что это может быть в openshift-kube-apiserver-operator, но зашел в тупик. Есть ли у кого-нибудь еще опыт решения этой проблемы и может ли он дать некоторые рекомендации? Заранее благодарю.

Ответ №1:

К сожалению, на данный момент OpenShift v4 не позволяет настраивать политику аудита. OpenShift v3 может настроить его. Но в качестве альтернативы, начиная с OCPv4.6, вы можете указать некоторые предопределенные политики вместо своих пользовательских. Более подробную информацию см. в разделе Настройка политики журнала аудита узла.

Контейнерная платформа OpenShift предоставляет следующие предопределенные профили политики аудита:

  • Default Регистрирует только метаданные для запросов на чтение и запись; не регистрирует тела запросов. Это политика по умолчанию.

  • WriteRequestBodies Помимо регистрации метаданных для всех запросов, регистрируются тела запросов для каждого запроса на запись на серверы API (создание, обновление, исправление).

  • AllRequestBodies В дополнение к регистрации метаданных для всех запросов, регистрируются тела запросов для каждого запроса на чтение и запись на серверы API (get, list, create, update, patch).

Вы можете изменить политику аудита следующим образом,

 $ oc edit apiserver cluster
apiVersion: config.openshift.io/v1
kind: APIServer
metadata:
...
spec:
  audit:
    profile: WriteRequestBodies
  

После вышеуказанных изменений все модули kube-apiserver будут перезапущены с помощью rolling update для вступления в силу.