Для тех, кому скучно читать всю книгу Site Reliability Engineering
👇 всего одна глава (почти как саммари) 👇
https://landing.google.com/sre/book/chapters/service-best-practices.html
👇 всего одна глава (почти как саммари) 👇
https://landing.google.com/sre/book/chapters/service-best-practices.html
Ребята! Я заболел 🤒🤕
Но уже выздоравливаю. Прилетел, и на следующий день заболел. Очень обидно(
А пока я поправляюсь, посмотрите какую крутую статью написал Юра Рочняк в блоге на медиуме:
https://medium.com/preply-engineering/lambda-edge-and-where-to-find-it-92b7c9c37f22
🔹Во-первых, у него в Preply все очень неплохо, и хорошая экспертиза в serverless-related штуках;
🔹Во-вторых, завести блог, да еще и на английском - многого стоит.
🔹В-третьих, это действительно технически грамотная статья о Lambda@Edge + Cloudfront + Terraform;
Preply, you rock! 👍👍👍 (нажамкайте Юре пальцев вверх, и наверное он напишет еще что-то полезное)
Но уже выздоравливаю. Прилетел, и на следующий день заболел. Очень обидно(
А пока я поправляюсь, посмотрите какую крутую статью написал Юра Рочняк в блоге на медиуме:
https://medium.com/preply-engineering/lambda-edge-and-where-to-find-it-92b7c9c37f22
🔹Во-первых, у него в Preply все очень неплохо, и хорошая экспертиза в serverless-related штуках;
🔹Во-вторых, завести блог, да еще и на английском - многого стоит.
🔹В-третьих, это действительно технически грамотная статья о Lambda@Edge + Cloudfront + Terraform;
Preply, you rock! 👍👍👍 (нажамкайте Юре пальцев вверх, и наверное он напишет еще что-то полезное)
Medium
Lambda@Edge: run your code at CloudFront
This article will illustrate the perks of working with Lambda@Edge and show how to run your code at CloudFront.
Уууух как круто прошла конфа! 😎
Мне понравилось, что ребята из fwdays очень классно проработали все моменты: после обеда были лайтовые доклады на общие темы, а хардкор примерно в 12 (когда все уже проснулись, но еще не устали). Очень порадовали сами доклады и треки - сложно было выбрать что и куда идти, хотелось быть везде и одновременно))
Отдельно могу отметить юмор Александра Соловьева из "магазина одежды", топ-хедлайнера конференции, он очень позитивно завершил этот продуктивный день. 👆
В целом впечатления крайне положительные, не считая непонятного мне конфьюза с Svitla systems, однозначно пойду в 2019.
Для тех кто не попал, или был на OSDN есть записи докладов по трекам:
🔥main stage: https://www.youtube.com/watch?v=MbZgXZBxgV8
🔥track a: https://www.youtube.com/watch?v=sVhsY-kYi0Y
🔥track b: https://www.youtube.com/watch?v=i5-sFUqVhrs
🔥track c: https://www.youtube.com/watch?v=Lxop86CIfg0
Расписание докладов (для навигации) есть на сайте:
▶️ https://fwdays.com/en/event/highload-fwdays-2018#program-event
А я пошел внедрять на практике этих всех сферический коней в вакууме 🙈
Мне понравилось, что ребята из fwdays очень классно проработали все моменты: после обеда были лайтовые доклады на общие темы, а хардкор примерно в 12 (когда все уже проснулись, но еще не устали). Очень порадовали сами доклады и треки - сложно было выбрать что и куда идти, хотелось быть везде и одновременно))
Отдельно могу отметить юмор Александра Соловьева из "магазина одежды", топ-хедлайнера конференции, он очень позитивно завершил этот продуктивный день. 👆
В целом впечатления крайне положительные, не считая непонятного мне конфьюза с Svitla systems, однозначно пойду в 2019.
Для тех кто не попал, или был на OSDN есть записи докладов по трекам:
🔥main stage: https://www.youtube.com/watch?v=MbZgXZBxgV8
🔥track a: https://www.youtube.com/watch?v=sVhsY-kYi0Y
🔥track b: https://www.youtube.com/watch?v=i5-sFUqVhrs
🔥track c: https://www.youtube.com/watch?v=Lxop86CIfg0
Расписание докладов (для навигации) есть на сайте:
▶️ https://fwdays.com/en/event/highload-fwdays-2018#program-event
А я пошел внедрять на практике этих всех сферический коней в вакууме 🙈
Для тех, кто любит смотреть конференции на работе 😂
Подьехала запись докладов с OSDN (спасибо Mykola Marzhan).
Доклады удобно порезаны на видео, рекомендую посмотреть на Lennart Poettering - создателя systemd.
https://www.youtube.com/playlist?list=PL_O8YSX8ckffdJPhMNU87ZgVqq5Y-OAGj&disable_polymer=true
Подьехала запись докладов с OSDN (спасибо Mykola Marzhan).
Доклады удобно порезаны на видео, рекомендую посмотреть на Lennart Poettering - создателя systemd.
https://www.youtube.com/playlist?list=PL_O8YSX8ckffdJPhMNU87ZgVqq5Y-OAGj&disable_polymer=true
Если у вас github и kubernetes манифесты - эта штука будет очень кстати: она интегрируется прямо в репозиторий (вкладка Checks) и следит, чтобы все было в порядке.
▶️ https://github.com/urcomputeringpal/kubevalidator
Но даже если у вас не github, то можете запилить проверку прямо в CI процесс:
▶️ https://github.com/garethr/kubeval
Полезно?
▶️ https://github.com/urcomputeringpal/kubevalidator
Но даже если у вас не github, то можете запилить проверку прямо в CI процесс:
▶️ https://github.com/garethr/kubeval
Полезно?
GitHub
urcomputeringpal/kubevalidator
A GitHub App that uses kubeval to validate all of that Kubernetes YAML in your repo - urcomputeringpal/kubevalidator
Импорт/экспорт Grafana dashboards
Пришла мне таска - взять все существующие дашборды для графаны, немного их подкрутить, и пушнуть туда же как новые. Темплейтинг заюзать нельзя - оно там все супер-динамическое с завязкой на свой датасорс для каждого конкретного хоста. Короче - гемор.
И этих дашбордов более нескольких десятков.
Сразу дока, API - и погнали. Есть на импорт/экспорт, а значит кто-то уже писал автоматизацию.
Полез я в интернет, и сразу наткнулся на github gists, где разные ребята в коментах писали свои версии скриптов. Но вроде же дожно быть что-то более продакшн реди? И да, есть либа:
💥 https://github.com/hagen1778/grafana-import-export
Она заэкспортила дашборды, и пришла очередь фиксить json.
Для этого есть тулза jq, не самая удобная, но работает. Пример, где в slug меняется поле:
Датасорсы в графиках лучше менять с помощью sed:
Обязательно нужно поменять title - иначе ничего работать не будет (упадет с ошибкой):
Это все очевидные вещи, но в конце ждал сюрприз. Ошибка
После этого дашборды заэкспортились и все взлетело.
Надеюсь, сохранил вам несколько часов гугления и набивания шишек 😄
Пришла мне таска - взять все существующие дашборды для графаны, немного их подкрутить, и пушнуть туда же как новые. Темплейтинг заюзать нельзя - оно там все супер-динамическое с завязкой на свой датасорс для каждого конкретного хоста. Короче - гемор.
И этих дашбордов более нескольких десятков.
Сразу дока, API - и погнали. Есть на импорт/экспорт, а значит кто-то уже писал автоматизацию.
Полез я в интернет, и сразу наткнулся на github gists, где разные ребята в коментах писали свои версии скриптов. Но вроде же дожно быть что-то более продакшн реди? И да, есть либа:
💥 https://github.com/hagen1778/grafana-import-export
Она заэкспортила дашборды, и пришла очередь фиксить json.
Для этого есть тулза jq, не самая удобная, но работает. Пример, где в slug меняется поле:
jq '(.meta.slug |= "aws-" + .)' $filename - на поиск синтаксиса ушло 2 чашки чая 🙁 Датасорсы в графиках лучше менять с помощью sed:
sed 's/"datasource": "influxdb"/"datasource": "new-datasource"/g' - через jq тяжело обойти все вложенные ключи, и не сломать лишнего Обязательно нужно поменять title - иначе ничего работать не будет (упадет с ошибкой):
jq '(.dashboard.title |= "AWS | " + .)' $filename - тут добавляется 'AWS | ' и существующее имя дашборда Это все очевидные вещи, но в конце ждал сюрприз. Ошибка
The dashboard has been changed by someone else. Хм, что же это значит? Сразу мысль подсказала посмотреть на ключи version и id. Ключа с версией небыло, а вот id был. Где-то на гитхабе советовали засетить его как null, или вообще удалить. Ну я и удалил: jq 'del(.dashboard.id)' $filenameПосле этого дашборды заэкспортились и все взлетело.
Надеюсь, сохранил вам несколько часов гугления и набивания шишек 😄
GitHub
GitHub - hagen1778/grafana-import-export: shell scripts for importing and exporting Grafana's dashboards and datasources
shell scripts for importing and exporting Grafana's dashboards and datasources - hagen1778/grafana-import-export
Давайте поменяем Bamboo на Concource CI
Если у кого-то проблемы проблемы с Jenkins/Travic/Circle/otherCI/etc, то скорее всего причина не в туле: причина в подходе
https://cintia.me/blog/post/ci-tool/
Если у кого-то проблемы проблемы с Jenkins/Travic/Circle/otherCI/etc, то скорее всего причина не в туле: причина в подходе
There’s no perfect CI. They all have different features https://cintia.me/blog/post/ci-tool/
Someone else's computer
Changing your CI tool won't fix your broken pipelines - Someone else's computer
If you think your problem is your CI tool, think again.Chances are it’s just a knee jerk reaction. You probably have a problem with your pipelines.
Знакомьтесь: это Volodymyr Tsap, у него своя девопс-контора и он зарабатывает явно больше 6.9к 💵💵💵
Как? Что нужно учить? Что нужно знать?
Обычно о таких вещах не рассказывают. Он уже провел миллион собеседований, и готов поделится что нужно качнуть для 6.9к 🔥🔥🔥
Думаю, такая инфа стоит явно дороже билета на конфу:
https://devopsstage.com/
P.S. Вова, будешь должен!
Как? Что нужно учить? Что нужно знать?
Обычно о таких вещах не рассказывают. Он уже провел миллион собеседований, и готов поделится что нужно качнуть для 6.9к 🔥🔥🔥
Думаю, такая инфа стоит явно дороже билета на конфу:
https://devopsstage.com/
P.S. Вова, будешь должен!
Если кто-то выпал на месяц и очень об этом сожалеет: актуальный девопс-дайджест:
https://dou.ua/lenta/digests/devops-digest-22/
Еще недавно проскакивала статейка, как стать девопсом (формулировка 😂):
https://dou.ua/lenta/articles/senior-devops/
И еще по версии DOU в разделе DevOps в среднем всего 1,6 отклика на вакансию: это отлично. Есть спрос, но маловато предложения. 😎
https://dou.ua/lenta/digests/devops-digest-22/
Еще недавно проскакивала статейка, как стать девопсом (формулировка 😂):
https://dou.ua/lenta/articles/senior-devops/
И еще по версии DOU в разделе DevOps в среднем всего 1,6 отклика на вакансию: это отлично. Есть спрос, но маловато предложения. 😎
ДОУ
DevOps дайджест #22: конференции, Linkerd 2.0, как работают контейнеры
В выпуске: улучшения в интеграции Consul и Kubernetes, как выжать из Grafana максимум, как запускать Lambda на CDN, критика Helm.
Нашел очень интересный топик на Stackoverflow, там есть сравнение основных решений по генерации Kubernetes манифестов: Helm vs Draft vs Ksonnet
https://stackoverflow.com/a/48896587/5004288
Что интересно, в SRE Workbook написано: для простых апок и инфраструктур делайте YAML (как удобно, helm etc - не важно), а для средне-сложных смотрите на jsonnet/ksonnet. (Это не точная цитата). Я задался вопросом, почему так - и нашел ответ по ссылке.
Решения на основе json предоставляют более гибкий интерфейс для шаблонизации и использования, это больше как конструктор. Он позволяет извращаться в любых формах, в то время как Helm - уже готовое решение.
https://stackoverflow.com/a/48896587/5004288
Что интересно, в SRE Workbook написано: для простых апок и инфраструктур делайте YAML (как удобно, helm etc - не важно), а для средне-сложных смотрите на jsonnet/ksonnet. (Это не точная цитата). Я задался вопросом, почему так - и нашел ответ по ссылке.
Решения на основе json предоставляют более гибкий интерфейс для шаблонизации и использования, это больше как конструктор. Он позволяет извращаться в любых формах, в то время как Helm - уже готовое решение.
Stack Overflow
Draft and Helm vs Ksonnet?
As I understand all of these tools Draft,Helm and Ksonnet have overlapping functionality such as creating a chart as well as deploying kubernetes configurations.
I understand that purpose of thes...
I understand that purpose of thes...
Смотрите, что меня попросили вам показать:
https://hackit.ua/
Достаточно неплохие докладчики (СЕО, Founders, CTO) и конкурсы интересные 😂
И промокод на -55%:
За инфу и промо спасибо Алексею Барабашу, DevOps Team Lead в NDA 👆👆👆
https://hackit.ua/
Достаточно неплохие докладчики (СЕО, Founders, CTO) и конкурсы интересные 😂
И промокод на -55%:
DOORKEYSЗа инфу и промо спасибо Алексею Барабашу, DevOps Team Lead в NDA 👆👆👆
Дедушка
Нетехнический пост, но очень важный: позвоните своим родным. Скажите как вы их любите.
Дедушкам, бабушкам, маме и папе.
Кажется, что они будут с нами всегда. Но это не так.
Сделайте то, что хотели сделать. И не откладывайте.
У меня очень неожиданно умер Дедушка.
На этой неделе здесь не будет постов. Извините.
Нетехнический пост, но очень важный: позвоните своим родным. Скажите как вы их любите.
Дедушкам, бабушкам, маме и папе.
Кажется, что они будут с нами всегда. Но это не так.
Сделайте то, что хотели сделать. И не откладывайте.
У меня очень неожиданно умер Дедушка.
На этой неделе здесь не будет постов. Извините.
FYI: в AWS NLB можно прицепить Elastic IP (для меня было неожиданно):
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html
Support for static IP addresses for the load balancer. You can also assign one Elastic IP address per subnet enabled for the load balancer.
https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html
Amazon
What is a Network Load Balancer? - Elastic Load Balancing
Automatically distribute incoming traffic across multiple targets using a Network Load Balancer.
Long-term datastore for Prometheus:
(starting points)
▶️ https://github.com/improbable-eng/thanos
- additional storage implementation: AWS S3, Google Cloud Storage
▶️ https://github.com/cortexproject/cortex
- patched Prometheus setup with new storage features
(starting points)
▶️ https://github.com/improbable-eng/thanos
- additional storage implementation: AWS S3, Google Cloud Storage
▶️ https://github.com/cortexproject/cortex
- patched Prometheus setup with new storage features
Learn HashiCorp: how to provision, secure, connect, and run any infrastructure for any application.
Пока только Vault, но скоро будут и остальные сервисы.
https://learn.hashicorp.com/
Пока только Vault, но скоро будут и остальные сервисы.
https://learn.hashicorp.com/
Tutorials | HashiCorp Developer
Start learning with step-by-step, hands-on, command-line tutorials, videos, and hosted terminal sessions. Actionable examples help you learn to provision, secure, connect, or run any application on any infrastructure.
Это фиаско, братан: IBM покупает Red Hat за $34 млрд
И вероятно, это не очень хорошая новость: куча опенсорса также переходит под управление IBM. Судя по всему, команда разработки тоже переходит в IBM.
Интересно понаблюдать за Ansible - это будет показательное выступлене. Что в результате сделает IBM и как это повлияет на нас с вами.
Нажамкайте плиз пальцев вверх, если нравится эта новость, и краба - если нет.
https://techcrunch.com/2018/10/28/ibm-to-buy-red-hat-for-34b-in-cash-and-debt-taking-a-bigger-leap-into-hybrid-cloud/
И вероятно, это не очень хорошая новость: куча опенсорса также переходит под управление IBM. Судя по всему, команда разработки тоже переходит в IBM.
Интересно понаблюдать за Ansible - это будет показательное выступлене. Что в результате сделает IBM и как это повлияет на нас с вами.
Нажамкайте плиз пальцев вверх, если нравится эта новость, и краба - если нет.
https://techcrunch.com/2018/10/28/ibm-to-buy-red-hat-for-34b-in-cash-and-debt-taking-a-bigger-leap-into-hybrid-cloud/
TechCrunch
IBM to buy Red Hat for $34B in cash and debt, taking a bigger leap into hybrid cloud
After rumors flew around this weekend, IBM today confirmed that it would acquire open source, cloud software business Red Hat for $190 per share in cash, working out to a total value of $34 billion. IBM said the deal has already been approved by the boards…
В прошлый раз на XPdays Пол Стек приехал подрихтованным: фингал под глазом, нет переднего зуба, и распухшее лицо.
Оказывается, что это его начистили в Киевском баре: сказал, что Nomad лучше. 😂
В этом году он тоже будет защищать честь Hashicorp (он там работал), и я буду 100% - просто обязан это увидеть 🙂
Про XPdays можно сказать много хорошего: топовые спикеры, среди которых сам Mikalai Alimenkou (организатор), там будут выступать ребята из моей компании (привет Ярик и Женя), отработанные организационные моменты и много чего еще.
Я ограничусь вот чем: если я за день не узнал ничего нового, то день прошел зря. XPdays дает фору на пару недель вперед. Обожаю такие штуки, когда можно качнуться за короткий период времени 🔥
Билеты: https://xpdays.com.ua/registration/
Промо на 10%:
Оказывается, что это его начистили в Киевском баре: сказал, что Nomad лучше. 😂
В этом году он тоже будет защищать честь Hashicorp (он там работал), и я буду 100% - просто обязан это увидеть 🙂
Про XPdays можно сказать много хорошего: топовые спикеры, среди которых сам Mikalai Alimenkou (организатор), там будут выступать ребята из моей компании (привет Ярик и Женя), отработанные организационные моменты и много чего еще.
Я ограничусь вот чем: если я за день не узнал ничего нового, то день прошел зря. XPdays дает фору на пару недель вперед. Обожаю такие штуки, когда можно качнуться за короткий период времени 🔥
Билеты: https://xpdays.com.ua/registration/
Промо на 10%:
DEVOPSENG_SYDPX_18Если так сложилось исторически, что есть cron для чего либо, и его нужно менеджить, то лучше уже костылить полностью:
https://kray.me/2018/10/cron_monitoring_in_slack/
- для тех, кто рестартить сервис в кроне, который с memory leak
- для тех, кто стартует сервис в кроне, потому что тот постоянно падает
- для тех, кто запускает какие-то джобы приложения из крона
Накидайте плиз в личку (@mukolaich) как ризолвить такие штуки, а вечером расшарим инфу 🙂
Моя версия:
👉 https://aws.amazon.com/lambda - если AWS
👉https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/ - если кубер
👉https://github.com/mcuadros/ofelia - если докер
https://kray.me/2018/10/cron_monitoring_in_slack/
- для тех, кто рестартить сервис в кроне, который с memory leak
- для тех, кто стартует сервис в кроне, потому что тот постоянно падает
- для тех, кто запускает какие-то джобы приложения из крона
Накидайте плиз в личку (@mukolaich) как ризолвить такие штуки, а вечером расшарим инфу 🙂
Моя версия:
👉 https://aws.amazon.com/lambda - если AWS
👉https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/ - если кубер
👉https://github.com/mcuadros/ofelia - если докер
👆варианты от подписчиков:
🔹 если нельзя отказаться, лучше уже systemd cron: https://medium.com/horrible-hacks/using-systemd-as-a-better-cron-a4023eea996d
🔹 для рестарта бажных сервисов можно попробовать очень олдскульный монит: https://mmonit.com/
🔹 если нельзя даже systemd cron, то лучше накрутить сверху мониторинг: https://github.com/jamesrwhite/minicron и хоть как-то можно жить
🔹 и еще можно супервизор, он тоже в почете: https://supervisord.org/
Спасибо, ребят! ❤️
🔹 если нельзя отказаться, лучше уже systemd cron: https://medium.com/horrible-hacks/using-systemd-as-a-better-cron-a4023eea996d
🔹 для рестарта бажных сервисов можно попробовать очень олдскульный монит: https://mmonit.com/
🔹 если нельзя даже systemd cron, то лучше накрутить сверху мониторинг: https://github.com/jamesrwhite/minicron и хоть как-то можно жить
🔹 и еще можно супервизор, он тоже в почете: https://supervisord.org/
Спасибо, ребят! ❤️
Medium
Using systemd as a better cron
systemd is a pretty great way to schedule cron like tasks using Linux. In the past, I’ve used everything from cron to full blown…