Надежность на масштабе 50 млн клиентов: опыт Т-Банка для инженеров (Рубрика SRE)
Сегодня на Хабре вышла статья Алексея Мерсона, бывшего dev advocate нашей платформы Sage. Леша рассказывал про то, как у нас выстроены процессы обеспечения надежности и как они инструментализированы. Ниже я кратко описал основные мысли статьи
- Леша начал с базы, рассказав определение надежности по SRE Book от Google, пирамиду качества (надежность -> UX -> Enjoyment), отметив, что без надежной основы нет смысла говорить об удобстве интерфейсов.
- Дальше пришла пора тройки: SLI/SLO/SLA, а также бюджета ошибок и его связи с каноническими MTTR и MTBF
- Потом Леша рассказал про святую троицу инструментов -- Sage — единая платформа наблюдаемости, заменившая зоопарк инструментов мониторинга -- FineDog — система инцидент-менеджмента для учета SLA и здоровья услуг -- Колобок — инструмент управления релизами с календарем и светофором
- Но инструменты обычно поддерживают процессы, поэтому Леша рассказал про работу с инцидентами: от алертинга с принципом "stateless-инженера" до кризис-менеджмент-планов, а также объяснил как мы разгружаем контакт-центр во время инцидентов
- Вопросы надежности курирует наш центр надежности, который работает над методологией, процессами, делает deep dive по крупным инцидентам и делится со всеми статистикой и интересными инсайтами
Если подводить итог и как-то суммировать то, что полезно сделать в компании почти любого размера и прямо сейчас, то получится следующее
- Стоит заниматься наблюдаемостью независимо от размера сервисов
- Важно наладить работу с инцидентами и научиться писать постмортемы
- Если компания большая, то может потребоваться гибридная схема с центром надежности и ролями chief reliability officers по отдельным бизнес-вертикалям
- Важно держать фокус на клиентском опыте — технологии делаются ради решения задач клиентов Если же накинуть масштаб Т, то видно, что
- Важна автоматизация всех процессов - нельзя лично поговорить с миллионами клиентов
- Важно собирать и анализировать большие объемы данных
- Важно проектировать отказоустойчиво свои системы и использовать платформенные сервисы (XaaS)
Если говорить про ценность статьи, то она не только разбирает кейс Т в плане надежности, но и демонстрирует комплексный подход к надежности: от технических инструментов до организационных процессов. Это не просто рассказ о том, "как мы мониторим метрики", а системное видение того, как обеспечить работоспособность критически важного сервиса.
P.S. Интересно, что я недавно выступал с докладом "Надежность и безопасность — это дополнительные опции или фундамент для современных ИТ-систем?" на PHDays и упоминал процессы и инструменты, которые подробно разбирает Леша в этой статье.
#SRE #SystemDesign #Software #Architecture #Metrics #SoftwareArchitecture #Engineering