Очень непростая задача — управлять экосистемой развлечений, чтобы впечатлять людей разного возраста: от маленьких детей до взрослых поклонников Disney. Тем более что практически все развлечения Disney основаны на сложной технологической базе. Поэтому в Disney есть собственные команды SRE. Они ответственны за то, чтобы «волшебство» работало как часы.
История SRE в Disney
Директором по глобальным технологиям SRE в Disney с 2011 года работает Джейсон Кокс. Он помогает Disney оставаться мировым лидером в индустрии развлечений и поддерживает технологии компании. Когда его повысили до «царя» системной надёжности в компании, он столкнулся с определёнными сложностями.
Стоит отметить, что SRE в Disney обозначается как Systems Reliability Engineering.
До этого Кокс уже несколько лет работал в компании в составе операционной команды интернет-группы Disney. Самой большой проблемой на пути к эффективности было то, что его команда и все остальные группы работали изолированно друг от друга.
Изоляция существовала не только между отделами технологий, продуктов и т. д. У Disney было четыре крупных подразделения с отдельными автономными директорами по информационным технологиям (CTO). Это были подразделения: «Студии», «Потребительские товары и интерактивные сервисы», «Парки и поддержка» и «Медиасети».
Каждое подразделение работало независимо, но это приводило к формированию «теневых» технологий. У каждого подразделения был свой способ выполнения задач, даже если речь шла об очень тривиальной работе.
Однако быстрый рост требовал изменений в масштабах всей компании, поэтому в Disney провели DevOps-трансформацию. Джейсон и его команда применили принципы DevOps к каждой части бизнеса, не только технически, но и культурно, разрушая изоляцию и масштабируя DevOps.
Цель — улучшить коммуникацию и сотрудничество, объединить технологов из разных областей и поощрять их к принятию новых идей.
Вот какие проблемы стояли на повестке дня группы SRE:
По мере того как бизнес Disney расширялся в цифровом формате, увеличивалась рабочая нагрузка и необходимость «тушить пожары». Команды разработчиков сталкивались с огромным увеличением рабочей нагрузки, когда количество серверов у них выросло с десятков до сотен и тысяч.
Бюрократия и ручные процессы — например, заявки даже на самые небольшие запросы — замедляли способность инженерных команд удовлетворять потребности бизнеса и запросы клиентов на быструю итерацию. Например, на подготовку облачных аккаунтов уходили недели, а не минуты.
Продакшен-системы страдали от низкой надёжности, безопасности, отказоустойчивости и качества.
Практики Agile улучшали скорость разработки и вывода в продакшн, но из-за этого стали возникать сложности в эксплуатации, потому что её специалисты не был готовы к такому масштабу и скорости изменений.
Инженеры выгорали из-за высокой когнитивной нагрузки, пытаясь выполнять операционную работу во время продолжительных периодов «тушения пожаров» и не имея времени на улучшение работы — у них было время только на то, чтобы отреагировать и перейти к следующей проблеме.
Серверам Disney давали имена по аналогии с гномами из «Белоснежки»: ворчливый (grumpy), сонный (sleepy) и бестолковый (dopey) и так далее. В какой-то момент это стало отражать реальное поведение серверов.
😅 Серверы стали проявлять характер, соответствующий их именам:
Ворчливый регулярно выдавал ошибки;
Сонный страдал от высокой задержки;
Робкий мог исчезать из сети на несколько дней.
В компании создали группы SRE, чтобы решить эти проблемы. Они работали над созданием более централизованной IT-инфраструктуры, которая позволила бы оптимизировать операции во всех подразделениях.
Они продвигали несколько инициатив:
внедрение общекорпоративных систем работы, таких как порталы самообслуживания, которые позволили бы разным отделам работать более эффективно;
освоение новых технологий: облачные вычисления и виртуализация, которые позволили Disney более эффективно масштабировать свои операции;
построение infrastructure-as-code (IAC) и объединение её с кодом приложения с использованием контейнеризации и serverless архитектуры;
смещение акцента на надёжность с целью повышения надёжности приложений и впечатлений через абстрагирование платформы.
«Наша трансформация DevOps в Disney была сосредоточена на технологиях, лидерстве и сообществе. Технологии имеют решающее значение, потому что они усиливают человеческие способности», — Джейсон Кокс, директор по глобальным технологиям SRE в Disney.
Благодаря своевременному видению Джейсона и упорной работе его команды Disney смогла оставаться лидером в индустрии развлечений.
Как SRE помогла технологическим операциям Disney
Команда Systems Reliability Engineering (SRE) в Disney произвела революцию в своём технологическом ландшафте, сделав акцент на важности основных процессов DevOps.
Внедрив передовые методы, такие как CI/CD, автоматическое тестирование и мониторинг, команда смогла повысить эффективность и надёжность различных систем и приложений.
Команда также тесно сотрудничала с кросс-функциональными командами, чтобы выявлять и решать ключевые проблемы, что привело к более упорядоченному и эффективному рабочему процессу.
В результате команда SRE Disney смогла значительно повысить общую производительность и масштабируемость технологической инфраструктуры Disney, что привело к улучшению качества обслуживания клиентов.
В частности, они решили 2 ключевые проблемы.
Проблема Disney: плохая видимость систем
Из-за того, что операции распределены по нескольким локациям и средам, для SRE Disney было крайне важно иметь способ отслеживать и анализировать данные из всех своих систем в одном месте. Чтобы достичь этого, они инвестировали в сложные технологии и обучили своих сотрудников эффективно их использовать.
Они осознали важность тщательного наблюдения за своими операциями, поэтому стремились внедрить системы, которые могли бы предоставить им всесторонние возможности мониторинга и наблюдения.
Они также установили чёткие протоколы для выявления и решения проблем, а также для отчёта о прогрессе и производительности.
Приняв эти меры, Disney смогла гарантировать бесперебойную и эффективную работу своих систем. А это отразилось на впечатлениях клиентов.
↪️ Решение: комплексная наблюдаемость
Disney использует различные методы и технологии для обеспечения эффективности процессов мониторинга и наблюдаемости. В дополнение к Splunk, который они используют для анализа журналов, они также используют Grafana для визуализации метрик и PagerDuty для управления инцидентами.
Использование Disney Splunk позволяет им эффективно анализировать логи. Это помогает выявлять потенциальные проблемы и ускорять процесс их решения.
Используя Grafana для визуализации метрик, Disney получил более полное представление о производительности своих систем и возможность проактивно решать любые возникающие проблемы.
Кроме того, возможности управления инцидентами PagerDuty гарантируют, что соответствующие команды будут уведомлены в режиме реального времени о любых критических событиях.
Таким образом, Disney благодаря стратегическому использованию этих инструментов и методов поддерживает высокоэффективную систему мониторинга и наблюдаемости, что крайне важно для обеспечения эффективной работы их сложной технологической инфраструктуры.
Проблема Disney: обеспечение согласованной надёжности в масштабе
Disney столкнулась с серьёзной проблемой обеспечения согласованной надёжности в масштабе всех своих сред и локаций. Особенно сложной эту задачу делало огромное количество подразделений организации и разнообразие мест, где она ведёт свою деятельность.
↪️ Решение 1: развернуть систему управления конфигурациями
Чтобы решить эту задачу, Disney обратилась к использованию таких инструментов управления конфигурациями, как Puppet и Chef. Они оказались крайне полезными и помогли Disney достичь согласованности инфраструктуры во всех многочисленных средах и локациях.
Фактически, с помощью Puppet и Chef среднее время развёртывания новой среды сократилось с 2 недель до всего лишь 2 часов.
Имея централизованную систему управления конфигурациями, Disney может гарантировать бесперебойную работу всех своих систем и их актуальность.
Давайте рассмотрим два примера, где управление конфигурациями оказало положительное влияние:
Пример 1 управления конфигурациями
До внедрения CM (configuration management) сотрудники тратили восемь часов каждую ночь, вручную обновляя 100 серверов, задействованных в аттракционе «История игрушек: Мания». Но теперь, благодаря управлению конфигурациями, один человек может обновить весь парк за 30 минут!
Благодаря обеспечению согласованности конфигураций и объединению систем вместе управление конфигурациями также помогло уменьшить расхождение систем в Disney. Это означает, что каждая система более последовательна и работает на более высоком уровне, что приводит к улучшению операций и более высоким результатам.
Пример 2 управления конфигурациями
Disney также смогла обеспечить согласованность в 220 магазинах, которые у них есть в США, каждый с несколькими устройствами точек продаж. Благодаря объединению этих устройств с помощью управления конфигурациями сотрудники могли легко убедиться, что всё работает так, как задумано.
→ Это важно, потому что позволяет магазинам предоставлять единообразный опыт для клиентов.
Кроме того, управление конфигурациями помогает сотрудникам тратить больше времени на помощь клиентам и меньше времени на устранение технических проблем. Благодаря оптимизации технической инфраструктуры Disney также смогла сократить расходы, связанные с обслуживанием и поддержкой.
→ Это позволило им инвестировать больше в другие области своего бизнеса, такие как маркетинг и разработка продуктов.
↪️ Решение 2: разработанные самостоятельно инструменты автоматизации
В дополнение к использованию инструментов с открытым исходным кодом, SRE Disney также разработали собственный внутренний инструмент управления конфигурациями, который называется «Disney Deployment Framework».
Этот фреймворк позволяет автоматизировать процесс развёртывания приложений и обеспечивать согласованность в разных средах. Имея адаптированное решение, которое соответствует уникальным потребностям организации, Disney может достичь ещё более высокого уровня надёжности и согласованности.
SRE Disney также подчёркивают важность тщательного тестирования кода управления конфигурациями. Они разработали инструмент под названием «Simba», который позволяет им проверять изменения в коде инфраструктуры перед развёртыванием в рабочей среде. Таким образом они могут обнаруживать любые проблемы до того, как они вызовут проблемы для бизнеса.
Влияние управления конфигурациями было действительно «волшебным» для Disney. Благодаря оптимизации своих ИТ-процессов и обеспечению бесперебойной работы они могут сосредоточиться на предоставлении исключительного опыта своим клиентам.
Какова культура SRE в Disney
Система ценностей «3 С»
Система ценностей в компании Disney состоит из «лучше», «быстрее», «безопаснее», «счастливее».
Команды SRE Disney вдохновились этим постулатом и сформулировали три собственных ценности — «3 С»:
Collaboration (Сотрудничество). Разрушение замкнутости и работа над достижением общих целей
Curiosity (Любопытство). Постоянно экспериментировать
Courage (Смелость). Быть откровенными, бросать друг другу вызов, не обвинять и не охотиться на ведьм)
Благодаря этому набору ценностей инженеры Disney:
стали меньше концентрироваться только на выполнении своих задач и больше — на общей работе;
стали делать меньше монотонной работы;
смогли больше автоматизировать процессы.
«Давайте исправим название должности»
До 2017 года инженеры по операциям/SRE Disney назывались «системными операторами». Они изменили название на «системных инженеров», чтобы отразить, что они не только люди, «управляющие поездом», но и те, кто проектирует, строит поезд, рельсы и мосты.
SRE Disney начали свой путь в компании, работая с другими командами, чтобы придерживаться вышеописанного подхода — что они интегрированы с производственной цепочкой, а не находятся вне её.
Мы начали проектировать наше будущее, и в рамках этого мы стали частью команд, которые мы поддерживаем — продуктовых команд и бизнес-команд. — Джейсон Кокс.
К генеративной культуре
Руководство SRE отказалось от традиционной управленческой мантры, основанной на страхе, ориентации на власть, командно-контрольном подходе и бюрократии. Они стремятся управлять с помощью генеративной культуры, которая даёт возможность работникам умственного труда достичь своего максимума.
В то же время у команд SRE есть уникальный способ не дать инженерам стать высокомерными от мыслей о своём величии, о том, что они рок-звёзды высшего класса.
Развитие сервисного мышления
«Моя команда находится в самом низу корпоративной иерархии» — по крайней мере, такое мышление Джейсон Кокс привил своим командам SRE. Они здесь, чтобы помочь заинтересованным лицам в бизнесе и технологам на местах.
По словам Джейсона, «Моя цель — сказать: «Как я могу помочь?» Поэтому, когда я вхожу в какой-нибудь отдел, я говорю: «Я из корпоративного отдела. Я здесь, чтобы помочь».
Люди на местах всё ещё с опаской относятся к нему и его команде, особенно из-за фразы «Я из корпоративного отдела».
Он добавляет, что они работают и постоянно общаются, чтобы убедиться, что люди, и особенно инженеры на местах, не считают их силой, «пришедшей, чтобы отнять их веселье».
Развитие T-образных навыков
Команды SRE выступали в качестве технических евангелистов, которые помогали продвигать позитивные изменения, упомянутые ранее в организации, а также дополняли продуктовые команды своими T-shaped навыками.
T-shaped — это концепция, согласно которой SRE должны обладать широким спектром компетенций в разных областях, но при этом они должны иметь глубокие знания в одной из этих областей.
Например, инженер по обеспечению надёжности сайта может иметь опыт в разработке программного обеспечения, эксплуатации, управлении проектами, безопасности и многом другом. По крайней мере, очень поверхностного представления об одной или нескольких из этих областей может быть достаточно, чтобы вмешаться и помочь.
Однако они также должны иметь более глубокое понимание одной области, такой как облачные вычисления, безопасность, сети или автоматизация. Обладая таким широким и глубоким набором навыков одновременно, SRE могут лучше помочь своим коллегам из разных областей.
Это помогло SRE Disney наладить сотрудничество для более эффективного решения проблем. Кроме того, T-shaped SRE специалисты лучше ориентируются в сложных системах.
Культура непрерывного обучения
Disney приглашает своих SRE участвовать в сообществе практиков, которое называют «Jedi Engineering Training» (JET).
Чем полезно такое участие в этом сообществе:
1. Продвигаются новые технологии. Вокруг обсуждения технологий и совместного решения проблем формируется сообщество людей.
2. Внешние и внутренние эксперты приезжают, чтобы рассказать о своих текущих проектах. Это позволяет сообществу применять новые знания в работе над проблемами, использовать чужой опыт для внедрения инноваций и просто способствует общению друг с другом.
Заключение
Как вы уже прочитали, Site Reliability Engineering (SRE) компании Disney произвела революцию в технологической сфере, сделав акцент на важности основных процессов DevOps, таких как непрерывная интеграция и доставка, автоматическое тестирование и наблюдение.
Они также создали более централизованную IT-инфраструктуры, которая упростила операции во всех подразделениях.
Культура SRE Disney состоит из сотрудничества, любознательности и смелости. Они стремятся практиковать генеративную культуру, которая даёт возможность достичь своего максимума.
В качестве лирики: слова Уолта Диснея о секретах Disney, очень точно описывают, как может работать успешная команда Site Reliability Engineering:
«На самом деле нет никакого секрета в нашем подходе. Мы продолжаем открывать новые двери и делать новые вещи — потому что мы любопытны. А любопытство продолжает вести нас по новым путям».
Ранее мы уже рассказывали о том, как реализованы SRE-практики в Power BI. Если вы планируете внедрять SRE-практики в вашей компании, приходите в Слёрм на курс SRE: data-driven подход к управлению надежностью систем. На время обучения вы станете SRE для сервиса покупки билетов в кинотеатр. Решая предложенные кейсы, вы получите представление, чем занимается SRE в реальности.