Okteto: Потребность в инструментарии для разработчиков

В ранние времена (читай — до появления контейнеризации) цикл разработки был простым. Вы пишете код в редакторе, компилируете, собираете, запускаете, тестируете и готово. Развертывание сводилось к копированию на другое устройство и настройке конфигурации.
Игра изменилась с появлением docker. Человек устанавливает хост разработки (часто локальную машину) и использует некоторую оркестровку (aka docker-compose) для локальной проверки (unit-test) и push. Среда CI — это другой мир, где конфигурации применяются повторно, сценарий интеграции тестируется и получает одобрение. Производство — это, конечно же, реальное место, где молот встречается с железом, и битва продолжается…

Разработка таким способом является болезненной из-за:

  • нескольких инструментов, которые необходимо использовать для каждой среды (например: docker-compose на DEV, kubernetes на PROD)
  • поддержание паритета конфигурации в разных средах
  • управление дрейфом конфигурации от кластера к коду
  • локальная разработка отнимает много ресурсов (в плане процессора и батареи; процесс qemu-system-aarch64 постоянно забирал >98% моих ресурсов).

Ожидания от облачного нативного DX:

  • должен быть быстрым
  • отражение изменений должно быть бесшовным (подумайте о live-preview)
  • накладные расходы на конфигурацию должны быть минимальными
  • простой поток — установка/настройка, создание, настройка и уничтожение окружения должны быть простыми.

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

Типичный рабочий процесс с okteto выглядит следующим образом:

  1. настройка okteto для подключения к вашему кластеру
  2. git clone <your repo>
    • двунаправленная служба синхронизации через конфигурацию
    • автоматическая локальная и удаленная переадресация портов для подключения через localhost и для подключения отладчиков
    • интерактивный терминал для циклов сборка-развертывание-тестирование

рабочий процесс, конфигурация и другие детали будут описаны в следующих постах серии

Оцените статью
devanswers.ru
Добавить комментарий