Pull to refresh
203
-1
Евгений Потапов @eapotapov

Основатель

Как не превратить облако в денежную дыру

Reading time 5 min
Views 3.4K

Если сейчас запускать проект, то другие идеи, кроме того, чтобы разместиться в облаке не приходят. Облачная инфраструктура дает много преимуществ, но есть проблема — легко не уследить за тратами, забыв про выделенные ресурсы, закупив мощности больше необходимых или используя не самые эффективные решения.

Поэтому мы хотим поделиться советами, как сократить расходы в облаке, они помогут не наступить на грабли тем, кто сейчас в облако переходит и тем, кто уже работает с облачной инфраструктурой. Рекомендации, которые приведены ниже, мы даем нашим клиентам, основываясь на большом опыте работы со множеством облачных провайдеров. Поэтому эти советы вполне можно назвать универсальными.

Читать далее
Total votes 27: ↑26 and ↓1 +25
Comments 5

Как жить, если ты девопс?

Reading time 14 min
Views 29K


Я уже лет 10 занимаюсь, в основном, менеджерской работой, но недавно решил освежить свои технические навыки и поближе познакомиться со стеком современных DevOps-инструментов. Я взял на себя исполнительскую работу с несколькими клиентами компании и, имея понимание, как исполнителя обычно видит менеджер, получил любопытный опыт, которым хочу поделиться.
Читать дальше →
Total votes 48: ↑48 and ↓0 +48
Comments 19

Почему бизнес хочет DevOps и что нужно знать инженеру, чтобы говорить с ним на одном языке

Reading time 13 min
Views 12K
Последние несколько лет мы при каждом удобном случае снова и снова обсуждаем, что же такое DevOps. Это уже порядком надоело, но раз всё еще происходит, значит есть проблема — проблема взаимодействия бизнеса и инженеров.

Я часто вижу, как люди, пришедшие к применению DevOps из разных сфер, говорят на разных языках и понимают под словом DevOps совершенно разное. В итоге в какой-то момент времени оказывается, что участники проекта по трансформации абсолютно не понимают и друг друга, и зачем нужен весь этот DevOps тоже.



Я не хочу рассуждать о том, что такое DevOps и какое его понимание более правильное. Мне интересно проследить за эволюцией процессов в IT и разобраться, что бизнес хочет получить от внедрения DevOps, что это значит для инженеров и как нам быть на одной волне.
Читать дальше →
Total votes 33: ↑31 and ↓2 +29
Comments 1

Как я не съездил в Лондон, но поучаствовал в London DevOps Enterprise Summit

Reading time 7 min
Views 2K


С 23 по 25 июня 2020 года в Лондоне прошла очередная DevOps Enterprise Summit. «В Лондоне» можно написать в кавычках, так как пандемия сделала свое дело и конференция прошла в онлайн-формате. В нём здесь есть и плохое (нетворкинг всё-таки очень сильно страдает), и хорошее: ты можешь передохнуть между докладами вдали от всех людей, ты можешь выделить целиком несколько дней на изучение докладов, которые тебя интересуют, и сфокусироваться — это вот очень полезно. Буквально недавно я был на митапе «в Челябинске», на следующий день — «в Новосибирске», а еще через несколько дней — в Калифорнии: физически сделать это было бы крайне затруднительно. Конечно, существуют записи, но само ощущение выделения времени для обучения, кажется, помогает учиться.

Форматы отчётов о конференциях уже прижились на Хабре, а желание развиваться в условиях, когда сидишь дома, стало особенно сильным (надо же чем-то заниматься) — и тут возникает вопрос: конференций много… как посмотреть всё, что хочется посмотреть?

И здесь я подумал, что можно попробовать сделать отчет о конференции иного формата — не рассказать о том, что были за доклады (для этого я выложил отдельно «прямую текстовую трансляцию» с тех докладов, что я слушал), а написать статью, которая просуммирует выводы и актуальные тренды, укажет, куда стоит обратиться за актуальными знаниями.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 2

Мониторинг микросервисных приложений: взгляд SRE

Reading time 8 min
Views 12K


