ДевОпс Інженер 🇺🇦
5.04K subscribers
31 photos
4 videos
293 links
ДевОпс Інженер - авторський канал @mukolaich - Head of DevOps у SQUAD.

Я розглядаю технології та рішення, роблю огляд архітектурних проблем, включаючи контейнери, оркестратори, скейлінг, моніторинг, etc.
Download Telegram
5 июля в Киеве на Днепре пройдет Riverbed Cruise: конференция по реализации APM, нетворкингу в клаудах и частично сетевому железу.

Судя по описанию, полезно будет для тех, кто любит крутить SDN и самостоятельно строить WAN/LAN сети. 💻🖨

Прикольно, что эта вся движуха будет на теплоходе. 🚀

▶️ Больше информации тут: https://goo.gl/asD6Ei 📌
Интересная статья о CNI и о том, как выбрать сетку для Вашего кубера. Рассматриваются 7 самых популярных реализаций, есть сравнительная табличка с фичами 🏆

В целом ничего супер нового и прорывного, но вполне себе интересно и полезно. 🙏

📌 https://chrislovecnm.com/kubernetes/cni/choosing-a-cni-provider/
Ребята, кто уже успел обновиться на ELK 6.3.0

Натыкайте пальцев вверх, если уже обновились, пальцев вниз если нет, и краба - если у вас нет ELK 🔥

На всякий случай даю ссылку на релиз ноутс 😎
https://www.elastic.co/blog/elastic-stack-6-3-0-released

Обращаю внимание на Кибану - подвезли удобные автодополнения в строке поиска, быстрое создание графичков, вкладку с операциями для индексов в Elasticsearch и удобный ресайз графиков на дашбордах (примерно как в актуальной Grafana). Вот даже есть видео:
https://www.youtube.com/watch?v=q9R7r4ncaPY
UPD: 🔼🔼🔼

Вдогонку про Elasticsearch (если честно, то я поспешил и запостил про весь стек) - появилась поддержка SQL 🙈😳😱

Вот тут написано больше: https://www.elastic.co/blog/elasticsearch-6-3-0-released ◀️

Т.е. теперь будут работать запросы вида
SELECT … ORDER BY SCORE() DESC
и
SELECT … WHERE MATCH(fieldname, 'some text')


А еще они перевезли новую версию на Java 10 и зарелизили JDBC driver для всего этого. Капец!

Реализация очень ожидаемая: под капотом Elasticsearch транслирует SQL запрос в Elasticsearch DSL. Вот тут описано как именно: https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-translate.html

Спасибо, мужики! 🔥🔥🔥
Robert Gibb - чувак, о котором я никогда не слышал, расшарил довольно интересную инфу о Netflix в AWS. 😳

В общем, Нетфликс тратит в месяц $40.000.000 на всякие клаудные сервисы, и из этих денег $23.600.000 на AWS.

И вторая фишка - в ответе есть скриншот с разными клаудными сервисами. Можно попробовать отреверсинжинирить, и узнать их стэк 😱😝

Подобные цифры поражают, и становиться понятно - вот они, огромные инфраструктуры! В таких инфраструктурах цена решения очень высока, и реально эффорт от небольшой оптимизации будет огромен.
Например, Амазон зарелизил новый тип инстансов, который по CPU на 10% круче, чем прошлое поколение. В таком случае, при очень грубых подсчетах, экономия составит $22.000.000 в год.

Или какой-то SRE переписал тяжелую апку на Go, и теперь вместо кластера на 100500 серверов нужно 2 сервера. 😉

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

Где-то в кулуарах слышал историю, что ДевОпс инженер перевез ML проект с обычных инстансов на GPU-optimized, и после премии купил квартиру и дизельгейтную Audi A3. Не знаю, правда ли это, но теперь начинаю верить 😂😂😂

https://www.quora.com/How-much-does-Netflix-spend-on-Amazon-AWS/answer/Robert-Gibb
​​5 июля (четверг) после работы в 19:00 будет летний ДевОпс-митап, который проводит компания Levi9. 😱🙈

