Книга «Облачные архитектуры: разработка устойчивых и экономичных облачных приложений»

В этой книге продемонстрированы три важнейших аспекта развертывания современных cloud native архитектур: организационное преобразование, модернизация развертывания, паттерны облачного проектирования.

Книга начинается с краткого знакомства с облачно-ориентированными архитектурами — на примерах объясняется, какие черты им присущи, а какие нет. Вы узнаете, как организуется внедрение и разработка облачных архитектур с применением микросервисов и бессерверных вычислений как основ проектирования. Далее вы изучите такие столпы облачно-ориентированного проектирования, как масштабируемость, оптимизация издержек, безопасность и способы достижения безупречной эксплуатационной надежности. В заключительных главах будет рассказано о различных общедоступных архитектурах cloud native, — от AWS и Azure до Google Cloud Platform.

Для кого эта книга

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

Процесс перехода в облако

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

Стимулы для перехода в облако

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

Быстрое продвижение и низкие траты

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

Гибкость

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

Fail-fast (завершение работы при первой ошибке) — это еще одна область, где важную роль играют экспериментирование и скорость/гибкость облака. В наши дни дискредитация идей и распад компаний происходят в рекордные сроки, и, чтобы избежать неудачи, компания должна постоянно совершенствовать свою бизнес-модель, максимально приближая ее к требованиям клиентов. Вот слова Джеффа Безоса о концепции эксперимента: «Если вы знаете, что эксперимент сработает, это уже не эксперимент». Это означает, что очень важно постоянно и быстро пробовать новые идеи и создавать продукты и услуги. Еще это означает, что многие идеи не достигнут желаемых бизнес-целей, и это нормально, так как только некоторые из них окажутся успешными. Облачные вычисления обеспечивают гибкость за счет возможности создавать и удалять ресурсы в нужный вам момент. Таким образом, если как следует спроектировать систему минимального размера, она сможет расти экспоненциально по мере роста нагрузки, благодаря чему у компании никогда не будет простаивающего или редко используемого оборудования.

Денежные затраты

Кроме всего прочего, fail-fast позволяет сократить денежные расходы. Если эксперименты стоят дорого, их неудачный итог может иметь негативные последствия для компании. Как только проект или система начинают существенно влиять на бизнес, сразу же реализуется система сдержек и противовесов, которая замедляет их рост. Это позволяет предотвратить принятие затратного решения, такого как закупка дорогого аппаратного обеспечения при низкой вероятности окупаемости. Идея гибкой разработки вовсе не нова; она существует на протяжении десятилетий и не имеет прямого отношения к облаку. Однако облачные вычисления делают ее выгодной с точки зрения расходов, требуя минимальных первоначальных вложений. Полный жизненный цикл новой бизнес-идеи может занимать недели или месяцы, и на первых порах важно ограничить использование облачных ресурсов. Если идея станет популярной, архитектура cloud native позволит системе масштабироваться с ростом нагрузки. Если желаемый результат не будет достигнут, можно легко остановить ее и списать те небольшие ресурсы, которые в нее вложили, на невозвратные потери. Вот что означает fail-fast при разработке инноваций в облаке.

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

Обеспечение безопасности и надлежащей управляемости

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

Безопасность

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

Наверное, все еще можно найти компании или организации, которые похвастаются похожим уровнем целенаправленности в этой важной сфере, однако абсолютное большинство не может позволить себе выделить ресурсы, необходимые для постоянного улучшения безопасности, как это делают поставщики облачных услуг. Более того, этот же аргумент в пользу применения облаков справедлив и когда нужно ответить на следующий вопрос: даже если вы способны сравниться с поставщиками облачных услуг по количеству внедренных инноваций, оптимально ли тратить на это ресурсы организации или стоит сосредоточиться на бизнес-результатах? Довод в пользу обеспечения безопасности с помощью облака почти настолько же силен, насколько сильны преимущества в плане денежных расходов и адаптируемости. Каждой организации необходимо очень подробно обсудить требования к безопасности и управляемости, прежде чем принимать решение, куда инвестировать — в локально размещаемое оборудование или закрытое облако. Часто для этого нужно пристально следить за командами, которые участвуют в обсуждении, чтобы они не пытались уцепиться за знакомые технологии, используя безопасность или управляемость в качестве предлога и создавая тем самым риски для окружающих.

Управляемость

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

Расширение компании

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

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

Привлечение и удержание талантливых сотрудников

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

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

Облачные инновации и экономия на масштабе

Чтобы успешно перейти в облако, лучше всего направить ресурсы на свои основные конкурентные преимущества и пользоваться инновациями, которые внедряются крупными поставщиками облачных услуг с максимально возможной скоростью. Очень немногие компании могут считать управление вычислительными центрами своей сильной стороной, это должно быть основным принципом во время принятия решения о внедрении технологий cloud native. Этот всеохватывающий принцип только стимулирует переход в облако, поэтому его следует считать большим преимуществом для любой организации. Облачные инновации помогут компаниям лучше адаптироваться, снизить расходы, обезопасить рабочие процессы, выйти на новые рынки и привлечь/удержать лучших сотрудников, соответствующих потребностям организации.

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

С полным содержанием статьи можно ознакомиться на сайте “Хабрахабр”:

https://habr.com/ru/company/piter/blog/573676/

Источник



Leave A Reply

Your email address will not be published.