☸️ Как быстро проверить файлы конфигурации Kubernetes |

☸️ Как быстро проверить файлы конфигурации Kubernetes

Мануал

Если вы работали с Kubernetes, вы знаете, насколько это сложно.

Мало того, что здесь много движущихся частей, ваши файлы конфигурации подов и контейнеров могут стать довольно сложными.

Когда эти манифесты увеличиваются в размерах, вы легко можете упустить вариант конфигурации, который может оказаться дорогостоящим.

Подумайте об этом со следующей стороны: плохо настроенный манифест Kubernetes может привести к проблемам с безопасностью или даже может стоить вам денег, особенно когда вы развертываете свои поды в облачном сервисе, таком как AWS или Google Cloud, где вы платите за используемые сервисы.

Неправильно сконфигурированный под может использовать слишком много ресурсов – вот вам и ваш ежемесячный бюджет.

Почему бы не потратить время на линтинг файлов конфигурации?

Очевидный ответ – потому что это может занять много времени.

Однако есть способ попроще.

 

С помощью инструмента kube-score вы можете протестировать свои файлы YAML на такие вещи, как:

  • Ingress нацеленный на сервис
  • У CronJobs настроен deadline
  • У всех подов есть ограничения на ресурсы (resource limits ) и requests set
  • Все подв имеют те же requests set, что и ограничения на ресурсы.
  • Все поды имеют одинаковые запросы ЦП в соответствии с установленными ограничениями.
  • Используется явный не latest тег
  • Для pullPolicy задано значение Always.
  • Все StatefulSet нацелены на PDB

Инструмент невероятно прост в использовании, и его результаты помогут вам упростить ваши файлы YAML, чтобы не было дырок безопасности или искаженных ресурсов.

Полный список проверок можно найти здесь.

Как же пользоваться этим удобным инструментом?

Что нам понадобится

  • Работающий Kubernetes
  • Пользователь с привилегиями sudo

Как установить kube-score

Это довольно просто, потому что kube-score представляет собой простой бинарник.
Я буду демонстрировать на Ubuntu Server 20.04.
Чтобы установить kube-score на эту платформу, авторизуйтесь на сервере и скачайте необходимый файл командой:
wget https://github.com/zegl/kube-score/releases/download/v1.10.1/kube-score_1.10.1_linux_amd64.tar.gz
Теперь вы должны увидеть файл kube-score в текущем рабочем каталоге.
Давайте переместим его с помощью команды:
sudo mv kube-score /usr/local/bin
Вы готовы оценивать свои манифесты.

Как использовать kube-score

Использовать kube-score невероятно просто.
Допустим, у вас есть файл components.yaml, который вы хотите проверить.
Перейдите в каталог, в котором находится файл components.yaml, и введите команду:
kube-score score components.yaml
На этом этапе вы можете явно увидеть, какие конфигурации требуют внимания в вашем файле YAML.
Убедитесь, что вы решили эти проблемы перед развертыванием.
Если у вас есть запущенные контейнеры или поды, вы можете запустить kube-score проверять их с помощью команды:
kubectl api-resources --verbs=list --namespaced -o name | xargs -n1 -I{} bash -c "kubectl get {} --all-namespaces -oyaml && echo ---" | kube-score score -

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий