Пятничный деплой
4.74K subscribers
1.51K photos
35 videos
167 files
7.95K links
Подборка ссылок, статей и постов из мира DevOps\SRE\разработки. Если вы хотите прислать фидбек, интересную статью или просто поболтать пишите @count0ru https://xn--r1a.website/s/count0_digest
Download Telegram
Forwarded from Админим с Буквой (bykva)
Настройка Heartbeat для проверки работы системы мониторинга

Расскажу на примере prometheus, alertmanager, opsgenie.

opsgenie:
0) создаем команду
1) по адресу https://app.opsgenie.com/settings/heartbeat создаем хартбит по нужным вам параметрам (severity, на кого повесить, описание). Запоминаем имя (далее ${name})
2) идем в интеграции, создаем для prometheus - именуем, назначаем команду, получаем api ключ.
https://app.opsgenie.com/settings/integration/integration-list (далее ${opsgenie_api_key})

alertmanager.yml:

receivers:
- name: deadmansswitch
webhook_configs:
- url: https://api.opsgenie.com/v2/heartbeats/${name}/ping
send_resolved: true
http_config:
basic_auth:
password: ${opsgenie_api_key}
route:
group_by:
- job
group_interval: 5m
group_wait: 10s
receiver: default
repeat_interval: 1m
routes:
- receiver: deadmansswitch
match:
severity: DeadMansSwitch
repeat_interval: 1m

prometheus.yml -> далее если у вас правила вынесены в отдельный файл, если нет, ну, сами поправите)

...
rule_files:
- /etc/prometheus/prometheus.rules
...

prometheus.rules:

groups:
- name: prometheus.alerts.rules
rules:
- alert: PrometheusAlertmanagerE2eDeadManSwitch
expr: vector(1)
for: 5m
labels:
severity: DeadMansSwitch
annotations:
summary: "Prometheus AlertManager E2E dead man switch (instance {{ $labels.instance }})"
description: "Prometheus DeadManSwitch is an always-firing alert. It's used as an end-to-end test of Prometheus through the Alertmanager.\n VALUE = {{ $value }}\n LABELS: {{ $labels }}"

Как это работает:
1) в течение 5 минут прометей проверяет выражение vector(1), которое всегда будет отдавать 1, а значит фейлиться.
2) через 5 минут (а затем еще каждую минуту) он будет пиннать алертменеджер и говорить что есть проблема.
3) Алертменеджер будет долбиться раз в минуту на специальный урл opsgenie.
4) В настройках хартбита вы выставляете время которое считаете нормальным для того чтобы система оповещения лежала. и далее ход конём:
5) если у вас погиб прометей (или сеть до алертменеджера), он не будет долбить алертменеджер и рефрешить гарантированный алерт. в таком случае автоматически происходит разрезолв алерта (по-умолчанию 5 минут) и перестают посылаться сообщения на урл из п.3. Тогда по истечению таймаута из п4. на вашу команду упадет алерт о том что хартбит просрочен.
6) если у вас умер алертменеджер (или связность до апи opsgenie), то по истечению таймаута из п4. на вашу команду упадет алерт о том что хартбит просрочен.

т.о. такая связка гарантирует что вся цепочка от мониторинга до алертменеджера и апишки opsgenie находится в работоспособном состоянии

Источник знаний:
- https://xn--r1a.website/metrics_ru
- https://docs.opsgenie.com/docs/heartbeat-api
- https://github.com/prometheus/alertmanager/pull/444#issuecomment-428493861

#prometheus #opsgenie #alertmanager
Forwarded from CatOps
​​Wake up Neo, Kubernetes Services not exist.

And it uses random LB strategy, not round-robin.

Good news - it can be ignored in some cases, but in the worst case (long-lived TCP connections + frontend services less than backend) pods may not be able to handle traffic and horizontal scaling won't help.

To choose the right pill, take a cup of something and read about load balancing and scaling long-lived connections in K8s.

