Установка Kyverno & Kyverno Policies
Kyvernokubectl
, git
и kustomize
. Интерфейс командной строки Kyverno можно использовать для тестирования политик и проверки ресурсов как части конвейера CI/CD.
Kyverno policies
Отправлять оповещения из Kyverno в другие системы можно с помощью расширения Policy reporter.
Совет
Чтобы выявить уязвимости в работе кластера Kubernetes, используйте приложение Chaos Mesh. Нахождение уязвимостей поможет настроить политики безопасности.
Перед началом работы
Убедитесь, что группы безопасности для кластера Managed Service for Kubernetes и его групп узлов настроены корректно. Если отсутствует какое-либо из правил — добавьте его.
Важно
От настройки групп безопасности зависит работоспособность и доступность кластера, а также запущенных в нем сервисов и приложений.
Установка с помощью Yandex Cloud Marketplace
- Перейдите на страницу каталога
и выберите сервис Managed Service for Kubernetes. - Нажмите на имя нужного кластера Managed Service for Kubernetes и выберите вкладку
Marketplace. - В разделе Доступные для установки приложения выберите Kyverno & Kyverno Policies и нажмите кнопку Перейти к установке.
- Задайте настройки приложения:
- Пространство имен — выберите пространство имен для Kyverno или создайте новое. В нем не должны находиться какие-либо приложения или объекты, иначе Kyverno будет работать некорректно.
- Название приложения — укажите название приложения.
- Включение Kyverno Policies — выберите, чтобы установить расширение Kyverno Policies.
- Pod Security Standard profile — выберите профиль Pod Security Standard
:baseline
— минимально ограничительная политика, которая предотвращает известные превышения привилегий.restricted
— политика с жесткими ограничениями, соответствующая современным методам защиты подов.privileged
— политика без ограничений, предоставляющая максимально широкий уровень разрешений.
- Validation failure action — выберите способ реагирования на срабатывания Kyverno:
audit
— режим оповещения.enforce
— режим блокировки.
- Нажмите кнопку Установить.
- Дождитесь перехода приложения в статус
Deployed
.
Установка с помощью Helm-чарта
-
Установите менеджер пакетов Helm
версии не ниже 3.8.0. -
Установите kubectl
и настройте его на работу с созданным кластером. -
Для установки Helm-чарта
с Kyverno выполните команду:helm pull oci://cr.yandex/yc-marketplace/multi-kyverno \ --version 1.0.0 \ --untar && \ helm install \ --namespace <пространство_имен> \ --create-namespace \ multi-kyverno ./multi-kyverno/
Выберите пространство имен, в котором нет каких-либо приложений или объектов, иначе Kyverno будет работать некорректно.
Примечание
Если вы используете версию Helm ниже 3.8.0, добавьте в начало команды строку
export HELM_EXPERIMENTAL_OCI=1 && \
, чтобы включить поддержку Open Container Initiative (OCI) в клиенте Helm.
Версии приложения
Для каждой версии Kubernetes поддерживается определенная версия Kyverno. Нужная версия Kyverno устанавливается по умолчанию в зависимости от вашей версии Kubernetes.
Версия Kubernetes | Версия Kyverno | Документация |
---|---|---|
До 1.21 включительно | 1.6 | Документация Kyverno 1.6 |
1.22 | 1.7 | Документация Kyverno 1.7 |
1.23 | 1.8 | Документация Kyverno 1.8 |
1.24 и выше | 1.9 | Документация Kyverno 1.9 |
Удаление приложения
Если приложение Kyverno вам больше не нужно, удалите его:
- Перейдите на страницу каталога
и выберите сервис Managed Service for Kubernetes. - Нажмите на имя нужного кластера Kubernetes и выберите вкладку
Marketplace. - В разделе Установленные приложения, в строке приложения Kyverno & Kyverno Policies, сначала нажмите кнопку , затем — Удалить.
- Подключитесь к кластеру с помощью kubectl.
- Очистите конфигурации веб-хуков приложения
, иначе кластер будет работать некорректно.
-
Подключитесь к кластеру с помощью kubectl.
-
Удалите приложение:
helm uninstall --namespace <пространство_имен> multi-kyverno ./multi-kyverno/
-
Очистите конфигурации веб-хуков приложения
, иначе кластер будет работать некорректно.