✈️ Разбор полётов
Недавний масштабный сбой в IT-инфраструктуре Аэрофлота — не просто технический инцидент, а пример системного провала. Давайте устроим компании postmortem.
Кратко: что случилось
• Аэрофлот на несколько часов остановил бронирования, регистрацию и доступ к сайту.
• Все системы зависели от централизованной IT-инфраструктуры, которая была выведена из строя.
• По симптомам — возможен сбой ЦОД, отказ кластеров, падение критических сервисов.
🛠 Что можно было сделать
1. Geo-распределённая отказоустойчивая архитектура
Active-active или хотя бы active-passive в двух независимых регионах, например, использование облаков с мультирегиональной поддержкой.
2. Резервные каналы связи и DNS Failover
Ротация DNS на резервную инфраструктуру — классическая страховка. Cloudflare Load Balancer, Route53, NS1 — дают гибкость при переключениях.
3. Холодный и горячий Disaster Recovery план
Тестируемый DR-сценарий с переключением в течение 15 минут. Как минимум – ежедневная проверка резервных копий и симуляции отказов.
4. Тестирование отказов хаосом
Периодическая случайная остановка нод или симуляция отказа БД.
5. Автоматизация развёртывания и восстановления
Возможность воссоздать инфраструктуру за час, а не за сутки вручную. GitOps с Terraform, Ansible, Pulumi, ArgoCD для восстановления конфигурации в любой момент.
Крупный бизнес без продуманной стратегии отказоустойчивости — это только вопрос времени, когда «всё упадёт».
💬 Что бы вы использовали для предотвращения такого инцидента? Или чем бы пользовались уже пост фактум для восстановления?
🐸 Библиотека devops'a #междусобойчик
Недавний масштабный сбой в IT-инфраструктуре Аэрофлота — не просто технический инцидент, а пример системного провала. Давайте устроим компании postmortem.
Кратко: что случилось
• Аэрофлот на несколько часов остановил бронирования, регистрацию и доступ к сайту.
• Все системы зависели от централизованной IT-инфраструктуры, которая была выведена из строя.
• По симптомам — возможен сбой ЦОД, отказ кластеров, падение критических сервисов.
🛠 Что можно было сделать
1. Geo-распределённая отказоустойчивая архитектура
Active-active или хотя бы active-passive в двух независимых регионах, например, использование облаков с мультирегиональной поддержкой.
2. Резервные каналы связи и DNS Failover
Ротация DNS на резервную инфраструктуру — классическая страховка. Cloudflare Load Balancer, Route53, NS1 — дают гибкость при переключениях.
3. Холодный и горячий Disaster Recovery план
Тестируемый DR-сценарий с переключением в течение 15 минут. Как минимум – ежедневная проверка резервных копий и симуляции отказов.
4. Тестирование отказов хаосом
Периодическая случайная остановка нод или симуляция отказа БД.
5. Автоматизация развёртывания и восстановления
Возможность воссоздать инфраструктуру за час, а не за сутки вручную. GitOps с Terraform, Ansible, Pulumi, ArgoCD для восстановления конфигурации в любой момент.
Крупный бизнес без продуманной стратегии отказоустойчивости — это только вопрос времени, когда «всё упадёт».
Please open Telegram to view this post
VIEW IN TELEGRAM
Proglib Academy — это место, где вы превращаете теорию в практику. Здесь ваши знания становятся проектами для портфолио, а вы — более уверенным специалистом.
Выберите курс, который поможет сделать следующий шаг ⬇️
🚀 Для тех, кто начинает путь в IT:
— Основы IT для непрограммистов
— Программирование на Python (обновлённый)
— Frontend-разработчик с нуля: HTML, CSS, JavaScript
🧠 Для будущих и настоящих Data Scientist'ов:
— ML для старта в Data Science (начинается в сентябре)
— Базовые модели ML и приложения
— Математика для Data Science
— AI-агенты для DS-специалистов (скоро второй поток)
🛠️ Для опытных разработчиков, готовых к росту:
— Алгоритмы и структуры данных
— Архитектуры и шаблоны проектирования
Независимо от вашей цели, у нас есть курс, который поможет её достичь. Переходите в Proglib Academy, выбирайте свой путь и инвестируйте в навыки, которые всегда будут в цене!
Выберите курс, который поможет сделать следующий шаг ⬇️
🚀 Для тех, кто начинает путь в IT:
— Основы IT для непрограммистов
— Программирование на Python (обновлённый)
— Frontend-разработчик с нуля: HTML, CSS, JavaScript
🧠 Для будущих и настоящих Data Scientist'ов:
— ML для старта в Data Science (начинается в сентябре)
— Базовые модели ML и приложения
— Математика для Data Science
— AI-агенты для DS-специалистов (скоро второй поток)
🛠️ Для опытных разработчиков, готовых к росту:
— Алгоритмы и структуры данных
— Архитектуры и шаблоны проектирования
Независимо от вашей цели, у нас есть курс, который поможет её достичь. Переходите в Proglib Academy, выбирайте свой путь и инвестируйте в навыки, которые всегда будут в цене!
💻 Переиспользуем аргументы как ниндзя
Вместо того чтобы снова и снова руками набирать длинные пути или параметры из предыдущей команды, в bash/zsh можно просто вытащить их из истории.
Удобно в деплоях, когда команды повторяются с небольшими изменениями. Да и опечаток становится в разы меньше.
🐸 Библиотека devops'a #буст
Вместо того чтобы снова и снова руками набирать длинные пути или параметры из предыдущей команды, в bash/zsh можно просто вытащить их из истории.
Alt+.
(или Esc + .
) — вставить последний аргумент предыдущей команды.$ ls /var/log/nginx
$ cd Alt+. # подставит /var/log/nginx
!$
— то же самое, но внутри команды.$ tar -xf archive.tar.gz /tmp/data
$ cd !$
!*
— вставить все аргументы предыдущей команды.$ cp file1.txt file2.txt /tmp
$ rm !*
^old^new
— повтор предыдущей команды, заменив подстроку.$ kubectl get pods
$ ^get^describe # превратит в kubectl describe pods
Удобно в деплоях, когда команды повторяются с небольшими изменениями. Да и опечаток становится в разы меньше.
Please open Telegram to view this post
VIEW IN TELEGRAM
💰 Интеграция платежных систем на уровне банковской инфраструктуры
В продакшене банка всё сложнее, чем в любом хайлоаде: нельзя допустить даунтайм, задержка в 10 секунд уже критична, а под капотом — десятки микросервисов, API и очередей.
В статье — взгляд изнутри на интеграцию платёжных систем на уровне банковской инфраструктуры: как проектируют архитектуру, чтобы переводы шли 24/7 и как мониторят и алертят критические узлы.
➡️ Читать статью
🐸 Библиотека devops'a
В продакшене банка всё сложнее, чем в любом хайлоаде: нельзя допустить даунтайм, задержка в 10 секунд уже критична, а под капотом — десятки микросервисов, API и очередей.
В статье — взгляд изнутри на интеграцию платёжных систем на уровне банковской инфраструктуры: как проектируют архитектуру, чтобы переводы шли 24/7 и как мониторят и алертят критические узлы.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁16
Anonymous Quiz
43%
От латинского “ansibilis” — управляемый
16%
Из научной фантастики — устройство мгновенной связи
34%
Сокращение от “Automated Network System Builder”
7%
От имени разработчика
📰 Главное за неделю
Собрали дайджест материалов от крупных компаний за эту неделю.
— Короткие SSH-сертификаты для Ansible
HashiCorp представил способ интеграции Vault и Red Hat Ansible Automation Platform (AAP), позволяющий заменить статические SSH‑ключи на динамические, подписанные сертификаты.
Теперь при запуске Ansible‑джоба AAP запрашивает у Vault SSH‑сертификат на лету — Vault аутентифицирует запрос, подписывает сгенерированную пару ключей и возвращает АAP короткоживущий сертификат
— Плагин c ИИ для управления кластерами k8s
Headlamp AI Assistant — это новый плагин для веб-интерфейса Headlamp, который привносит возможности общения с Kubernetes через естественный язык. Модель, работающая на базе LLM, способна отвечать на вопросы вроде «Какое состояние приложения?» или «Что здесь не так?»
— OpenShift Service Mesh 3.1
В новую версию добавлена полноценная поддержка dual‑stack кластеров (IPv4 + IPv6) на x86, а также реализована технологическая preview‑версия «ambient mode» — sidecar‑less архитектура на базе Ztunnel и Waypoint.
— Когда меньшая модель — лучший путь к эффективному ИИ
Docker представил подход Remocal + Minimum Viable Models (MVM), который объединяет локальную разработку с возможностью динамически масштабироваться в облако, когда требуется больше мощности.
🐸 Библиотека devops'a #свежак
Собрали дайджест материалов от крупных компаний за эту неделю.
— Короткие SSH-сертификаты для Ansible
HashiCorp представил способ интеграции Vault и Red Hat Ansible Automation Platform (AAP), позволяющий заменить статические SSH‑ключи на динамические, подписанные сертификаты.
Теперь при запуске Ansible‑джоба AAP запрашивает у Vault SSH‑сертификат на лету — Vault аутентифицирует запрос, подписывает сгенерированную пару ключей и возвращает АAP короткоживущий сертификат
— Плагин c ИИ для управления кластерами k8s
Headlamp AI Assistant — это новый плагин для веб-интерфейса Headlamp, который привносит возможности общения с Kubernetes через естественный язык. Модель, работающая на базе LLM, способна отвечать на вопросы вроде «Какое состояние приложения?» или «Что здесь не так?»
— OpenShift Service Mesh 3.1
В новую версию добавлена полноценная поддержка dual‑stack кластеров (IPv4 + IPv6) на x86, а также реализована технологическая preview‑версия «ambient mode» — sidecar‑less архитектура на базе Ztunnel и Waypoint.
— Когда меньшая модель — лучший путь к эффективному ИИ
Docker представил подход Remocal + Minimum Viable Models (MVM), который объединяет локальную разработку с возможностью динамически масштабироваться в облако, когда требуется больше мощности.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Forwarded from Библиотека задач по DevOps | тесты, код, задания
В GitOps-подходе с использованием ArgoCD и монорепозитория, какой сценарий наибольшим образом нарушает идемпотентность и предсказуемость деплоя?
👾 — Хранение всех манифестов в одной ветке и использование ArgoCD для автоматической синхронизации с HEAD
👍 —Разделение инфраструктурных и приложенческих манифестов по разным директориям в одном репозитории
🥰 — Прямое применение изменений в кластере через kubectl apply без фиксации в Git
⚡️ — Настройка ArgoCD на использование webhook-триггеров вместо периодической синхронизации
Библиотека задач по DevOps
👾 — Хранение всех манифестов в одной ветке и использование ArgoCD для автоматической синхронизации с HEAD
👍 —Разделение инфраструктурных и приложенческих манифестов по разным директориям в одном репозитории
🥰 — Прямое применение изменений в кластере через kubectl apply без фиксации в Git
Библиотека задач по DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰11
DevOps Engineer — 280 000 — 400 000 ₽, удалёнка.
Ещё DevOps инженер — до 200 000 ₽, удалёнка.
И ещё DevOps-Инженер — до 240 000 ₽, удалёнка.
Ещё один DevOps-инженер — 200 000 — 250 000 ₽, удалёнка.
DevOps-инженер (CI/CD) — до 170 000 ₽, удалёнка.
Бустер — Офис у вас дома.
Please open Telegram to view this post
VIEW IN TELEGRAM
Kustomize — это инструмент для работы с Kubernetes-конфигурациями, который позволяет адаптировать и комбинировать файлы YAML без их дублирования.
Представьте себе, что вам нужно развернуть одно и то же приложение в нескольких средах: разработка, тестирование, продакшн. При этом настройки для каждой среды будут отличаться. С Kustomize вы можете сделать это с минимальными усилиями.
Структура проекта:
my-app/
│
├── base/
│ ├── deployment.yaml
│ ├── service.yaml
│ └── kustomization.yaml
│
└── overlays/
├── dev/
│ ├── kustomization.yaml
│ ├── deployment-patch.yaml
│ └── service-patch.yaml
└── prod/
├── kustomization.yaml
├── deployment-patch.yaml
└── service-patch.yaml
base/
: хранит общие для всех окружений файлы конфигураций — это основа, от которой будут наследоваться все остальные окружения.overlays/
: здесь лежат изменения для каждой среды (например, для разработки и продакшн), такие как количество реплик или версия образа.Пример базовой конфигурации для деплоя:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 2
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: my-app:v1
ports:
- containerPort: 8080
Здесь у нас базовый деплоймент с двумя репликами и образом Docker my-app:v1. Это конфигурация, которая будет использована во всех окружениях, пока мы не внесем в нее изменения.
Конфигурация для окружения разработки
В папке overlays/dev мы создаем патчи, которые изменяют конфигурацию для разработки. Для разработки нужно:
• Использовать тестовую БД
• Использовать самый последний образ контейнера
• Включить дебаг логгирование
• Поиграться с количеством реплик
Пример патча для деплоя:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 3 # Увеличиваем количество реплик для разработки
template:
spec:
containers:
- name: my-app
image: my-app:latest # Используем последний образ для разработки
Также в папке
overlays/dev
создаем файл kustomization.yaml
:bases:
- ../../base
patchesStrategicMerge:
- deployment-patch.yaml
- service-patch.yaml
Этот файл говорит Kustomize, что конфигурация для окружения dev будет базироваться на файлах из папки base, но с изменениями, определенными в патче.
Пример патча для прода:
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 2 # В продакшн — только 2 реплики
template:
spec:
containers:
- name: my-app
image: my-app:v1.2.3 # Стабильная версия для продакшн
Теперь, благодаря Kustomize, вы можете использовать одни и те же манифесты, но с разными настройками для каждой среды.
Как применить конфигурации:
После того как мы создали все необходимые файлы, применить конфигурацию можно с помощью команды
kustomize build
. Например, для разработки:kustomize build overlays/dev | kubectl apply -f -
Для прода:
kustomize build overlays/prod | kubectl apply -f -
Эти команды соберут все ресурсы, применят соответствующие патчи для окружения и передадут их в Kubernetes.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3
Чтобы стать Delivery Manager'ом нужно быть всегда и везде. Он как дирижёр, который управляет не только процессами разработки, но и коммуникациями между командами, бизнес-стейкхолдерами и внешними партнёрами.
В карточках 5 шагов к роли такого менеджера, а в статье полный гайд.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
nc — это утилита для работы с сетью. Умеет слушать порты, подключаться к ним, передавать файлы и данные.
С помощью открытого порта мы можем обмениваться файлами между серверами:
# Сервер
nc -l -p 9000
# Клиент
nc <ip_сервера> 9000
Передача файла:
# Приём
nc -l -p 9999 > file.txt
# Отправка
nc <ip_получателя> 9999 < file.txt
Также можно использовать udp подключение:
nc -u -l -p 500
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🔥 Успей поднять квалификацию по выгодной цене!
Только до 17 августа у вас есть последняя возможность купить наши курсы по старым ценам.
🔹 Математика для Data Science:
— Базовый: (сейчас)
— Ультра:
— VIP:
🔹 Программирование на Python:
🔹 Алгоритмы и структуры данных:
🔹 Архитектуры и шаблоны проектирования:
🔹 AI-агенты для DS специалистов:
🔹 Основы IT для непрограммистов:
🔹 Базовые модели ML:
❗ Важно: Курсы из линейки Frontend Basic полностью снимаются с продажи. 17 августа — буквально последний день, когда их можно будет приобрести.
Успей купить до повышения — осталось 4 дня!
👉 Зафиксировать цену и начать учиться
Только до 17 августа у вас есть последняя возможность купить наши курсы по старым ценам.
🔹 Математика для Data Science:
— Базовый: (сейчас)
26 399₽
→ (будет) 33 900₽
— Ультра:
35 199₽
→ 44 900₽
— VIP:
59 829₽
→ 75 900₽
(выгода больше 16 000₽!)🔹 Программирование на Python:
24 990₽
→ 32 900₽
🔹 Алгоритмы и структуры данных:
31 669₽
→ 39 900₽
🔹 Архитектуры и шаблоны проектирования:
24 890₽
→ 32 900₽
🔹 AI-агенты для DS специалистов:
54 000₽
→ 59 000₽
🔹 Основы IT для непрограммистов:
14 994₽
→ 19 900₽
🔹 Базовые модели ML:
6 990₽
→ 9 900₽
❗ Важно: Курсы из линейки Frontend Basic полностью снимаются с продажи. 17 августа — буквально последний день, когда их можно будет приобрести.
Успей купить до повышения — осталось 4 дня!
👉 Зафиксировать цену и начать учиться
❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10
⛳️ Чеклист для использования облачных сервисов
Облачные технологии это круто. Но чтобы извлечь максимальную пользу, важно правильно настроить облачную инфраструктуру и следовать лучшим практикам.
В этом чеклисте мы предлагаем основные шаги для старта в облаках.
✅ Оцените стоимость, доступность и нужные сервисы у провайдера. Сравните популярные облачные платформы.
✅ Используйте Infrastructure as Code (IaC) и CI/CD пайплайны для автоматизации.
✅ Настройте управление доступом, используйте шифрование данных как в покое, так и в передаче. Настройте многофакторную аутентификацию.
✅ Настройте авто-скейлинг для динамичного масштабирования приложений в зависимости от нагрузки и используйте несколько зон доступности.
✅ Используйте инструменты для мониторинга и централизованное логирование.
✅ Организуйте резервное копирование и архивирование данных.
✅ Настройте инструменты для мониторинга и анализа затрат, используйте экономичные инстансы и настраивайте автоматическое выключение ненужных ресурсов в нерабочие часы.
🐸 Библиотека devops'a
#буст
Облачные технологии это круто. Но чтобы извлечь максимальную пользу, важно правильно настроить облачную инфраструктуру и следовать лучшим практикам.
В этом чеклисте мы предлагаем основные шаги для старта в облаках.
#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2