#kubernetes
Forwarded from linkmeup
Тут Google внезапно разоткровенничался и рассказал про свои проблемы с DDoS. Проблемы у них интересные: 2,5Tbs (не вчера, а два года назад) и 690 миллионов пакетов в секунду от IoT ботнета.
Ты там как? Прикрутил уже на свой микротик радиатор побольше?

https://cloud.google.com/blog/products/identity-security/identifying-and-protecting-against-the-largest-ddos-attacks
Вчера AWS выпустил Origin Shield для CloudFront - своей услуги CDN. Из названия мне показалось, что речь про некий экран, который позволит пользователю получать контент только от узлов CDN, блокируя трафик до origin, но на деле нововведение оказалось гораздо полезнее.

Origin Shield имплементирует дополнительный уровень кеширования, который позволит Edge локациям (географически распределенные точки присутствия CloudFront) обновлять свой локальный кеш не из origin, а непосредственно из этого слоя.

Иными словами, если вы расположились в eu-west-1 и настроили CloudFront на раздачу по всему миру, то все Edge локации будут запрашивать контент у ваших серверов в eu-west-1, тем самым создавая серьезную нагрузку на ваш origin. В случае с Origin Shield обновление кеша будет запрашиваться непосредственно с узлов CloudFront в eu-west-1, и только локальный CloudFront будет “мучать” ваш origin.

Такое решение лучше всего подходит для динамического контента, такого как видеостриминг. Имплементация единого слоя кеширования позволит уменьшить затраты на вычислительные мощности origin’ов или перенаправив их в другое русло, хоть на то же транскодирование видеоконтента.

Важно! Имейте в виде, что Origin Shield имеет добавочную стоимость, так что прежде чем радостно ставить галочку в консоли CloudFront сравните расходы на трафик с Origin Shield с трафиком и ценой на compute origin’а.

А то будете потом писать мне, что клавды клятые вас грабят.
Forwarded from oleg_log (Oleg Kovalov)
Заметил еще, что мало кто знает об аббревиатуре NFR, советую запомнить, +10 к уважению https://en.wikipedia.org/wiki/Non-functional_requirement
Forwarded from Security Wine (бывший - DevSecOps Wine) (Denis Yakimov)
CloudSecDocs

Один из крутых инженеров Marco Lancini, за активностью которого слежу, релизнул cloudsecdocs.com. Это большая Интернет-энциклопедия по безопасности облаков.

Вот что уже можно почитать:
- Secure SDLC: сканеры, работа с секретами, compliance as code, лабы, моделирование угроз, метрики, логирование
- Docker и Kubernetes, что это, какие компоненты, как деплоить и работать с этим
- Моделирование угроз для Docker и Kubernetes
- Опиcание RBAC
- Описание важных компонентов с точки зрения безопасности k8s
- Атаки и пентест на контейнеры
- Компоненты AWS и Azure, а также их защита
- Угрозы и методология тестирования облаков

#aws #gcp #azure #dev #ops #k8s #docker #attack
В Слёрме стартует предпродажа курса "CI/CD на примере Gitlab CI".

Курс поможет понять принципы работы CI/CD. После обучения вы сможете автоматизировать процесс интеграции и поставки и ускорить цикл разработки с минимальными рисками.

В период предзаказа можно не только купить курс по выгодной цене, но и поучаствовать в формировании итоговой программы, задать свои вопросы спикерам.

До релиза (3 декабря) цена курса - 15 000 рублей.
Посмотреть программу и оставить заявку: https://slurm.club/3mfoyU3
Forwarded from DevOpsConf Channel
🔥Помните, мы просили вас поучаствовать в исследовании состояния DevOps в России? Настал тот день, когда мы готовы рассказать про полученные результаты.

Состояние DevOps в России исследовали совместно компании «Экспресс 42» и «Онтико». Компания «Экспресс 42» помогает технологическим компаниям внедрять и развивать DevOps практики и инструменты и одна из первых начала рассказывать про DevOps в России. Авторы исследования — Игорь Курочкин и Виталий Хабаров занимаются в компании «Экспресс 42» анализом и консалтингом, имея при этом технический бэкграунд из эксплуатации и опыт работы в разных компаниях.

