Деплой приложения в Kubernetes из GitLab - полная цепочка от настройки серверов до приложения
ฝัง
- เผยแพร่เมื่อ 29 มิ.ย. 2024
- В этом ролике я расскажу простыми словами и покажу как:
- развернуть инстанс GitLab в Yandex.Cloud
- как развернуть кластер Kubernetes в Yandex.Cloud
- как настроить runner
- как настроить GitLab-агент
- как написать скрипт для автоматизации сборки и деплоя
- ну и как это всё работает
Видео большое и для удобства навигации можете пользоваться таймкодами:
00:00 - Начало
01:27 - Развертывание кластера Kubernetes в Yandex.Cloud
05:20 - Развертывание инстанса GitLab в Yandex.Cloud
07:19 - Создание группы узлов Kubernetes
09:29 - Настройка kubectl
12:46 - Начальная настройка GitLab
14:31 - Создание проекта в GitLab
17:03 - Краткий обзор GitLab
17:56 - Настройка раннера (runner) в GitLab
21:39 - Настройка GitLab container registry
25:04 - Создание тестового Docker контейнера
27:23 - Настройка CI-pipeline
35:21 - Настройка GitLab-агента для интеграции с Kebernetes
39:42 - Написание манифеста для создания Deployment
42:01 - Описание фазы Deploy в CI/CD скрипте
45:55 - Настройка аутентификации для скачивания имиджа из закрытого репозитория
52:51 - Проверка работы контейнера
54:51 - Выключение инстанса GitLab и кластера Kubernetes после работы для экономии
55:23 - Заключительное слово
Спасибо огромное что не поленился создать этот гайд. Прям то что нужно.
Спасибо за детальное изложение и подачу материла! В конце ноября 23года все работает. Даже с учетом того что в яндекс клауд появилась новая версия k8s и gitlab. Хотелось бы увидеть обозначенные в конце видео пункты про обновление докер файлов и подключение дашборда. И в целом хотелось бы видеть больше таких качественных видео. Ну и для новичков думаю было бы полезно в гите репозиторий с файлами из видео выложить.
Отличное видео, благодарю за труд, удачи в профессиональном развитии.
Отличное видео! Даешь больше видео по куберу? 😃
Блин как классно и просто рассказываешь!!! Смотрел на одном дыхании, очень ждем курс про дашборд и настройку безопасности. Также хотелось бы хотябы обзорно как реализован у вас проект в кубере в плане стэка бэкенд фронтенд взаимодействия и базы данных
У нас чего-то Кубер на проектах невостребован. Докер композ рулит! )
Сто тыщ лайков, добрый человек!
Расскажите про безопасность еще) И пример с SQL БД еще
это просто то что нужно!!! искал материал, реально годный не найдешь, тут все на пальцах рассказано скажите пожалуйста нужно ли создавать Service Account или агент все берет на себя?
Я уже забыл ))
как были сконструированы все эти "заклинания" для запуска kaniko? в официальном туториале всё вообще по другому. Где прочитать про описаный тут метод для большего понимания что откуда взялось и почему так?
Подскажите, пожалуйста, как добавить лод балансир для доступа к приложению из вне?
Подскажите почему для пула образы мы нигде не указываемы креды?
Огромное спасибо!
Есть вопрос, а как это в конце работает когда порт пробрасываем, kubectl связывает порт из кластера с портом внешней тачки с которой мы кидаем команды?
Если я правильно понял вопрос, то да ) мэппим порт контейнера на порт локальной машины, с которой запускаем kubectl
@@futuro135 Вот это круто конечно, не думал что так можно, подскажите, как вы обросли такими навыками? Что почитать или посмотреть?
Добавил в закладки видос, поверхностно промотал... Подскажите, дорого обходится в месяц Я.Облако? А то увидел у вас в ролике 6к в месяц и чет потерялся...
Я вот не постоянно ЯО использую - так для экспериментов. Виртуалки и кластеры Кубера выключаю за собой ) Ну так у меня 3 кластера Кубера, 2 инстанса Гита, 4 виртуалки, DNS, куча айпишников, сетевой балансировщик, балансировщик приложений. За январь заплатил 6к. Кубер-то можно на локалке поставить вместе с Docker Desktop
Наверно надо было сказать что гитлаб дает бесплатные ранеры на 400 минут, более чем достаточно чтобы поиграться или на пет проекты.
Было бы круто без гитлаб агентов сд сделать, привязываться так сильно к си ранеру не очень имхо, хочется иметь возможно с минимальными усилиями переехать.
Гитлаб дает 400 минут раннеров только тем, кто прошел авторизацию с карточой VISA не российской под видом защиты от спама. Вот и всё.
@@futuro135 хмм, у меня не привязана, вроде норм всё бесплатно, тока вчера запускал, наверно для новых акков новые правила.
Подскажите где взять сертификат от портала гитлаб? (у вас на видео секьюр)
Я делал на Яндекс облаке. Там можно создавать бесплатные сертификаты Let’s encrypt. Ну можно и самому сделать сертификат Let’s encrypt
@@futuro135 Дело в том что созданный гитлаб уже имеет доменный адрес и сертификат, как его получить для того чтобы работать с репами удаленно?
джба выполнилась успешно. а по факту новый под не поднялся( вот тут бы не мешало бы доработать чтобы джоба падала раз под не поднялся или остался прошлый
А почему не использовать например общий гитлаб?
По разным причинам. У меня главная причина - для авторизации в Гитлабе нужна привязка банковской карты, а российские карты не принимаются.
@@futuro135 Там тоже можно добавить свои раннеры, но когда я делал Гитлаб Агента, то он никак не хотел переходить в статус "Онлайн" пришлось переделывать с инстасом гитлаба в яндекс облаке
Такую хрень поймал, грешу на агент гитлаб User "system:serviceaccount:default:default"
разобрался: делой не правильно был орисан