Инжиниринг надежности сайта - Site reliability engineering
Эта статья включает в себя список общих Рекомендации, но он остается в основном непроверенным, потому что ему не хватает соответствующих встроенные цитаты.Май 2016) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Инжиниринг надежности сайта (SRE) - это дисциплина, которая включает в себя аспекты программная инженерия и применяет их к инфраструктуре и операционным проблемам.[1] Основные цели - создать масштабируемый и очень надежный программные системы. По словам Бена Трейнора, основателя Google SRE - это то, что происходит, когда программисту поручено то, что раньше называлось операции."[2]
Роли
Инженер по надежности сайта (SRE) тратит до 50% своего времени на выполнение работы, связанной с операциями, например, на устранение неполадок, вызов по вызову и вмешательство вручную. Поскольку программного обеспечения Ожидается, что система, которую курирует SRE, будет в высокой степени автоматической и самовосстанавливающейся, SRE должны тратить остальные 50% своего времени на задачи разработки, такие как новые функции, масштабирование или автоматизация. Идеальный кандидат в инженеры по надежности сайта - это либо инженер-программист с хорошим опытом администрирования, либо высококвалифицированный системный администратор со знаниями кодирования и автоматизации.[3]
DevOps против SRE
DevOps, созданный примерно в 2008 году, представляет собой философию взаимопонимания между командами и бизнес-согласованности. Это также было связано с практикой, которая включает автоматизацию ручных задач, непрерывная интеграция и непрерывная доставка. SRE и DevOps придерживаются одних и тех же основополагающих принципов. SRE рассматривается многими (как цитируется в книге Google SRE) как «конкретная реализация DevOps с некоторыми идиосинкразический расширения ". SRE, сами будучи разработчиками, естественно, будут предлагать решения, которые помогут устранить барьеры между группами разработчиков и операционными группами.
DevOps определяет пять столпов успеха:
- Уменьшить организационную силосы
- Примите неудачу как нормальное явление
- Осуществлять постепенные изменения
- Используйте инструменты и автоматизацию
- Все измерить
SRE удовлетворяет основным принципам DevOps следующим образом:[4]
- Сократите организационную разрозненность
- SRE разделяет собственность с разработчиками, чтобы создать общую ответственность[5]
- SRE используют те же инструменты, что и разработчики, и наоборот.
- Примите неудачу как нормальное явление
- SRE принимают риск[6]
- SRE предписывает количественно оценить отказ и доступность, используя Индикаторы уровня обслуживания (SLI) и Цели уровня обслуживания (SLO)[7]
- SRE требует безупречных вскрытий[8]
- Осуществляйте постепенные изменения
- SRE побуждает разработчиков и владельцев продуктов действовать быстро, снижая стоимость отказа[6]
- Используйте инструменты и автоматизацию
- У SRE есть устав, позволяющий автоматизировать ручные задачи (так называемый «тяжелый труд»).[9]
- Все измерить
- SRE определяет предписывающие способы измерения ценностей[10]
- SRE считает, что работа систем - это проблема программного обеспечения.
Смотрите также
- Облачные вычисления
- Дата центр
- Программное обеспечение высокой доступности
- Инфраструктура как код
- Операции, администрирование и управление
- Управление операциями
- Техника надежности
- Системное администрирование
Рекомендации
- ^ Чем занимается инженер по надежности?
- ^ SRE следующие специалисты по данным?, TechCrunch, 2 марта 2016 г., Дональд Фишер
- ^ Джонс, Крис; Андервуд, Тодд; Нукала, Шиладжа (июнь 2015 г.). «Найм инженеров по надежности сайта» (PDF). ;авторизоваться:. Vol. 40 нет. 3. С. 35–39.CS1 maint: лишняя пунктуация (связь)
- ^ Google Cloud Platform (1 марта 2018 г.). «В чем разница между DevOps и SRE? (Класс SRE реализует DevOps)». С. 35–39 - через YouTube.
- ^ "Google - разработка надежности сайта". Landing.google.com.
- ^ а б "Google - разработка надежности сайта". Landing.google.com.
- ^ "Google - разработка надежности сайта". Landing.google.com.
- ^ "Google - разработка надежности сайта". Landing.google.com.
- ^ "Google - разработка надежности сайта". Landing.google.com.
- ^ "Google - разработка надежности сайта". Landing.google.com.
дальнейшее чтение
- Разработка надежности сайта: как Google управляет производственными системами, O'Reilly Media, апрель 2016 г., Бетси Бейер, Крис Джонс, Дженнифер Петофф, Найл Ричард Мерфи, ISBN 978-1-491-92912-4
- Практика администрирования облачных систем: проектирование и эксплуатация больших распределенных систем, Том 2, Томас Лимончелли, ISBN 032194318X
- Google - Интервью с Беном Трейнором по проектированию надежности сайта