Давайте будем честными здесь, начинать с Kubernetes, и следование лучшим практикам Kubernetes сложно. Скажем, в вашей компании есть несколько проектных команд, где разработчики развертывают свои приложения в Kubernetes. Инженер DevOps, который управляет кластерами Kubernetes в компании, который хочет, чтобы каждая команда проекта следовала определенным правилам и писала файлы конфигурации Kubernetes, которые следуют передовым практикам. Таким образом, они хотят не допустить, чтобы какие -либо неправильные проблемы или проблемы безопасности не попали в кластер при развертывании приложений.
Каковы примеры этих лучших/плохих практик, которые вы можете просить. Ну, это может быть:
- Указание
Прикрепленная версия
На каждом изображении контейнера. ✔
✔
spec: containers: - name: app image: nginx:1.19.8
❌
spec: containers: - name: app image: nginx
spec: containers: - name: app image: nginx:latest
- Копирование и вставка файлов K8S для определенного приложения из Интернета без надлежащей проверки. ❌
Корневые возможности доступа ❌
spec: containers: - name: app image: nginx:1.19.8 securityContext : priviliged: true
Устаревший API K8S ❌
apiVersion: rbac.authorization.k8s.io/v1alpha1 kind: ClusterRoleBinding
Таким образом, чтобы избежать этого, администраторы Kubernetes будут регулярно проверять конфигурацию и проверять наличие любых неправильных проблем или проблем безопасности, а также после обнаружения проблем, они уведомили бы команды о проблемах, которые им необходимо решить.
Итак, вопрос: Как Kubernetes Administrators может делегировать обязанности Kubernetes для разработчиков, не теряя контроля?
По сути, позволить разработчикам все еще создавать эти проявления сами, но обеспечение того, чтобы любая конфигурация, которая заканчивается в кластере, является правильной и следует правилам наилучшей практики, которые хотят администраторы. Ну это именно проблема Datree Решает.
Вступление:
Datree является решением CLI, которое поддерживает владельцев Kubernetes в их ролях, не позволяя разработчикам допускать ошибки в конфигурациях Kubernetes, которые могут привести к выходу из строя кластеров в производстве.
Теперь, прежде чем начать, вы хотите взглянуть на свой рабочий процесс и где Datree Подходит в это.
Давайте предположим, что вот наша команда разработчиков. Теперь команда разработчиков — это любая команда в организации, которая должна писать код, а Kubernetes проявляют. И те, код и манифесты Kubernetes подталкиваются к вашему git
репозиторий.
Обычно вы развиваете на Тестовая филиал
, или любое Особенность филиала
, где мы подталкиваем наш первоначальный код. Тогда вы хотите продвигать свой код из своего Тестовая филиал
к нашему Основная ветвь
Анкет Теперь, пока вы продвигаете это из своего Тестовая филиал
к вашему Основная ветвь
Вы хотите убедиться, что ваш код проходит определенные проверки, и это обычно делается с вашим CI/CD трубопроводы.
CI/CD трубопроводы позволяют автоматизировать ваши тесты и убедиться, что ваши тесты пройдут до того, как ваш новый код будет продвигаться из Основная ветвь
развернута в вашем кластере разработки, а затем в своем производственном кластере.
Теперь обычно DevOps Team или SRE Team несут ответственность за настройку этих чеков. И как часть этих проверок, они могут настроить Datree . Обычно, это довольно ручная задача, чтобы убедиться, что ваши калипы Kubernetes следуют передовым практикам и не вводят никаких уязвимостей для вашего кластера/для вашего развертывания. Datree Будет запускать чеки на ваших манифестах Kubernetes, чтобы убедиться, что они следуют передовым методам, прежде чем они будут продвигаться через конвейер CI/CD, при новом развертывании в вашем кластере разработки.
Теперь, если чеки не пройдут; Скажем Datree не доволен всеми проявлениями Kubernetes; Эти чеки потерпят неудачу. Это позволит вашей команде разработчиков внедрить лучшие практики и улучшить то, что в настоящее время неверно в ваших проявлениях Kubernetes. Таким образом, прежде чем вы развернете что -либо в своей разработке, для вашей постановки или даже в свой производственный кластер, вы можете быть обеспечено, чтобы ваши Kubernetes проявились следовать перед лучшими практиками и не вводят никаких уязвимостей.
Как работает Datree?
Datree это инструмент командной строки, который вы можете установить с помощью одной команды, что означает:
- Установите его на любой машине.
$ curl https://get.datree.io | /bin/bash
- Интегрируйтесь в любой инструмент.
Триггер, когда захотите.
- На коммит
- По запросу на привлечение
- На слиянии
Таким образом, в основном администраторы Kubernetes, которые на самом деле знают Kubernetes, и как правильно настроить компоненты Kubernetes, один раз создаст политики со всеми правилами и лучшими практиками, а затем интегрируйте их во всех рабочих процессах разработки команд, и таким образом сделать общую компанию последовательными политиками, которые все проекты, которые все проекты буду использовать. И чтобы интегрировать его в несколько трубопроводов CI/CD, вам фактически не нужно копировать и вставлять политики и включать их в каждый проект. Эти политики хранятся централизованно в Datree и не в проекте в качестве дополнительного файла проекта, чтобы вы могли ссылаться на центральную политику и использовать их во всех трубопроводах CI/CD.
Также в дополнение к тому, что вы можете создавать политику Datree Уже дает вам список встроенных политик, которые охватывают все лучшие практики конфигурации Kubernetes, и это означает, что после того, как вы его настроите, вы уже можете начать проверять свои файлы kubernetes yaml с этими встроенными политиками.
Итак, это основы Datree И если вам нужна дополнительная информация о том, как начать, обратитесь к ссылкам ниже 👇
Эта статья подводит итог всего этого видео Анкет
Мир!! 😉✌
Оригинал: «https://dev.to/asmit2952/getting-started-with-datree-581»