Привет, я Александр Хренников, руководитель DevOps-юнита в KTS.

Нам тут, оказывается, 5 лет стукнуло (точнее, нашему блогу на Хабре). Подарков мы не дождались, так что решили сами вручить их вам. Дарить будем футболки с нашим фирменным принтом — Котзиллой. Это как Годзилла, только кот.

Но подарок получат не все, а десять DevOps-инженеров, которые справятся с нашим испытанием быстрее остальных. Суть проста: мы даем вам тестовый стенд с кластером Kubernetes с ArgoCD и отдельный GitLab-сервер. В ArgoCD добавлено приложение — простой Nginx, обернутый в Helm-чарт. И оно не запускается. Надо запустить.

DevOps-челленджи мы проводим не впервые: уже были этот, этот и еще несколько до них. Опытные участники уже знают механику, а для новых энтузиастов я расскажу ниже, как все устроено.

Что нужно сделать

Дополню входные данные. На тестовом стенде вас ждут:

  • Kubernetes-кластер;

  • ArgoCD;

  • GitLab с репозиторием приложения;

  • VS Code Server с доступом к терминалу и kubectl.

В ArgoCD добавлено приложение demo-app. Это Nginx, упакованный в Helm-чарт и подключенный к GitLab-репозиторию. На первый взгляд все выглядит нормально. Но ArgoCD показывает ошибку, и приложение не может синхронизироваться.

Ваша задача: выявить проблему и исправить конфигурацию так, чтобы деплой стал зеленым.

Важно:

Просто удалить ArgoCD и развернуть приложение вручную нельзя. Нужно именно исправить конфигурацию.

Как участвовать

  1. Перейдите в нашего бота и запустите челлендж. Он выдаст вам адреса сервисов и учетные данные.

  2. Откройте VS Code Server и запустите в нем консоль, где будет доступен kubectl.

  3. Для доступа к кластеру выполните команду $᠎‌ merctl᠎‌ provision.

  4. Откройте ArgoCD UI. Изучите состояние приложения demo-app и текст ошибки.

  5. Перейдите в GitLab. В нем находится репозиторий demo-app с Helm-чартом приложения. Конфигурацию приложения нужно исправить именно в GitLab.

Когда будете уверены, что все работает, запустите проверку:

merctl.test

Если условия выполнены, бот зарегистрирует прохождение и добавит вас в общий рейтинг участников.

Тоже важно:

  • Стенд будет доступен в течение 1 часа с момента запуска. За это время можно исправлять ошибки и выполнять проверку неограниченное количество раз.

  • Челлендж доступен 20 участникам одновременно. Если все стенды окажутся заняты, мы добавим вас в очередь и сообщим, когда освободится место.

Справитесь?

Если вы работаете с Kubernetes, Helm и GitOps — задача не должна занять много времени. Но придется внимательно посмотреть на конфигурацию и понять, где именно она ломается.

Запускайте челлендж → https://t.me/kuberchallengebot?start=habr

Итоги подведем через неделю, 26 марта в 19:00. Увидимся в рейтинге. Надеемся, что Котзилла уедет именно к вам. Ну, может, не лично к вам, но к кому-то из вас она точно уедет.