Читайте на Хабре 👉 https://habr.com/ru/company/oleg-bunin/blog/524556/
Forwarded from Мониторим ИТ
A guide to setting up Kubernetes Service Level Objectives (SLOs) with Prometheus and Linkerd

In this tutorial, we’re going to see how to set up a basic success rate SLO with a rolling window for a gRPC service running on Kubernetes. Of course, the techniques we use here are just as applicable to different types of metrics and SLOs. Читать дальше.
Как привлекать пользователей в продукт?

26 октября на открытом вебинаре Анна Подображных, Product Manager в Avito, расскажет:
- Что такое гипотеза роста и как ее проверять
- Какие бывают каналы дистрибуции
- Как работают рекламные сети
В качестве бонуса вы узнаете, как привлекать органику в App Store и Google Play.

Демо-занятие входит в программу онлайн-курса «Product Manager IT-проектов». Регистрация на вебинар: https://otus.pw/zlGy/
Put your Nginx inside a bunker! nginx Docker image secure by default.

Avoid the hassle of following security best practices each time you need a web server or reverse proxy. Bunkerized-nginx provides generic security configs, settings and tools so you don't need to do it yourself.

Non-exhaustive list of features :
- HTTPS support with transparent Let's Encrypt automation
- State-of-the-art web security : HTTP security headers, php.ini hardening, prevent leaks, ...
- Integrated ModSecurity WAF with the OWASP Core Rule Set
- Automatic ban of strange behaviors with fail2ban
- Antibot challenge through cookie, javascript, captcha or recaptcha v3
- Block TOR, proxies, bad user-agents, countries, ...
- Perform automatic DNSBL checks to block known bad IP
- Prevent bruteforce attacks with rate limiting
- Detect bad files with ClamAV
- Easy to configure with environment variables

https://github.com/bunkerity/bunkerized-nginx

#devops #docker
🛠 Примеры реализации разных задач в скриптах, исключительно на sh или bash.

Pure sh bible.
Pure bash bible.

#bash #shell #будничное
Forwarded from Security Wine (бывший - DevSecOps Wine) (Denis Yakimov)
Способы и примеры внедрения утилит для проверки безопасности Docker

Тут Павел (@shad0wrunner) выпустил статью на Хабре по способам и примерам внедрения проверки образов Docker. В число рассматриваемых инструментов входят Dockle, Trivy и Hadolint. Варианты внедрения: путём конфигурации CI/CD pipeline на примере GitLab (с описанием процесса поднятия тестового инстанса), с использованием shell-скрипта, с построением Docker-образа для сканирования.

https://habr.com/ru/company/swordfish_security/blog/524490/

#docker #dev
DevOps by Rebrain: GitOps x Terraform. 27 октября 19.00 МСК

Регистрация: https://kutt.it/e8hWmJ

🔹Узнаем, что такое GitOps и зачем он нужен
🔹Рассмотрим основные решения и примеры Infrastructure as a Code
🔹Погрузимся в Terraform
🔹Настроим окружение и развернем простой пример инфраструктуры

Кто ведет?
Ильдар Ишханов - CTO и сооснователь Amixr Inc.Ex DevOps Lead в Cisco. Резидент 500 стартапс

Golang by Rebrain: Взаимодействие микросервисов на го через grpc. 29 октября 19.00 МСК

Регистрация: https://kutt.it/ih03WE

Программа практикума:
🔹Grpc protobuf в Go
🔹Передача контекста через rpc вызов
🔹Interceptors
🔹Организация сервиса и клиента как отдельного го модуля

Кто ведет?
Николай Наумченко - Начинал в Москве без документов курьером. За год стал Старшим PHP разработчиком в AmoCRM. Внедрил Golang в МТС Банке с "нуля"