Всего ожидается 3 доклада:
👉 как тестировать  ДевОпс-штуки с помощью Behave фреймворка;
👉 дайв в ДевОпс-методологию и классификацию девопсов;
👉 как мигрировать продукт в клауд, чтобы было не больно;

Если учесть, что летом не так много DevOps митапов, то нужно идти) 🔥💥

▶️ Ссылка на FB: https://www.facebook.com/events/2013639988951071/
▶️ Регистрация тут: https://goo.gl/forms/mAWHGMbWIIq0T9Us2
Вчера релизнулся Kubernetes 1.11 🔥

Тут описано более кратко:
https://kubernetes.io/blog/2018/06/27/kubernetes-1.11-release-announcement/

А тут абсолютно все изменения:
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#kubernetes-111-release-notes

Кратко из интересного:
- CRD теперь можно сразу много версий
- в kubelet добавили гибкое конфигурирование по кластерам
- горячий ресайз Persistent Volumes (пока альфа)
- уже можно IPVS балансировку

А теперь про плохое. Мой коллега на KubeCon прыгал на батуте, и вывернул руку. 🤞

Мораль: не стоит прыгать на батуте на конференции по куберу. 😂
Гайз, подкинули крутую вакансию, и я подумал что вам тоже будет интересно 🔥🔥🔥

Хорошие знакомые попросили помочь строить DevOps в их стартапе в Киеве.

Ребята собрали ~5 млн долл инвестиций, и теперь строят лучший мультистримминговый сервис (это чтобы можно было видосики сразу во все места - и на ютуб, и твич, и фб одновременно).

Команда разработки оч сильная, и их лично менторит СТО из Facebook.

Какого девопса хотят:
👉 проактивного человека
👉 который умеет в CI/CD
👉 умеет в клауды (AWS, GCE)
👉 знает как делать Docker и Kubernetes

Что предлагают:
- $4500+ 😱
- опционы 😱

▶️ Описание вакансии: https://goo.gl/Gj327Z

▶️ А писать можете сразу Ане:
▶️ @tulinazavr
Суперская аналитика от DigitalOcean:

https://www.digitalocean.com/currents/june-2018/

Пока только ссылка, выводы немного позже! 😄
👆👆👆 Продолжение (выводы) 👆👆👆

1️⃣ Контейнеры везде - это видно издалека и сразу. Все кто уже заимплементил - красавчики, кто не успел - будут догонять и учится на опыте первых. В скором времени можно ожидать появление новых архитектур, уклон в сторону Serverless, возникновение новых еще более тонких технологий. Как вариант - юникернел, но это не точно.

2️⃣ Kubernetes и Swarm держат более 75% процентов рынка контейнеров. Это поддерживает гипотезу о MVP на докер сворм, а продакшн реди - на k8s. Получается странная ситуация - хоть Swarm и "мертвый" проект, но пользуется популярностью. Есть несколько вариантов - или Docker сам депрекейтнет поддержку (в ближайшее время сомнительно) или кубер станет сильно проще и удобнее для мелких проектов. Второй вариант прослеживается уже сейчас - появление кучи PaaS, оберток и врапперов возле кубера. Делать акцент на изучение Mesos/Nomad/другое я бы не стал.

3️⃣ Никто не хочет работать с компаниями в которых такой себе менеджмент, или технологии страдают. В то же время если зп сильно выше рынка - то все норм, можно работать.

Кстати, про рыночную зп. На доу появились свежие данные с последнего опроса - я, как всегда, отфильтрую инфу по DevOps и выложу сюда. Также у меня есть консерны по поводу актуальности зп на доу. Даже задумываюсь провести альтернативный опрос.

Не переключайтесь!
Подготовил данные по нашим ЗП: https://goo.gl/AFyuoJ

Это я взял из исходников последнего опроса на доу.

