DevOps дайджест #12: сравнение оркестраторов, микросервисы на Go и что у Uber под капотом
В выпуске опять куча интересностей — за этот месяц прилег Amazon S3, ребята из Badoo сэкономили кучу денег на Go, Dropbox зарелизил SecurityBot, а СТО из JFrog рассказал, что же будет дальше с DevOps. Хватит работать, давайте Continious Improvement!
Большие инфраструктуры, распределенные архитектуры
Минимальное сравнение swarm\kubernetes\mesos\nomad\rancher — великолепное сравнение самых популярных оркестраторов контейнеров, присутствующих на рынке. Рассмотрена работа с сетью, запуском, хранилищами, мультидатацентры. Рекомендую!
Instapaper Outage Cause & Recovery — Instapaper недавно очень хорошо так прилёг на пару десятков часов, и все из-за Amazon RDS. Ребята описывают, как они вообще в это влипли, как пробовали восстанавливаться, и как это у них очень быстро получилось (ирония). В результате постмортема они планируют сработаться с Pinterest SRE.
Dodging S3 Downtime With Nginx and HAProxy — почему Sentry не упал вместе с Amazon S3, и как сделать, чтобы ваш продукт тоже не упал.
Introducing Big Basin: Our next-generation AI hardware — Facebook в контексте своего же Open Compute Project запилил свое крутое железо Big Basin. Это пять!<
From Monolith to Microservices — Poki рассказала и показала, как они разделяли существующий монолит, с какими проблемами столкнулись, и как их решали. Очень много реально рабочих паттернов, подходов и технологий, которые можно позаимствовать.
Как Discord хранит миллиарды сообщений — очень интересная статья о том, как Discord выбирал себе nosql СУБД. Мне очень понравилось, что ребята сделали MVP на MongoDB и потом переехали на более адекватное решение — Cassandra.
Замысловатые туториалы
Making Sense of the Application Monitoring Landscape — BigPanda описывает базовые принципы и концепции мониторинга, начиная с азов и до скейлинга. Общие принципы и паттерны построения, виды мониторинга, рассматривается вопрос выбора нужного типа согласно ваших требований.
Build Database Clusters with MongoDB — пошаговый туториал о том, как правильно насетапить MongoDB кластер, вместе с шардингом и блек-джеком. И он даже будет работать.
7 Steps to Avoiding Downtime — прописные истины и разжёванные ответы на вопрос — что делать, чтобы увеличить SLA?
Two frequently used system calls are ~77% slower on AWS EC2 — очень интересная статья о Linux internals. В статье идет речь о низкоуровневой отладке системных вызовов и практическое доказательство, что отдельный системный вызов на EC2 отрабатывает на 77% медленнее.
An nginx config for 2017 — статья описывает основные best-practises правильной конфигурации nginx, что должно быть обязательно, чего лучше не делать и в таком духе. Рассматривается сравнение с аналогами, идет упор на использование nginx в качестве балансировщика.
Новые штуковины и тулзовины
Meet Securitybot: Open Sourcing Automated Security at Scale — Dropbox открыл код Securitybot — бота, который следит за мануальным выполнением команд на серверах. И если команда опасная — ожидает подтверждения в чате.
Quick and Easy server testing/validation — наверное, самый простой, легкий и мощный инструмент для тестирования инфраструктуры.
Evolving distributed tracing at Uber Engineering — недавно Uber на конференции анонсировал, что они уже прошли черту в 1000 микросервисов. Очевидно, что ребята столкнулись с проблемой — дебагом распределенных приложений. Они решили напилить свое решение, и выглядит оно довольно интересно.
Detecting Bots in Apache & Nginx Logs — кастомная поделка в подлиннике. Автор пошагово показывает, как на Python написать анализатор логов apache и nginx, который будет детектить ботов.
Запускаем таски на bash — Bake — это такс-раннер для bash. Им можно очень круто систематизировать все разношерстные bash скрипты, которые валяются у вас в системе.
Умные мысли
Скорость важнее качества — что важнее, скорость или качество? Как лучше делать сразу, качественно или быстро?
5 Big DevOps Changes to Expect in 2017 — что поменяется в DevOps методологии в этом году, тренды и векторы для работы — от СЕО компании JFrog.
Reflecting On One Very, Very Strange Year At Uber — история SRE, который ушел из Uber и немного приоткрыл занавес — какие проблемы есть, что ему не нравилось, как это исправить. Пост в стиле «скандалы, интриги, расследования».
Ask «5 Whys» to get to the root of any problem — как правильно разбираться в проблемах — методика 5 Whys.
Почему мы уверены в том, что развернули — как сделать, чтобы ничего не ломалось, а если и ломалось — то очень редко. Обзор тестирования инфраструктуры с высоты птичьего полета.
Интересные видео
Доклад от Badoo, в котором они показали, как Go умеет экономить деньги. Ребята тщетно пытались реализовать свою задачу на PHP кучей разных способов, но это не давало приемлемого результата. В конце концов, 200 строк на Go очень круто затащили:
Лебедь, рак и щука — как все сделать правильно с первого раза, организовать, донести и помочь бизнесу зарабатывать деньги. Deep dive в методологию DevOps. Отличный концептуальный доклад. С юмором, занимательно, интересно, рекомендую!
Самое важное
Kyiv DevOps Community — у нас тут очень скоро будет крутой митап, 29 марта. Будем говорить о микросервисах и приложениях, которые тормозят. Приходите, будет интересно!
← Предыдущий выпуск: DevOps дайджест #11