Современная инфраструктура — множество небольших приложений, запущенных в контексте одного менеджера приложений, который упра'вляет их количеством, обновлением и запросами на ресурсы. Она является таковой не потому, что админы решили, будто так удобно ею управлять. Такая инфраструктура отражает текущее мышление в области разработки программного обеспечения. Для того чтобы понять, почему мы сейчас говорим о микросервисной архитектуре как об идеологии, необходимо вернуться на 30 лет назад.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 6

Kubernetes, микросервисы, CI/CD и докер для ретроградов: советы по обучению

Reading time 7 min
Views 28K
Кажется, тема «зачем нужен Kubernetes», уже раздражает. Хочется сказать: «все кому надо — давно уже поняли», однако я разделил бы технических (и околотехнических) работников на тех, кто «понял и знает как использовать», и тех, кто «понял, но хочет знать, как сделать знания актуальными».

Возможно, вы менеджер, который последние 10 лет работал на одном и том же стеке; возможно, вы разработчик, который поддерживает старое решение или пишет на привычном языке в привычной среде. Возможно, вы просто перешли из технического в организационный менеджмент и вдруг выяснили, что все, что вы знали, больше не актуально, и хочется понять — есть ли какой-то относительно простой сценарий, как это можно догнать. Я постараюсь дать советы, основываясь на собственном опыте, — от человека, который осознал, что, находясь на организационном управлении, скоро будет выражаться словами «Kubernetes — это эффективная технология, мы должны стремиться к ее применению», не вполне понимая, что лежит за этими словами и за всей технической культурой, развившейся в последнее время.

Почему я считаю важным уметь менять парадигму технологического мышления?
Читать дальше →
Total votes 49: ↑43 and ↓6 +37
Comments 37

«Инженерия резильентности»: заметки с конференции REDeploy

Reading time 6 min
Views 1.1K


Пока конференции по всему миру ищут оптимальные форматы в онлайне, самое время вспомнить, как они (да и все мы) жили в довирусную эпоху. В конце прошлого года я посетил конференцию REDeploy 2019, посвященную Resilience Engineering. Очень долго пытался понять, как перевести этот термин на русский, пока не обнаружил, что термин уже давно применяется в неайтишных нишах — как «инженерия резильентности». Дальше следовало бы написать определение резильентности, но одним простым предложением это сделать сложно. А ещё оказалось, что темы, поднятые полгода назад, весьма актуальны и в нашей новой реальности.

Прежде всего, важно понять, что инженерия резильентности — это кросс-дициплинарная область науки, которая целью своей ставит исследование, формализацию и формирование практик, повышающих способность сложных социо-технических систем быть готовыми к нестандартным ситуациям и авариям, адаптироваться к ним и улучшать свои способности к адаптации.

Долгие годы в процессе разработки программного обеспечения превалировала механистическая картина мира — вера в то, что мы способны разработать программное обеспечение, которое будет работать без аварий, а если авария и произойдет, у неё будет некая коренная причина (root cause), исправив которую, можно предотвратить повторение подобных ошибок в будущем — и, таким образом, поскольку число ошибок конечно, в итоге исправить все ошибки, приводящие к авариям (см. отличную статью Dev, Ops и Determinism про это).

Этот же «инженерный» подход применяется и к тому, как взаимодействуют во время аварии люди: достаточно создать некий инструментарий, воспользовавшись которым, люди смогут исправить проблему (при этом не допуская ошибок).
Читать дальше →
Total votes 14: ↑14 and ↓0 +14
Comments 3

Как подготовить сайт к росту нагрузки

Reading time 4 min
Views 5.9K


Только ленивый не достал с дальней полки свою экспертность и не предсказал «онлайнизацию» жизни — такую же вынужденную, как и режим самоизоляции. Но трафик, действительно, уже начал расти, а с учётом «каникул» до конца апреля ресурсы, предлагающие доставку товаров, услуги онлайн-образования и, особенно, онлайн-развлечений, могут оказаться не готовыми к потоку посетителей в новой реальности.

Опираясь на свой 12-летний опыт технической поддержки веб-проектов и удалённого администрирования серверов, мы подготовили своего рода «методичку»: что стоит проверить и о чём нужно позаботиться, если вы хотите быть уверенным, что ваш сайт справится с любой нагрузкой. Ну, почти любой.

