Надежность умирает последней. Главное, чтобы она вообще была. Это можно принять за шутку, если не знать, насколько все серьезно. Инженер по надежности, с двадцатилетним опытом работы в IT-индустрии, дает 61 полезный совет коллегам, имеющим дело с крупными, а также небольшими системами. Правила написаны емко и по существу, с нотками иронии и юмора, поэтому, даже несмотря на использование профессионального сленга, «пособие для выживания» читается легко. Рецепты основаны на многолетней практике, собственных ошибках и чужих граблях, и они могут стать незаменимой инструкцией для тех, «кто в теме».
Приведённый ознакомительный фрагмент книги «SRE. Рецепты выживания в продакшне для инженера по надежности» предоставлен нашим книжным партнёром — компанией ЛитРес.
Купить и скачать полную версию книги в форматах FB2, ePub, MOBI, TXT, HTML, RTF и других
9. Проектируйте failover смолоду
Если у сервиса есть хоть какой-то шанс получить статус «должен работать примерно всегда», то лучше начинать думать о надежности сразу. Сами процессы стоит проектировать реентерабельными — рассчитанными на перезапуск, параллельный запуск и какой угодно другой запуск и работу. Лучше сразу предполагать, что любая часть проекта может выйти из строя, и резервировать ее, если без нее нельзя обойтись. Во-первых, система сразу будет более-менее устойчивой, а во-вторых — более масштабируемой.
Сделайте визуальную схему всей системы и спроектируйте меры повышения надежности.
Деньги:
Резервирование системы увеличивает ее стоимость не в два раза, а существенно больше, так как для управления резервными схемами требуются инструменты координации.
Как и в случае с рецептом про автоматику, здесь целесообразно оценить последствия отказа конкретных компонентов, посчитать стоимость их резервирования и систем координации. Только после этого принимать решение о создании запасного варианта.