Kubernetes Blog на русском
Подписаться
Kubernetes 1.30: Проверка политики допуска стала общедоступной
Версия Kubernetes 1.30 вводит ValidatingAdmissionPolicy, декларативную альтернативу валидации веб-хуков для приемников. Она предоставляет более компактный и прямолинейный способ определения политик контроля приемников. Чтобы перенести из веб-хуков, просто пересоздайте политики валидации как выражения с использованием CEL, декларативного языка для выражения условий.Версия Kubernetes 1.28 ввела Variable Composition, позволяющую переиспользовать под-выражения, и поддержку опциональной библиотеки CEL, которая упрощает работу с опциональными полями.Чтобы создать политику, определите matchConstraints, чтобы указать, когда должна быть применена политика, и validations, чтобы определить условия, которые должны быть выполнены. FailurePolicy определяет действие, которое необходимо предпринять, если валидация не прошла (Пропустить или Предупредить).Привяжите политику к пространству имен с помощью ValidatingAdmissionPolicyBinding. По умолчанию действия устанавливаются на "Пропустить", но могут быть установлены на "Предупредить" во время разработки и тестирования.Чтобы отслеживать политику, используйте метрики сервера API, такие как 95-й процентиль времени выполнения и частота оценки, которые могут быть запрошены с помощью языка запросов Prometheus.ValidatingAdmissionPolicies предлагают несколько преимуществ перед веб-хуками, включая уменьшение сложности кода, поддержку разработки с приоритетом политики и улучшение производительности.Бонусом является то, что вы можете использовать Variable Composition и CEL, чтобы улучшить читаемость и поддерживаемость ваших политик.Помните, что оценка политики останавливается после первого неудачного выражения, что отличается от оценки только предупреждений.Наконец, убедитесь, что у вас есть соответствующее наблюдение за тем, чтобы отслеживать производительность и эффективность ваших политик.