Рубрики
Uncategorized

Устранение местных ограничений ресурсов для построения облачных нативных приложений

Руководство по настройке общих условий разработки для команд на Кубернес. Теги с DevOps, Kubernetes, Development.

Minikube тает ваш ноутбук? Страдает ваши локальные интеграционные тесты, потому что вы не можете запускать зависимости на вашей машине для разработки?

Поскольку организации принимают Kubernetes и Cloud Arractyurutures, команды разработчиков часто будут работать в ограничения ресурсов, поскольку их архитектуры становятся более сложными. Кроме того, Kubernetes представляет новые задачи для настройки местных условий развития по сравнению с устаревшими монолитами.

С внешними зависимостями и сложными тестирующими инфраструктурами, разработчики приложений вынуждены либо приносить жертвы на реалистичные тестирования или ожидания длительных периодов времени, чтобы правильно настроить местные среды.

Настройка сред разработки для Kubernetes

Процессы для разработки традиционных монолитных веб-приложений были улучшены и оптимизированы и улучшены в течение многих лет. Тем не менее, микросервисы и народные архитектуры облака все еще представляют проблемы для разработчиков, которые стремятся эффективно настроить реалистичные среды развития.

Некоторые распространенные проблемы для разработчиков, работающих над приложениями Kubernetes, включают в себя:

  • Разработчики Frontend не могут запустить Kubernetes на своих типичнох машинах развития ограниченного ресурсами. Часто, им придется купить более мощный ноутбук или SSH на удаленный сервер, который может запустить инструменты, которые им нужны
  • Разработчики Frontend не могут запустить весь стек бэкэнда на своих ноутбуках, потому что это чрезмерно интенсивный ресурс. Вместо этого им приходится полагаться на доступ к/потреблении сервисов Backend, которые работают в общей дистанционной (постановке) среде. Это создает проблемы с утверждением в дистанционной среде (обмена средами может повысить задержку по обслуживанию вызовов и т. Д.), Проблемы с управлением состоянием (например, два или более разработчиков мутируют один и тот же хранилище данных), и среда отсутствует синхронизацией с производством (или вне синхронизации с предположениями/ожиданиями)
  • Разработчики Backend не могут выполнять все зависимости локально, которые необходимы для тестирования интеграции. Вместо этого они часто создают издевательства/заглушки/виртуализированные услуги, которые кодируют (потенциально неверные) предположения о реальных системах
  • Разработчики Backend должны выборочно раскрутить и вращать локальные зависимости, которые не могут работать одновременно (из-за проблем ресурсов), чтобы интегрировать тестирование системы по частям. Невозможно проверить всю систему, работающую на местном уровне, и кусочковые тесты, могут скрыть большую проблему интеграции, которая будет найден только после того, как код подталкивается на производство

Решения для решения местных ограничений ресурсов

Купить более мощное оборудование

Когда ресурсы являются ограничением, всегда есть возможность купить более мощное оборудование. Это может быть дорого, однако, особенно при рассмотрении модернизации ресурсов всей команды. Вам также придется объяснить время, потерянное, поскольку разработчики привыкли к новым машинам. По мере того, как ваша организация растет ваши системы, будут продолжать становиться все более сложными, и легко найти нуждаться в более мощном аппаратном обеспечении еще раз.

Мигрировать в разрабатывать код удаленно с облачным IDE

Существует все большее количество открытых источников и коммерческих облачных продуктов IDE, которые могут быть использованы для эффективного отрицания любых местных ограничений ресурсов машины для разработки. Базовое питание оборудования облака IDE можно масштабировать вертикально, а встроенная кластерная сеть позволяет легко горизонтальное масштабирование.

Эти проблемы с таким подходом часто относятся к настраиваемости, с ограниченным доступом к базовой ОС и аппаратному обеспечению, а также к стоимости, который является повторяющимся и коррелированным с размером команды разработки. Cloud Cloud + Ваши местные инструменты для Кубератесов

Получите бесконечно масштабные среды разработки с облаком посла и телесперенция

Облако посол питается от TelePresence, инструмент OSS сосредоточен на улучшении рабочего процесса разработчика для одиночных разработчиков Kubernetes. TelePresence использует Smart Proxy для создания копии вашего сервиса, работающего в облаке и перехватывает его на локальный компьютер. С этой моделью вы можете запустить и разрабатывать любой сервис — независимо от его размера — на локальной машине.

Эта демонстрирует Java Microservice, работающую в Куберане. Благодаря возможности Telepresence, разработчик может внести изменения в свои услуги без необходимости выполнения всех зависимостей на местных машинах. Даже лучше, они могут видеть изменения немедленно!

Если это проблема, с которой вы столкнулись при принятии облачных местных технологий, мы хотели бы услышать о вашей истории и как вы это обратились. Пожалуйста, сделайте нам строку в @ambassadorlabs в твиттере или Присоединяйтесь к нашему слабым каналам поделиться своей историей.

Учить больше

Оригинал: «https://dev.to/kelseyevans/eliminating-local-resource-constraints-for-building-cloud-native-applications-1fja»