Запуск проекта в Kubernetes за 60 минут

Запуск проекта в Kubernetes за 60 минутАх, Kubernetes — эта загадочная зверушка из мира облачных технологий! Если вы когда-нибудь пытались понять его с первого взгляда, то знаете: это как пытаться собрать мебель из IKEA без инструкции и с шестью лишними винтиками.

Высокий порог входа? Да там скорее гора Эверест для новичков! Но не пугайтесь, я здесь, чтобы превратить эту сложную науку в забавное приключение. Меня зовут Павел Селиванов, и я — ваш проводник в мире DevOps и облаков Mail.ru Cloud Solutions.

Если Kubernetes кажется вам чем-то вроде заклинания из Гарри Поттера, то приготовьтесь — мы разберёмся вместе!

Вместо того чтобы часами ковыряться в настройках кластера и рисковать превратить ваш сервер в электронный кирпич, предлагаю подружиться с Managed Kubernetes — то есть взять всё самое сложное за вас на себя и просто наслаждаться результатом. Это как заказать пиццу вместо того, чтобы самому месить тесто: быстрее, проще и вкуснее (ну или почти).

Мы запустим реальный API-сервис на нашем облаке — не просто так, а с Docker’ом и PostgreSQL в придачу. Представьте себе: две инстансы нашего приложения будут дружно работать в кластере Kubernetes, а база данных будет хранить всех пользователей словно библиотекарь аккуратно расставляет книги.

Если вы думаете: «А что если я совсем новичок?» — не беда! У нас даже есть бонусные рубли для новых пользователей на тестирование. Как говорится, «халява — двигатель прогресса».

Архитектура проекта будет проще пареной репы: маленькое Go-приложение с API для управления пользователями. Добавляйте их, смотрите, меняйте или удаляйте — всё как в настоящей социальной сети для программистов.

Теперь о самом интересном: регистрация и настройка кластера.

Заходите в личный кабинет Mail.ru Cloud Solutions (не забудьте пароль записать куда-нибудь кроме блокнота с котиками). Выбираете раздел «Контейнеры» — «Кластеры Kubernetes» и смело жмёте «Создать кластер». Тут у вас три варианта среды: Production с тремя Master-узлами (для тех, кто любит жить на грани), Staging (наш выбор — золотая середина) и ещё что-то там… Главное не перепутать!

Не забудьте включить Ingress Controller Nginx — это как поставить охранника у ворот вашего приложения.

Затем задаёте имя кластера (можете назвать его «Мой первый К8с» или «Потерянный кластер»), оставляете параметры по умолчанию (иногда лень — лучший друг), выбираете два Node-узла (чтобы приложение не скучало) и запускаете процесс создания. Пока ждёте 10–20 минут, можно выпить кофе или вспомнить анекдот про программиста:

— Почему программисты путают Хэллоуин и Рождество?
— Потому что Oct 31 == Dec 25!

Когда кластер готов, скачиваете kubeconfig-файл – это как паспорт для вашего приложения. Устанавливаете kubectl на локальную машину – инструмент этот похож на волшебную палочку Гарри Поттера: с ним можно командовать всеми узлами кластера одним взмахом клавиатуры.

Далее проверяем наших узлов командой kubectl get nodes.

В ответ видим один Master и два Node-а — наши верные солдаты готовы к бою! Теперь переходим к базе данных PostgreSQL.

В панели управления выбираем пункт меню «Базы данных», нажимаем «Создать БД» и выбираем Single-инстанс версии 12 – идеально для разработки.

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

This entry was posted in Разное. Bookmark the permalink.

One Response to Запуск проекта в Kubernetes за 60 минут

  1. Захар Лукьянов says:

    Managed Kubernetes — это идеальный способ быстро и просто запустить свои приложения в облаке без лишних сложностей и головной боли.

Comments are closed.