Итак, вот 10 пунктов, которые критичны для активной жизни вашего веб-проекта в ближайшие дни и недели:
Читать дальше →
Total votes 32: ↑31 and ↓1 +30
Comments 8

Читать_нельзя_бросать

Reading time 4 min
Views 12K
На минувшей неделе в городе И случился книжный фестиваль. Случился уже в третий раз. С одной стороны, это иркутский фестиваль, с другой — международный: приехали Эрленд Лу, Линор Горалик, Мариам Петросян и ещё с десяток авторов солидной известности. Мы пока в книжной области такой известности не достигли, но тем не менее представили на фестивале своё издательство ITSumma Press и нашу первую книгу. И самый частый вопрос, который нам задавали, — «зачем айти-компании издательство?»

Мы уже писали о том, как готовились к изданию первой книги и с какими интересностями столкнулись на этом пути («а ну-ка покажи мне свой ISBN»). Но на этот вопрос ответ тогда толком не сформулировался. А сейчас он есть.
Читать дальше →
Total votes 33: ↑31 and ↓2 +29
Comments 5

Как мы тестировали несколько баз данных временных рядов

Reading time 7 min
Views 16K


За последние несколько лет базы данных временных рядов (Time-series databases) превратились из диковинной штуки (узкоспециализированно применяющейся либо в открытых системах мониторинга (и привязанной к конкретным решениям), либо в Big Data проектах) в «товар народного потребления». На территории РФ отдельное спасибо за это надо сказать Яндексу и ClickHouse’у. До этого момента, если вам было необходимо сохранить большое количество time-series данных, приходилось либо смириться с необходимостью поднять монструозный Hadoop-стэк и сопровождать его, либо общаться с протоколами, индивидуальными для каждый системы.

Может показаться, что в 2019-м году статья про то, какую TSDB стоит использовать, будет состоять лишь из одного предложения: «просто используйте ClickHouse». Но… есть нюансы.

Действительно, ClickHouse активно развивается, пользовательская база растет, а поддержка ведется очень активно, но не стали ли мы заложниками публичной успешности ClickHouse'а, которая затмила другие, возможно, более эффективные/надежные решения?

В начале прошлого года мы занялись переработкой нашей собственной системы мониторинга, в процессе которой встал вопрос о выборе подходящей базы для хранения данных. Об истории этого выбора я и хочу здесь рассказать.
Читать дальше →
Total votes 45: ↑39 and ↓6 +33
Comments 16

Как я стал докладчиком Percona Live (и несколько интригующих деталей с американской границы)

Reading time 6 min
Views 3.5K


Percona Live Open Source Database Conference — одно из главных мероприятий на календаре мира СУБД. Когда-то всё начиналось с разработки одного из форков MySQL, но потом сильно переросло прародителя. И хотя очень многие материалы (и посетители) всё ещё плотно связаны с тематикой MySQL, общий информационный фон стал значительно шире: это и MongoDB, и PostgreSQL, и другие менее популярные СУБД. В этом году «Перкона» стала значительным событием и на нашем календаре: впервые мы принимали участие в этой американской конференции. Как вы наверняка уже знаете, нас очень волнует состояние технологий мониторинга в современном мире. Со сдвигом инфраструктурных парадигм в сторону максимальной гибкости, микросервисов и кластерных решений должны меняться и сопутствующие инструменты и подходы в поддержке. О том, собственно, и был мой доклад. Но для начала хочу рассказать, как вообще попадают на штатовские конференции и какие сюрпризы могут ждать сразу после посадки самолёта.
Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Comments 7

Живут ли базы данных в Kubernetes?

Reading time 7 min
Views 19K


Как-то так исторически сложилось, что IT-индустрия по любому поводу разбивается на два условных лагеря: которые «за» и которые «против». Причем предмет споров может быть абсолютно произвольным. Какая ОС лучше: Win или Linux? На смартфоне Android или iOS? Хранить все в облаках или заливать на холодные RAID-хранилища и класть винты в сейф? Имеют ли PHP-шники право называться программистами? Эти споры носят, временами, исключительно экзистенциальный характер и не имеют под собой никакой прочей, кроме спортивного интереса, базы.

