
kyverno v1.19.1-rc.1
Обеспечьте безопасность и соответствие требованиям в кластерах Kubernetes с помощью контроллеров допуска, мутации ресурсов, фонового сканирования и проверки подписей образов контейнеров.
Kyverno 
Управление политиками Cloud Native 🎉
📑 Содержание
- О Kyverno
- Нецели
- Документация
- Демонстрации и руководства
- Популярные сценарии использования
- Изучите библиотеку политик
- Получение помощи
- Участие в разработке
- Программный состав продукта
- Участники
- Лицензия
О Kyverno
Kyverno — это нативный для Kubernetes движок политик, разработанный для команд платформенной инженерии. Он обеспечивает безопасность, соответствие требованиям, автоматизацию и управление через политики как код. Kyverno может:
- Проверять, изменять, генерировать и очищать ресурсы с помощью механизмов допуска Kubernetes и фоновых сканирований.
- Проверять подписи образов контейнеров для безопасности цепочки поставок.
- Работать с инструментами, которые вы уже используете — такими как
kubectl,kustomizeи Git.
Нецели
Kyverno способен влиять только на политики, используемые Kubernetes, и не предназначен для устранения недостатков безопасности Kubernetes, присущих его архитектуре. Например, он не может защитить от уязвимостей в API-сервере Kubernetes (таких как десериализация YAML «Billion Laughs» или некорректная реализация Admission Controller) или в нижележащей инфраструктуре, а применение политик Kyverno может быть обойдено, если сам Kubernetes имеет уязвимость безопасности. Kyverno не обеспечивает соблюдение требований безопасности, которые не были явно определены — он применяет только те политики, которые определяют пользователи, и, как и любой другой продукт безопасности, требует активного сопровождения.
Kyverno не заменяет, а работает совместно с Kubernetes RBAC: RBAC управляет доступом, а Kyverno обеспечивает соблюдение политик. Предполагается, что администраторы кластера используют RBAC для управления авторизацией пользователей и сервисных учётных записей, а затем применяют Kyverno для дополнительных проверок, которые RBAC выполнить не может.
Kyverno также не заменяет встроенные механизмы управления политиками Kubernetes, такие как ValidatingAdmissionPolicies и MutatingAdmissionPolicies, а дополняет эти нативные механизмы дополнительными возможностями, такими как комплексная отчётность, управление исключениями и периодическое фоновое сканирование.
Некоторые возможности, выходящие за рамки основного движка, реализуются сопутствующими проектами в организации Kyverno: инструменты сквозного тестирования (Chainsaw), отчётность о нарушениях политик и UI (Policy Reporter), оценка политик для JSON-полезных нагрузок, не относящихся к Kubernetes (Kyverno JSON), и политики авторизации для сервисных сеток (Kyverno Envoy Plugin). Они поддерживаются как отдельные проекты с собственными циклами выпуска.
📙 Документация
Документация по установке и справочная документация Kyverno доступны на kyverno.io.
🎥 Демонстрации и руководства
🎯 Популярные сценарии использования
Kyverno помогает платформенным командам внедрять лучшие практики и стандарты безопасности. Некоторые распространённые сценарии использования включают:
1. Безопасность и соответствие требованиям
- Применение стандартов безопасности Pod (PSS)
- Требование определённых контекстов безопасности
- Проверка источников и подписей образов контейнеров
- Применение политик CIS Benchmark
2. Операционное совершенство
- Автоматическая маркировка рабочих нагрузок
- Применение соглашений об именовании
- Генерация конфигураций по умолчанию (например, NetworkPolicies)
- Проверка манифестов YAML и Helm
3. Оптимизация затрат
- Применение квот и лимитов ресурсов
- Требование меток распределения затрат
- Проверка типов инстансов
- Очистка неиспользуемых ресурсов
4. Ограничения для разработчиков
- Требование проб readiness/liveness
- Применение политик ingress/egress
- Проверка версий образов контейнеров
- Автоматическое внедрение config maps или secrets
📚 Изучите библиотеку политик
Откройте для себя сотни готовых к использованию в production политик Kyverno для безопасности, операций, контроля затрат и поддержки разработчиков.
👉 Просмотреть библиотеку политик
🙋 Получение помощи
Мы здесь, чтобы помочь:
- 🐞 Создайте GitHub Issue
- 💬 Присоединяйтесь к каналу Kyverno в Slack
- 📅 Посещайте встречи сообщества
- ⭐️ Поставьте звезду этому репозиторию, чтобы быть в курсе обновлений
➕ Участие в разработке
Благодарим вас за интерес к участию в разработке Kyverno!
