Рубрики
Uncategorized

Переход от DevOps к Appops

Инновации в области разработки приложений и доставки приложений прогрессировали на скорости ракета … Tagged с DevOps, Kubernetes, OpenSource, CloudNative.

Инновации в области разработки приложений и доставки приложений прогрессировали на скорости ракета за последние несколько лет. Революция началась с перехода от архитектур монолитных приложений к архитектурам приложений MicroServices, инициированной Netflix в 2010 году, еще до термина Микросервисы был официально придуман в 2012 году и популяризирован Мартином Фаулером в 2014 году.

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

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

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

Kubernetes с DevOps

Понятно, что в качестве инструментов и программного обеспечения мы используем для создания приложений, способы работы с ними также должны развиваться. Методология разработки и доставки DevOps помогла выполнить эту цель. Когда команды столкнулись со сложностями Kubernetes, они быстро обратились к DevOps, чтобы справиться с ними. Это помогло повысить гибкость и стабильность в доставке приложений в Kubernetes и его управление. Методология DevOps позволила разработке, и она OPS команды работают в тандеме на протяжении всего жизненного цикла услуг приложений. Это также привело к добавлению новых концепций, таких как Gitops.

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

Команда DevOps, в принципе, предназначена для управления облачной инфраструктурой, контроля кластеров Kubernetes и создавать инструменты, позволяющие разработчикам соответствовать своим SLA. Но на самом деле они бегали, пытаясь решить каждую крошечную проблему, возникающую во время развертывания. Многие из этих проблем возникнут на уровне приложения, который команда DevOps не может решить самостоятельно, и команда разработчиков, не имея представления о процессе развертывания, не способна решить без помощи команды DevOps.

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

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

Основная задача поддержания стабильности и безопасности при обеспечении экономически эффективной приложения-это сложное, чтобы победить только с DevOps, когда мы смотрим на это сейчас. Хотя традиционный взгляд на DevOps очень эффективен, нам нужно взглянуть на определенную часть DevOps как отдельную сущность — Appops.

Введите Appops — подход, ориентированный на приложение

У Devops есть люди, процессы, культуру и инструменты в своем центре, но инструменты не получили должного значения. Это связано с историей технической эволюции. В то время, когда DevOps были предложены, не было никаких инструментов, которые были достаточно зрелыми, чтобы разработчики были самозависимыми. Команда DevOps должна была создать эти инструменты, поскольку у них есть необходимый опыт домена для этого. Но они закончили тем, что создали для себя инструменты самообслуживания. Эти инструменты слишком сложны для разработчиков, чтобы понять, поскольку они требуют домена знаний о DevOps и использовались только командами DevOps, чтобы помочь безопасной и быстрой доставке приложений.

Со временем техническая сложность развития также увеличилась. Таким образом, чтобы не отставать, разработчики либо вынуждены изучать Kubernetes вместе с новыми технологиями, либо постоянно полагаться на DevOps для доставки своих приложений в облако. Это увеличило бремя команды Devops, и они постоянно неправильно понимают, чтобы быть узкими местами процесса доставки приложений. Кроме того, команда DevOps должна потратить много дополнительных времени на отладку ошибок, возникающих исключительно из -за некоторых неправильно понятых изменений, внесенных командой разработчиков. Когда в действительности узкое место — это разница в точке зрения обеих команд.

Appops предлагает инструменты для обеспечения самообслуживания управления приложениями и операций для разработчиков. Это помогает операционной команде создать ограждения, в рамках которых разработчики могут работать, и, следовательно, оптимизировать анализ приложений, развертывание и управление. Это помогает упростить то, как команда DevOps наблюдает за доставкой и управлением приложениями, позволяя разработчикам создавать, развернуть и тестировать свои приложения без их помощи. Короче говоря, команда DevOps больше не выпускает небольшие пожары. Они сосредоточены на более широких проблемах управления облачной инфраструктурой и развертывания кластеров Kubernetes.

Appops удаляет стену путаницы через платформу, которая DevOps может позволить разработчикам «управлять тем, что они создают» через платформу самообслуживания.

Идея Appops заключается в том, чтобы связать компоненты приложения и инфраструктуры вместе с помощью инструментов, чтобы разработчики могли оптимизировать стабильность, стоимость и безопасность приложений, работающих поверх Kubernetes в рамках ограждений, предоставленных командой Devops. Методология Appops говорит, что требуются важные инструменты для объединения людей и процессов и помогать им эффективно и эффективно сотрудничать.

Appops: Как?

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

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

Разработчики могут позаботиться обо всех специальных запросах, которые им нуждались в команде DevOps, чтобы позволить команде DevOps работать над задачами с более высокой стоимостью.

Таким образом, операционная команда не постоянно преследует разработчики для развертывания или отладки своих приложений. Разработчики больше не зависят от команды DevOps для удовлетворения всех своих потребностей в развертывании. Они могут работать и строить так, как хотят в пределах предоставленных ограждений.

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

Appops — будущее здесь

Мы в Devtron Поверьте, что с принятием Kubernetes Appops больше не является мечтой о трубе. Будущее эффективной доставки приложений через Appops здесь. Kubernetes обеспечивает столь необходимый уровень абстракции поверх разрозненной инфраструктуры и API, чтобы информация может быть предоставлена разработчикам в простом и понятном формате.

Наш продукт с открытым исходным кодом-Devtron был построен с помощью этой идеологии. Это Рабочий процесс доставки программного обеспечения с открытым исходным кодом Для того, чтобы Kubernetes помогли команде DevOps и Developers вместе реализовать APPOP и эффективно развернуть приложения.

Оригинал: «https://dev.to/maverick_razdan/transitioning-from-devops-to-appops-56fe»