Так уж получилось, что с появлением контейнеров и всей этой любимой нами кухни с докером и условным k8s начались и споры «за» и «против» использования новых возможностей в различных сферах бэкэнда. (Заранее оговоримся, что хотя чаще всего в данном рассуждении в качестве оркестратора будет указываться Kubernetes, принципиального значения выбор именно этого инструмента не имеет. Вместо него можно подставить любой другой, какой вам кажется наиболее удобным и привычным.)

И, казалось бы, был бы это простой спор о двух сторонах одной медали. Такой же бессмысленный и беспощадный, как извечное противостояние Win vs Linux, в котором адекватные люди вполне себе существуют где-то посередине. Вот только в случае контейнеризации не все так просто. Обычно в таких спорах не бывает правой стороны, но в случае «применять» или «не применять» контейнеры для хранения БД все становится с ног на голову. Потому что в определённом смысле правы и сторонники и противники подобного подхода.
Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 69

Как выполнить 70 задач за день: жизнь в таск-трекерах — хорошая жизнь

Reading time 6 min
Views 43K


Систематически вести задачи я пытался, наверное, раз 20-25. И каждая попытка срывалась, как теперь я понимаю, по двум причинам.

Во-первых, для того, чтобы выделять время ведению задач, нужно понять — зачем это делается.
Ты начинаешь вести задачи, тратить на это время, делаешь меньше задач, все это начинает копиться — во имя чего?

Любую работу сложно вести, когда ты не понимаешь, для чего. «Упорядочить жизнь» — не самая адекватная цель, так как «упорядоченная жизнь» — это достаточно размытое явление. А вот «снизить уровень тревоги, снизив уровень неизвестности» — цель гораздо конкретнее и лучше, на которую вполне можно потратить час в день.

Во-вторых, все методологии, которые я читал, описывают сразу конечное состояние процесса. «Вам нужно взять ToDoIst, разбить по проектам, интегрировать с календарем, делать ревью задач за неделю, приоритезировать их…» Это сложно начать делать сразу. Как и в программной разработке, я считаю, что нужно пользоваться методом прогрессивного джпега — итеративно.

Поэтому пройдусь по своим “итерациям”, и, может быть, в таком же виде это пригодится и вам. В конце концов, чем не повод использовать майские каникулы, чтобы выйти на работу, используя новую (относительно) парадигму?

А как я к этому пришёл, можно прочитать здесь.
Читать дальше →
Total votes 52: ↑40 and ↓12 +28
Comments 54

Как IT-компания книжное издательство открывала — и выпустила книгу про Kafka

Reading time 7 min
Views 8.1K


В последнее время некоторым начинает казаться, будто такой «консервативный» источник информации как книга начинает сдавать позиции и теряет актуальность. А зря: несмотря на то, что мы уже живём в эпоху цифровую и вообще работаем в IT, книжки мы любим и уважаем. Особенно такие, которые не просто учебник по конкретной технологии, а реальный источник общего знания. Особенно такие, которые не потеряют актуальность полгода спустя. Особенно такие, которые написаны хорошим языком, грамотно переведены и красиво оформлены.
И знаете, что оказалось? Таких книг нет.

Либо — либо — либо. А вот этой прекрасной книги, в которой сочетается всё, что думающий и практикующий специалист ценит, — её нет.

Поэтому мы решили, что она должна быть. И не одна — таких книг должно быть много. Решили — и открыли собственное издательство ITSumma Press: возможно, первое издательство в России, созданное IT-компанией.

Было потрачено много сил, времени и порядком денег. Но вот за день до конференции Uptime day 4 мы получили пилотный тираж и подержали первую изданную нами книгу в руках (весь тираж подарили участникам конференции в итоге). Невероятное ощущение! Никогда заранее не знаешь, куда в итоге может тебя привести твоя тяга к прекрасному. Первая книга, по понятным причинам, была своеобразным пробным шаром. Нам нужно было самим прощупать весь процесс книгоиздательства, понять, что мы можем привнести сразу, а над чем нужно будет подумать ещё. И по итогу мы остались очень довольны результатом. Это важное дело, которое мы хотим продолжать и развивать. А в этом тексте хочу просто рассказать, с чего всё начиналось, как мы спорили про название, как заключили договор с, ни много, ни мало, самими O’Reilly и сколько редактур надо провести, прежде чем отдать текст в прод в типографию.
Читать дальше →
Total votes 40: ↑38 and ↓2 +36
Comments 12