Что получается (для Киева, и для DevOps):
- это беглый взгляд, без аналитики 😱
- если зп 5к+ - то типа это красава, в среднем по рынку чуть меньше 🔥
- очень много киевских ребят с дельтой 3-4к, это типа норма 😉
- если меньше 3к - прецедент подумать что можно улучшить 🤔

Есть очень интересные ребята:
- Киев, 6,9к, продукт (мем или нет?)
- Одеса, 8к, продукт
- Киев, 7к, продукт

Получается ... Очень даже неплохо) 💵💵💵

Если что - меня можете там не искать, я не голосовал 😂

Вообще - о ЗП говорить не принято. Но это во всем остальном мире, в канале - можно.

Заряжаю всех на зп побольше 😇
Ого! Совсем скоро Jenkins можно будет в yaml! 🔥

https://jenkins.io/blog/2018/07/17/simple-pull-request-plugin/

Что это значит для нас:
- Jenkins этим решением начнет отжимать клиентов у других CI
- меньше Groovy
- будут таски на импрувмент - “а перепишите нам дженкинсфайл”
- проще будет понимать, что же происходит
- эта штука полюбому будет ломаться и не работать в первых итерациях 😒

Советую сыграть на опережение, и закинуть таску в беклог. 😉
Best practices - как уметь в контейнеры! (от Google) 🔥

▶️ Детальнее как всегда по ссылке, а тут - самое мясо:
1. один контейнер - один процесс (и сабпроцессы)
2. нужно уметь хендлить сигналы правильно
3. обязательно использовать докер кеш
4. чистить контейнер от всего ненужного по-максимуму
5. делать контейнер как можно меньше
6. правильно тегировать и версионирвать контейнеры
7. акуратно выбирать родительский паблик-имедж

https://cloudplatform.googleblog.com/2018/07/7-best-practices-for-building-containers.html

Очень даже достойные советы, говорят все знаменитые архитекторы их знают наизусть. 😂

Прямо сейчас иду на Go митап, если будет что-то супер интересное - вы будете в курсе. Хорошего вечера! 👍
Тестирование Docker имеджей

Docker имеджи тестируют не только лишь все. Вернее мало кто может это делать. 😂

Я прочитал все первые 10 результатов из Google, которые относятся к тестированию образов, и кое-что понял. 👇

Почти никто не тистирует имеджи после сборки.

Ну типа зачем - если есть проблема, то приложение даст знать. И это очень печально. Ведь по сути, Dockerfile - это набор консольных команд, порой очень замудреных, и не всегда очевидно как оно на самом деле должно отработать. И что мы ждем в результате.

▶️История тестирования примерно такова:
1. Сначала никто не тестировал 😱
2. Потом решили писать скрипт test_image.sh, копировать его в имедж, и там же его запускать (фейспалм)
3. Поняли что и так слишком много bash в этом мире, и врапнули goss. Получился dgoss (эволюция)
4. Google посмотрел на это все, и запилил container-structure-test (зачем?)
5. Мы сейчас тут

Субъективно container-structure-test не очень юзер френдли, а вот dgoss очень даже ничего.

Сами посмотрите:
👉 goss: https://github.com/aelsabbahy/goss
👉 dgoss: https://github.com/aelsabbahy/goss/tree/master/extras/dgoss
👉 container-structure-test: https://github.com/GoogleContainerTools/container-structure-test
Hey guys! Ну что, как дела? 😉

Есть немного апдейтов:
👉 18-го числа будет девопс-дайджест, так что если у кого-то ивент или есть новости - фил фри ту нотифай ми
👉 сейчас у меня небольшой trip в USA, и вот до этого времени реально не получалось ничего отписать
👉 кокосовая вода очень неприятная и невкусная, несмотря на все "рай, кокос, наслаждение"
👉 пляж в LA реально как в GTA

Теперь по теме: livenessProbe, readinessProbe 😂

