Forwarded from Админим с Буквой (bykva)
jinja как не ставить последнюю запятую в цикле
дано: переменная с количеством серверов
задача: составить строку вида
1) вместо последней запятой стоит /kafka
2) необходимо убрать newline который добавляется на каждом проходе
Решение:
з.ы. счет начинается с нуля, поэтому для красоты именования серверов инкрементирую переменную server.
#jinja #ansible #kafka #zookeeper
дано: переменная с количеством серверов
задача: составить строку вида
zookeeper.connect=zookeeper1:2181,zookeeper2:2181,zookeeper3:2181/kafkaв целом решается простым циклом for + 2 небольших нюанса:
1) вместо последней запятой стоит /kafka
2) необходимо убрать newline который добавляется на каждом проходе
Решение:
zookeeper.connect=все довольно просто - запятая ставится конструкцией
{%- for server in range(servers_count) -%}
zookeeper{{ server+1 }}:2181{% if not loop.last %},{% endif %}
{%- endfor %}/kafka
{% if not loop.last %},{% endif %}, а переносы строк убираются постановкой дефиса у открывающих и закрывающих тегов {% и %}.з.ы. счет начинается с нуля, поэтому для красоты именования серверов инкрементирую переменную server.
#jinja #ansible #kafka #zookeeper
Forwarded from DevOps Deflope News
Небольшой обзор решений для High availability и Long-term historical metrics для Prometheus 🔥
http://amp.gs/DSXO
И заодно расшифровка доклада про сравнение Thanos и VictoriaMetrics с Big Monitoring Meetup 4
http://amp.gs/DSXr
#prometheus #article
http://amp.gs/DSXO
И заодно расшифровка доклада про сравнение Thanos и VictoriaMetrics с Big Monitoring Meetup 4
http://amp.gs/DSXr
#prometheus #article
Monitoring Monitoring
Big Prometheus
Thanos, Cortex, M3DB and VictoriaMetrics at scale
Forwarded from Технологический Болт Генона
Запись митапа от киевской HashiCorp User Group
HUG Kyiv #7: Consul
https://www.youtube.com/watch?v=7DhZOtn8yYY
HUG Kyiv #7: Consul
https://www.youtube.com/watch?v=7DhZOtn8yYY
YouTube
HUG Kyiv #7: Consul
Програма:0:00:00 - Вступ0:00:29 - Поверхневий огляд Consul для тих кому хочеться все і відразу + consul-template. Якщо ви не працювали з Консулом, або ж ви д...
Forwarded from chiki_briki
А вдруг вам интересно послушать как устроен l3 баллансировщик в Яндекс Облаке?
Доклад конечно староват и за это время ребята успели реализовать к нему Anti-DDos, отловить и пофиксить кучку багов.
Видео: http://bit.ly/2Rd3RKF
Какие нюаньсики существуют сейчас?
Предположим, что за l3 у вас стоит nginx:
- если вы настроили 301 редирект с 80 на 443 порт, то http healthcheck вам не светит, делайте tcp. Видимо код ответа != 200 не подходит
- нужно не забыть изменить mss на nginx, если используете антидудос (http://bit.ly/2FPhSc8), к примеру через iptables:
- подвезли terraform для l3: http://bit.ly/2QOvNFI
- к сожалению нет никаких графиков
- нельзя создать «внутренний» (без белого ip) балансировщик
В догонку 31 января в 12:00 Нарек Татевосян проведет онлайн вебинар по построению отказоустойчивой инфраструктуры в Я.Облаке: http://bit.ly/2Tk50mj
Доклад конечно староват и за это время ребята успели реализовать к нему Anti-DDos, отловить и пофиксить кучку багов.
Видео: http://bit.ly/2Rd3RKF
Какие нюаньсики существуют сейчас?
Предположим, что за l3 у вас стоит nginx:
- если вы настроили 301 редирект с 80 на 443 порт, то http healthcheck вам не светит, делайте tcp. Видимо код ответа != 200 не подходит
- нужно не забыть изменить mss на nginx, если используете антидудос (http://bit.ly/2FPhSc8), к примеру через iptables:
INPUT Rules
-A INPUT -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1410
- подвезли terraform для l3: http://bit.ly/2QOvNFI
- к сожалению нет никаких графиков
- нельзя создать «внутренний» (без белого ip) балансировщик
В догонку 31 января в 12:00 Нарек Татевосян проведет онлайн вебинар по построению отказоустойчивой инфраструктуры в Я.Облаке: http://bit.ly/2Tk50mj
Forwarded from Go Дайджест
О, а вот о нагрузочном тестировании давно ничего не было слышно, но вот есть кое-что.
https://github.com/rogerwelin/cassowary
https://github.com/rogerwelin/cassowary
GitHub
GitHub - rogerwelin/cassowary: :rocket: Modern cross-platform HTTP load-testing tool written in Go
:rocket: Modern cross-platform HTTP load-testing tool written in Go - rogerwelin/cassowary
Forwarded from Записки админа
🛠 На самом деле, в 2020 веке, даже с повсеместным приходом облаков, bare-metal инсталляции никуда не делись, и процесс работы с ними так же нужно совершенствовать. Вот, например, есть QUADS - система для управления инфраструктурой и процессами в ней. Подготовка bare-metal серверов и сетей, ввод их в работу и вот это вот всё. Используется QUADS в Red Hat Performance Engineering R&D labs, как раз таки для управления всяческим железом, там же, он и разрабатывается. Подробнее по ссылкам ниже:
https://quads.dev/about-quads/
https://github.com/redhat-performance/quads
#фидбечат #quads #redhat
https://quads.dev/about-quads/
https://github.com/redhat-performance/quads
#фидбечат #quads #redhat
Подсмотрел сегодня в Церкви метрик ( @metrics_ru если кто не знал ) несколько ссылок на статьи Aliaksandr Valialkin в medium.com - разработчика Victoria Metrics:
Improving histogram usability for Prometheus and Grafana
https://medium.com/@valyala/improving-histogram-usability-for-prometheus-and-grafana-bc7e5df0e350
Prometheus storage: technical terms for humans
https://medium.com/@valyala/prometheus-storage-technical-terms-for-humans-4ab4de6c3d48
фоловим, шлепаем в ладошки!
Improving histogram usability for Prometheus and Grafana
https://medium.com/@valyala/improving-histogram-usability-for-prometheus-and-grafana-bc7e5df0e350
Prometheus storage: technical terms for humans
https://medium.com/@valyala/prometheus-storage-technical-terms-for-humans-4ab4de6c3d48
фоловим, шлепаем в ладошки!
Medium
Improving histogram usability for Prometheus and Grafana
Histograms in Prometheus are tricky to use properly. Is it possible to improve their usage experience? Yes — continue reading the article.
Forwarded from DevOps Deflope News
24го января, в Санкт-Петербурге, в офисе компании Selectel пройдет 4й kubernetes spb meetup 🎉🎉🎉
Заявлено 2 доклада и 1 лайтнинг.
* Доклад «K8S on bare metal: SSL» Максим Филатов(Evil Martians)
* Лайтнинг «Деплой сервисов в k8s с помощью Jenkins» Георгий Антонов (Selectel)
* Доклад «GitOps и его инструменты: 101 для тех, кто хочет разобраться» Кирилл Кузнецов (Evil Martians)
Начало в 19:15. Планируется онлайн-трансляция и запись.
Регистрация
Meetup
http://bit.ly/2RiHH9X
Timepad
http://bit.ly/38cLUTz
#meetups #events #spb
Заявлено 2 доклада и 1 лайтнинг.
* Доклад «K8S on bare metal: SSL» Максим Филатов(Evil Martians)
* Лайтнинг «Деплой сервисов в k8s с помощью Jenkins» Георгий Антонов (Selectel)
* Доклад «GitOps и его инструменты: 101 для тех, кто хочет разобраться» Кирилл Кузнецов (Evil Martians)
Начало в 19:15. Планируется онлайн-трансляция и запись.
Регистрация
Meetup
http://bit.ly/2RiHH9X
Timepad
http://bit.ly/38cLUTz
#meetups #events #spb
Meetup
Login to Meetup | Meetup
Not a Meetup member yet? Log in and find groups that host online or in person events and meet people in your local community who share your interests.
Forwarded from DocOps
Ребята из Фланта рассказали, как собирают документацию с помощью werf. Это их инструмент для автоматизации сборки докер-образов. Отличный пример принципа "drink your own champagne".
https://habr.com/ru/company/flant/blog/478690/
https://habr.com/ru/company/flant/blog/478690/
Хабр
Динамическая сборка и деплой Docker-образов с werf на примере сайта версионированной документации
Мы уже не раз рассказывали про свой GitOps-инструмент werf, а в этот раз хотели бы поделиться опытом сборки сайта с документацией самого проекта — werf.io (его р...
Forwarded from Мониторим ИТ
Дмитрий Комаров из Яндекс-денег рассказывает как они у себя делали MaaC — мониторинг как код. К приложению в виде зависимости добавляется дополнительный артефакт, который генерит новые дашборды в Grafana и порождает соответствующий сбор метрик через StatsD и Heka. Говорит, что Heka это хорошо из-за бестродействия в силу приёма метрик от приложений по протоколу UDP.
Ещё одна важная часть его выступления — это алертинг. Алертинг в Grafana оказался недостаточно гибким и они использовали Moira, которая позволила гибко создавать триггеры и использует собственное хранилище на базе Redis.
Ниже ссылки на соответствующие репозитории на Github:
→ moira-trigger-plugin
→ moira-kotlin-dsl
→ grafana-dashboard-dsl
→ moira-kotlin-client
→ grafana-dashboard-plugin
Ещё одна важная часть его выступления — это алертинг. Алертинг в Grafana оказался недостаточно гибким и они использовали Moira, которая позволила гибко создавать триггеры и использует собственное хранилище на базе Redis.
Ниже ссылки на соответствующие репозитории на Github:
→ moira-trigger-plugin
→ moira-kotlin-dsl
→ grafana-dashboard-dsl
→ moira-kotlin-client
→ grafana-dashboard-plugin
YouTube
Java Jam 2019 || Monitoring strikes back (Дмитрий Комаров)
Яндекс.Деньги провели традиционную встречу специалистов по Java. В программе доклады от бэкенд-команд Денег и спикера из Hazelcast.
Дмитрий Комаров, Java-программист (Яндекс.Деньги)
«Monitoring strikes back»
В докладе я представлю нашу инфраструктуру доставки…
Дмитрий Комаров, Java-программист (Яндекс.Деньги)
«Monitoring strikes back»
В докладе я представлю нашу инфраструктуру доставки…
Forwarded from Good reviewer - Bad reviewer (Oleg Kovalov)
Нас попросили посмотреть на HTTP роутер go-chi. Кроме хорошего апи, там все основано на одной древовидной структуре. Она не сложная, но есть детали, которые неочевидны. В любом случае - работает хорошо, советуем с личного опыта и рабочего прода.
https://www.youtube.com/watch?v=IjDlmOTmCUI
Упомянутые штуки:
https://en.wikipedia.org/wiki/Radix_tree
https://github.com/armon/go-radix
https://github.com/hashicorp/go-immutable-radix
https://en.wikipedia.org/wiki/Cache-oblivious_algorithm
https://www.youtube.com/watch?v=IjDlmOTmCUI
Упомянутые штуки:
https://en.wikipedia.org/wiki/Radix_tree
https://github.com/armon/go-radix
https://github.com/hashicorp/go-immutable-radix
https://en.wikipedia.org/wiki/Cache-oblivious_algorithm
Wikipedia
Radix tree
data structure that represents a space-optimized trie in which each node that is the only child is merged with its parent
@aws_ru проводит митап 29 января в 19:00 в офисе Райффайзен банка , посвященный нашему 3-летию! (много_радостных_эмоджи, салюты, и тд.)
Список докладов:
«AWS как заначка на черный день, или как мы расширяем внутренние ресурсы при пиковых нагрузках»
Андрей Соловьев, Райффайзенбанк
«Как распараллелить всё, что можно распараллелить, и быстро обработать все, что можно обработать»
Владимир Попов, консультант по AWS решениям
«Systems Manager против зоопарка ресурсов»
Петр Сальников, консультант по AWS решениям
«Платить нельзя выключить: учимся ставить запятую с AWS Spot”
Александр Патрушев, AWS
Теперь вкусное: вопросы будут приниматься и из телеграмма, и из зала, за лучший вопрос будет специальный приз!
Регистрация: https://www.meetup.com/aws-ru/events/267985758/
P.S. Несите тОрты, ну или тор
Список докладов:
«AWS как заначка на черный день, или как мы расширяем внутренние ресурсы при пиковых нагрузках»
Андрей Соловьев, Райффайзенбанк
«Как распараллелить всё, что можно распараллелить, и быстро обработать все, что можно обработать»
Владимир Попов, консультант по AWS решениям
«Systems Manager против зоопарка ресурсов»
Петр Сальников, консультант по AWS решениям
«Платить нельзя выключить: учимся ставить запятую с AWS Spot”
Александр Патрушев, AWS
Теперь вкусное: вопросы будут приниматься и из телеграмма, и из зала, за лучший вопрос будет специальный приз!
Регистрация: https://www.meetup.com/aws-ru/events/267985758/
P.S. Несите тОрты, ну или тор
Meetup
День Рожденья @AWS_Ru нам 3 Года!
Wed, Jan 29, 2020, 7:00 PM: UPD: Ребят, так как мы идем в гости в Банк, их доброе СБ очень хочет знать ФИО и компанию - потому очень вас попрошу если вы решили придти лично - не сочтите за труд, сдела
Forwarded from Записки админа
🐧 И да, смотрите скооолько разного, интересного и полезного по безопасности ядра Linux: https://github.com/xairy/linux-kernel-exploitation
#linux #security #github
#linux #security #github
Forwarded from CatOps
Ещё одна статья, как всем k8s стэком включая приложения управляют с помощью Terraform.
"One thing to rule them all", как говорится.
#kubernetes #terraform
"One thing to rule them all", как говорится.
#kubernetes #terraform
Medium
Deploy Kubernetes Apps w. Terraform
Using Terraform to Deploy Kubernetes Applications
21 января стартует новый цикл открытых уроков по DevOps от REBRAIN. Присоединяйтесь!
Бесплатный онлайн практикум DevOps by REBRAIN: NGINX
Регистрация - https://clck.ru/Lu8rg
Количество мест строго ограничено!
Время проведения:
21 Января (Вторник) в 19:00 по МСК
Что будет на практикуме?
🔹Как работает HTTP протокол? Разбираемся с помощью curl
🔹Для чего нужны http headers?
🔹Как устанавливается HTTPS соединение и как получить бесплатный сертификат от letsencrypt?
🔹Разбираемся с rewrite'ами в nginx - как переписывать url от клиента и что такое коды 301/302?
🔹Что нам принес http v2 - отправляем клиентам документы без их запроса
Кто ведет?
Василий Озеров - основатель агентства Fevlake (fevlake.com) и действующий Devops-инженер (опыт в Devops более 5 лет). Регулярно выступает на RootConf, DevOpsConf Russia, HighLoad.
Открытые еженедельные DevOps практикумы - https://bit.ly/2CGmm3C
Присоединяйтесь!
Бесплатный онлайн практикум DevOps by REBRAIN: NGINX
Регистрация - https://clck.ru/Lu8rg
Количество мест строго ограничено!
Время проведения:
21 Января (Вторник) в 19:00 по МСК
Что будет на практикуме?
🔹Как работает HTTP протокол? Разбираемся с помощью curl
🔹Для чего нужны http headers?
🔹Как устанавливается HTTPS соединение и как получить бесплатный сертификат от letsencrypt?
🔹Разбираемся с rewrite'ами в nginx - как переписывать url от клиента и что такое коды 301/302?
🔹Что нам принес http v2 - отправляем клиентам документы без их запроса
Кто ведет?
Василий Озеров - основатель агентства Fevlake (fevlake.com) и действующий Devops-инженер (опыт в Devops более 5 лет). Регулярно выступает на RootConf, DevOpsConf Russia, HighLoad.
Открытые еженедельные DevOps практикумы - https://bit.ly/2CGmm3C
Присоединяйтесь!
Forwarded from Мониторим ИТ
Хоум Кредит унд Финанс банк пишет как они прикрутили к своему мониторингу на Zabbix и ELK машинное обучение. Вот теперь дежурные могут расслабиться 🙂
Forwarded from Go Дайджест
Отличный материал про хендлинг UDP в Go. 🤓
https://ops.tips/blog/udp-client-and-server-in-go/#receiving-from-a-udp-connection-in-a-server
https://ops.tips/blog/udp-client-and-server-in-go/#receiving-from-a-udp-connection-in-a-server
ops.tips
A UDP server and client in Go
Getting from Golang's net package down to the Linux kernel methods invoked when UDP messages are sent.
Настройка уведомлений в mattermost https://mattermost.com/blog/mattermost-incident-response-workflow-app/
Mattermost.com
Join the alpha program for Mattermost's Incident Response Workflow app
Find out how your team can accelerate incident response times with the Mattermost Incident Response Workflow App.
Forwarded from CatOps
Cindy Sridharan пишет про lsof и его полезные флаги с точки зрения разработчиков.
Тулза действительно полезная, но всё же, если система уже хорошо нагружена, лучше напрямую по
#toolz
Тулза действительно полезная, но всё же, если система уже хорошо нагружена, лучше напрямую по
/proc шариться, чтобы не усугублять.#toolz
Medium
lsof
I’m used to debugging issues with logs or metrics when they are presented to me on a lovely dashboard with an intuitive UI. However, if for…