Мониторинг мёртв? — Да здравствует мониторинг

Reading time 15 min
Views 34K


Наша компания с 2008 года занимается преимущественно управлением инфраструктурами и круглосуточной технической поддержкой веб-проектов: у нас более 400 клиентов, это порядка 15% электронной коммерции России. Соответственно, на поддержке очень разнообразная архитектура. Если что-то падает, мы обязаны в течение 15 минут это починить. Но чтобы понять, что авария произошла, нужно мониторить проект и реагировать на инциденты. А как это делать?

Я считаю, что в организации правильной системы мониторинга происходит беда. Если бы беды не было, то мой спич состоял из одного тезиса: «Установите, пожалуйста, Prometheus + Grafana и плагины 1, 2, 3». К сожалению, теперь так не работает. И главная проблема заключается в том, что все продолжают верить во что-то такое, что существовало в 2008 году, с точки зрения программных компонентов.

В отношении организации системы мониторинга я рискну сказать, что… проектов с грамотным мониторингом не существует. И ситуация настолько плохая, если что-то упадёт, есть риск, что это останется незамеченным — все ведь уверены, что «всё мониторится».
Возможно, всё мониторится. Но как?

Все мы сталкивались с историей наподобие следующей: работает некий девопс, некий админ, к ним приходит команда разработчиков и говорит — «мы зарелизились, теперь замониторь». Что замониторь? Как это работает?

Ок. Мониторим по старинке. А оно уже изменяется, и выясняется, что ты мониторил сервис А, который стал сервисом B, который взаимодействует с сервисом C. Но команда разработчиков тебе говорит: «Поставь софт, он же должен все замониторить!»

Так что изменилось? — Всё изменилось!
Читать дальше →
Total votes 62: ↑56 and ↓6 +50
Comments 24

«Как перестать гореть», или о проблемах входящего потока информации современного человека

Reading time 12 min
Views 52K


В 20-м веке жизнь и работа людей шли по плану. На работе (упрощая — можно представить завод) у людей имелся четкий план на неделю, на месяц, на год вперед. Упрощая: тебе надо выпилить 20 деталей. Никто не придет и не скажет, что деталей теперь надо выпилить 37, а кроме того, написать статью с размышлениями о том, почему форма этих деталей именно такая — и желательно вчера.

В обыденной жизнь людей было примерно так же: форс-мажор был реальным форс-мажором. Нет сотовых телефонов, тебе не может позвонить друг и попросить «срочно приехать помочь решить проблему», ты живешь на одном месте практически всю жизнь («переезд как пожар»), а помочь родителям вообще думал «приехать в декабре на неделю».

В этих условиях сформировался культурный код, где ты чувствуешь себя удовлетворенным, если выполнил все задачи. И это было реально. Невыполнение всех задач — отклонение от нормы.
Сейчас все иначе. Орудием труда стал интеллект, и в рабочих процессах необходимо его использовать в разных ипостасях. Современный менеджер (особенно топ-менеджер) проходит через десятки задач разного типа в течение дня. А главное — управлять количеством «входящих сообщений» человек не может. Новые задачи могут отменить старые, изменить их приоритет, изменить саму постановку старых задач. В этих условиях сформировать заранее план и потом его выполнять поэтапно практически невозможно. Ты не можешь на прилетевшую задачу «у нас срочный запрос от налоговой, надо ответить сегодня, иначе штраф» сказать «запланирую на следующую неделю».