Хорошая статья на почитать вечером перед сном или на работе с чаем о хелсчеках в кубере.
Там описана разница между livenessProbe и readinessProbe, общие принципы настройки и примеры (http, shell).
Это одна из концептуальных основ которые нужно знать, и в этой статье в общем есть все что нужно.

https://medium.com/spire-labs/utilizing-kubernetes-liveness-and-readiness-probes-to-automatically-recover-from-failure-2fe0314f2b2e
Подписчик посоветовал еще статейку на тему хелсчеков кубера:

Ну, теперь мы точно покрыли эту тему. Спасибо, Игорь! 🔥

https://cloudplatform.googleblog.com/2018/05/Kubernetes-best-practices-Setting-up-health-checks-with-readiness-and-liveness-probes.html
Друзья, девопсовое событие осени 🌧🌧🌧

Киев, 12-13 октября (это когда на улице все ужасно, а дома скучно) будет большая конфа DevOps Stage, с такими докладчиками:
▶️ Philipp Krenn из Elastic - отличный спикер, общался с ним в Натюрлихе, рекомендую
▶️ Jeffry Molanus - CTO at MayaData - считает себя Богом стореджей и спонсирует опенсорс, будет рассказывать про кубер
▶️ Thiago Assuncao de Faria - DevOps/AI Lead - готовил ML еще когда это небыло мейнстримом, и будет рассказывать как это все умное готовить в DevOps стиле
▶️ еще куча знаменитых чуваков, которых я не знаю

3 трека, 2 дня екшна, тусовка, куча пустых слотов в расписании, еда, троллинг - все как положено.

Пока еще можно купить билет за 150$ как early birds, но не забудьте спросить своего менеджера, есть ли у вас бюджет на конференции (а он скорее всего есть).

Лично я отношуcь очень тщательно к self-education и continious improvement, поэтому планирую быть на мастер-классе "The Phoenix Project DevOps Game" и 100% в первый день.

Как всегда, ссылка: https://goo.gl/UyMc5Q
И еще промокод на -10%: devopscommunity_promo_code 😱
Как стать топовым Kubernetes contributor
Я не знаю, но кое-какими мыслями поделюсь.

Вчера сходил на местный Kubernetes митап в Palo Alto. Если бы сегодня еще один был, я бы тоже пошел. Еда вкусная (пицца, жареная курица), пивас нормальный (не запомнил), спикеры мощные. 🍕🍺

У нас часто бывает, приходишь на конфу - а там лажа какая-то, ну реально. В долине такое, наверное, не прокатывает - аудитория очень лояльная, все ведут себя очень сдержанно, даже на спорных моментах. Люди просто встают, и идут пить пивас с пиццей. (см. выше) 👆

Подсмотрел на митапе 2 практики, которые и так знал:
👉 1. Записать демку на видос, и показывать видос
👉 2. Иметь в запасе суперсильного архитектора, который поможет ответить на стремные вопросы

Также очень понравилось, что ведущий был из Google и помогал менеджить все острые углы.
И в нем я для себя открыл несколько инсайтов:
👉 - он тоже человек
👉 - он контрибьютит в kubernetes/kubernetes

И я подумал, что интересно было бы тоже что-то поделать в кубере. Залез в ридмихи, и о боги!

Они тегают Issues, и среди этих тегов есть несколько интересных:
💥 help wanted: https://go.k8s.io/help-wanted
💥 good first issue: https://github.com/kubernetes/kubernetes/labels/good%20first%20issue

Если посмотреть немного дальше в Issues, то можно найти очень простые. Вот смотрите:
▶️ https://github.com/kubernetes/kubernetes/issues/58640

Это конечно не супер интересно, но поможет понять как у них настроены процессы, какие зоны ответственности, и т.д.

Резюмируя:
🔥 митапы в долине очень годные
🔥 мы тоже можем контрибьютить в такие крутые проекты
Для тех, кому скучно читать всю книгу Site Reliability Engineering

👇 всего одна глава (почти как саммари) 👇

https://landing.google.com/sre/book/chapters/service-best-practices.html