Как запустить kube-bench в кластере?
-
Зайдите внутрь пода Deckhouse:
kubectl -n d8-system exec -ti svc/deckhouse-leader -c deckhouse -- bash
-
Выберите, на каком узле запустить kube-bench.
-
Запуск на случайном узле:
curl -s https://raw.githubusercontent.com/aquasecurity/kube-bench/main/job.yaml | kubectl create -f -
-
Запуск на конкретном узле, например на control-plane:
curl -s https://raw.githubusercontent.com/aquasecurity/kube-bench/main/job.yaml | kubectl apply -f - --dry-run=client -o json | jq '.spec.template.spec.tolerations=[{"operator": "Exists"}] | .spec.template.spec.nodeSelector={"node-role.kubernetes.io/control-plane": ""}' | kubectl create -f -
-
-
Проверьте результат выполнения:
kubectl logs job.batch/kube-bench
В Deckhouse установлен срок хранения логов — 7 дней. Однако, в соответствии с требованиями безопасности указанными в kube-bench, логи должны храниться не менее 30 дней. Используйте отдельное хранилище для логов, если вам необходимо хранить логи более 7 дней.
Как собрать информацию для отладки?
Мы всегда рады помочь пользователям с расследованием сложных проблем. Пожалуйста, выполните следующие шаги, чтобы мы смогли вам помочь:
-
Выполните следующую команду, чтобы собрать необходимые данные:
kubectl -n d8-system exec svc/deckhouse-leader -c deckhouse \ -- deckhouse-controller collect-debug-info \ > deckhouse-debug-$(date +"%Y_%m_%d").tar.gz
-
Отправьте получившийся архив команде Deckhouse для дальнейшего расследования.
Данные, которые будут собраны:
Категория | Собираемые данные |
---|---|
Deckhouse |
|
Объекты кластера |
Все объекты следующих ресурсов:
|
Модули и их состояния |
|
Логи и манифесты контроллеров |
Логи следующих компонентов:
|
Мониторинг и алерты |
|
Сеть |
|
Как отлаживать проблемы в подах с помощью ephemeral containers?
Выполните следующую команду:
kubectl -n <namespace_name> debug -it <pod_name> --image=ubuntu <container_name>
Подробнее можно почитать в официальной документации.
Как отлаживать проблемы на узлах с помощью ephemeral containers?
Выполните следующую команду:
kubectl debug node/mynode -it --image=ubuntu
Подробнее можно почитать в официальной документации.