Как с этим жить — чтобы оставалось время на жизнь вне работы? И можно ли применить какие-то рабочие алгоритмы менеджмента в повседневной, бытовой жизни? 3 месяца назад я кардинальным образом поменял всю систему постановки задач и контроля за ними. Хочу рассказать, как я к этому пришёл и что в итоге получилось. Пьеса будет в 2 частях: в первой — немножко про, если так можно выразиться, идеологию. А вторая — целиком про практику.
Читать дальше →
Total votes 68: ↑65 and ↓3 +62
Comments 42

Uptime day: 12 апреля, полёт нормальный

Reading time 3 min
Views 2.1K


«Да чего же ждать от конференций? Сплошь танцовщицы, вино, гулянки» — шутил герой фильма «Послезавтра».

Наверное, на каких-то конференциях и не такое бывает (делитесь историями в комментах), но на it-сборищах обычно вместо вина пиво (по завершении), а вместо танцовщиц — «танцы» с кодами и информационными системами. 2 года назад мы тоже вписались в эту хореографию, организовав конференцию Uptime day. В этом апреле, на День космонавтики, мы проводим её уже в четвёртый раз — традиционно бесплатно и традиционно под аккомпанемент вопросов «зачем вам это надо?»
На весеннем Uptime day будем говорить об организации резервирования веб-проектов со сложной распределённой архитектурой — способам переключения с боевого окружения на резервное, а также разбору различных сценариев отката и переключения на резервную площадку в случае неудачного деплоя.

А зачем нам это надо?.. Об этом под катом. И о том, чем вам будет полезна конференция Uptime day.
Читать дальше →
Total votes 23: ↑23 and ↓0 +23
Comments 4

Apache Kafka и RabbitMQ: семантика и гарантия доставки сообщений

Reading time 17 min
Views 63K


Подготовили перевод следующей части многосерийной статьи, где сравнивается функциональность Apache Kafka и RabbitMQ. В этой публикации речь идёт о семантике и гарантии доставки сообщений. Обращаем ваше внимание, что автор учитывал Кафку до версии 0.10 включительно, а в версии 0.11 появился exactly-once. Тем не менее, статья остаётся актуальной и полна полезных с практической точки зрения моментов.
Предыдущие части: первая, вторая.
Читать дальше →
Total votes 34: ↑34 and ↓0 +34
Comments 2

Миграция с Mongo на Postgres: опыт газеты The Guardian

Reading time 13 min
Views 19K
image

The Guardian — одна из крупнейших британских газет, она основана в 1821 году. За без малого 200 лет существования архив накопился изрядный. По счастью, далеко не весь он хранится на сайте — всего за какие-то последние пару десятков лет. В базе данных, которую сами англичане назвали «источником истины» для всего онлайн-контента, около 2,3 млн элементов. И в один прекрасный момент они осознали необходимость миграции с Mongo на Postgres SQL — после того, как одним жарким июльским днём в 2015 году процедуры аварийного переключения были подвергнуты суровому испытанию. Миграция заняла без малого 3 года!..

Мы перевели статью, в которой рассказывается, как проходил процесс миграции и с какими сложностями столкнулись администраторы. Процесс долгий, но резюме простое: приступая к большой задаче, смиритесь, что ошибки будут обязательно. Но в конечном итоге, 3 года спустя, британским коллегам удалось отпраздновать окончание миграции. И поспать.
Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 37

«Надежность и безотказность как в Google» — и не только: перевод статьи «Расчёт надёжности сервиса»

Reading time 14 min
Views 25K
image

Главная задача коммерческих (да и некоммерческих тоже) сервисов — быть всегда доступными для пользователя. Хотя сбои случаются у всех, вопрос в том, что делает IT-команда для их минимизации. Мы перевели статью Бена Трейнора, Майка Далина, Вивек Рау и Бетси Бейер «Расчёт надёжности сервиса», в которой рассказывается, в том числе, на примере Google, почему 100% — неверный ориентир для показателя надежности, что такое «правило четырёх девяток» и как на практике математически прогнозировать допустимость крупных и мелких отключений сервиса и\или его критических компонентов — ожидаемое количество простоя, время обнаружения сбоя и время восстановления сервиса.
Читать дальше →
Total votes 29: ↑28 and ↓1 +27
Comments 4

Information

Rating
Does not participate
Location
Россия
Works in
Date of birth
Registered
Activity