Сегодня в 19:00: Wi-Fi из одной точки через CAPWAP
Когда точек доступа в офисе два десятка, каждая живёт со своим конфигом. Сменить SSID или пароль значит обойти их все. CAPWAP переносит управление на контроллер: точки сами находят его и забирают настройки.
Программа вебинара:
🟢 CAPWAP: основные теоретические сведения;
🟢 методы обнаружения контроллера точками доступа;
🟢 базовая настройка контроллера Huawei AC.
Ведёт Андрей Шабалин — тренер Cisco / Huawei, инструктор академии Eltex и Астра-Университета.
Участие бесплатное, начало в 19:00 по МСК, регистрация по кнопке под постом.
Сетевое оборудование и беспроводные сети по порядку разбираем в курсе Networks.
Когда точек доступа в офисе два десятка, каждая живёт со своим конфигом. Сменить SSID или пароль значит обойти их все. CAPWAP переносит управление на контроллер: точки сами находят его и забирают настройки.
Программа вебинара:
🟢 CAPWAP: основные теоретические сведения;
🟢 методы обнаружения контроллера точками доступа;
🟢 базовая настройка контроллера Huawei AC.
Ведёт Андрей Шабалин — тренер Cisco / Huawei, инструктор академии Eltex и Астра-Университета.
Участие бесплатное, начало в 19:00 по МСК, регистрация по кнопке под постом.
Сетевое оборудование и беспроводные сети по порядку разбираем в курсе Networks.
Поменяли что-то руками в кластере? Argo CD откатит
Kubernetes, серия 2 из 3
Ночью кто-то сделал
В GitOps источник правды — Git. Argo CD сравнивает его с кластером и приводит кластер к Git.
🟢 Helm-чарт описывает приложение, values для прода лежат в репозитории.
🟢 Application говорит Argo CD, что и куда разворачивать:
🟢 selfHeal возвращает ресурс к состоянию из Git, если его поменяли руками. prune удаляет из кластера то, что убрали из Git.
Проверить можно за минуту:
Новый коммит Argo CD по умолчанию подтягивает из Git в течение трёх минут, а ручную правку selfHeal откатывает почти сразу.
Оговорка: во время инцидента selfHeal откатит и ваш хотфикс. Хотфикс делайте коммитом в Git или на время отключайте автосинк у приложения.
Application, политики синхронизации, App of Apps, ApplicationSets и секреты в GitOps разбираем в курсе Argo CD, чарты — в курсе Helm. Первые задания обоих курсов открыты бесплатно.
В следующей серии: production-контур целиком, от
Kubernetes, серия 2 из 3
Ночью кто-то сделал
kubectl edit, чтобы потушить пожар. Утром в Git одно, в кластере другое: следующий деплой молча перетрёт правку, или она проживёт полгода, и никто не вспомнит, откуда она взялась. Это называется дрифт.В GitOps источник правды — Git. Argo CD сравнивает его с кластером и приводит кластер к Git.
🟢 Helm-чарт описывает приложение, values для прода лежат в репозитории.
🟢 Application говорит Argo CD, что и куда разворачивать:
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: shop
namespace: argocd
spec:
project: default
source:
repoURL: https://git.example.com/team/shop.git
targetRevision: main
path: charts/shop
destination:
server: https://kubernetes.default.svc
namespace: shop
syncPolicy:
automated:
selfHeal: true
prune: true
🟢 selfHeal возвращает ресурс к состоянию из Git, если его поменяли руками. prune удаляет из кластера то, что убрали из Git.
Проверить можно за минуту:
kubectl -n shop scale deploy shop --replicas=5
argocd app get shop # OutOfSync, через несколько секунд снова Synced
kubectl -n shop get deploy shop # реплик снова столько, сколько в Git
Новый коммит Argo CD по умолчанию подтягивает из Git в течение трёх минут, а ручную правку selfHeal откатывает почти сразу.
Оговорка: во время инцидента selfHeal откатит и ваш хотфикс. Хотфикс делайте коммитом в Git или на время отключайте автосинк у приложения.
Application, политики синхронизации, App of Apps, ApplicationSets и секреты в GitOps разбираем в курсе Argo CD, чарты — в курсе Helm. Первые задания обоих курсов открыты бесплатно.
В следующей серии: production-контур целиком, от
git push до алерта.👍9🔥1
Сегодня в 20:00: GlusterFS, распределённая файловая система
Один файловый сервер — одна точка отказа, и отказывает она обычно в пятницу вечером. На открытом практикуме Андрей Буранов покажет, как собрать хранилище из нескольких серверов на GlusterFS и чем этот подход отличается от DRBD.
Программа:
🟢 чем GlusterFS отличается от DRBD
🟢 типы томов GlusterFS
🟢 настраиваем GlusterFS
Ведёт Андрей Буранов — системный администратор в департаменте VK Play, 10+ лет работает с Linux, 8+ лет преподаёт и входит в топ-3 преподавателей образовательных порталов.
Участие бесплатное, начало в 20:00 по МСК.
↘️ Зарегистрироваться
Распределённое хранение и виртуализацию на практике разбираем в курсе Proxmox.
Один файловый сервер — одна точка отказа, и отказывает она обычно в пятницу вечером. На открытом практикуме Андрей Буранов покажет, как собрать хранилище из нескольких серверов на GlusterFS и чем этот подход отличается от DRBD.
Программа:
🟢 чем GlusterFS отличается от DRBD
🟢 типы томов GlusterFS
🟢 настраиваем GlusterFS
Ведёт Андрей Буранов — системный администратор в департаменте VK Play, 10+ лет работает с Linux, 8+ лет преподаёт и входит в топ-3 преподавателей образовательных порталов.
Участие бесплатное, начало в 20:00 по МСК.
↘️ Зарегистрироваться
Распределённое хранение и виртуализацию на практике разбираем в курсе Proxmox.
🔥9❤1👍1
PostgreSQL тормозит, а CPU в норме: ищем медленные запросы
Жалоба «база тормозит», а на графиках CPU 30% и памяти хватает. Чаще всего виноват не сервер, а пара запросов, которые читают таблицу целиком. Найти их можно за несколько минут.
🟢 Включите статистику запросов. Расширение pg_stat_statements копит время выполнения по каждому запросу. В
После перезапуска в нужной базе:
🟢 Найдите самые дорогие запросы. Сортируйте по суммарному времени, а не по самому долгому запросу: короткий запрос, вызванный миллион раз, нагружает базу сильнее.
🟢 Посмотрите план запроса:
🟢 Добавьте индекс и проверьте план ещё раз:
Сегодня в 19:00 Николай Лавлинский покажет PMM: он собирает такую статистику по PostgreSQL и MySQL в дашборды, чтобы не ходить в каждую базу с SQL. Участие бесплатное, регистрация по кнопке под постом.
EXPLAIN, индексы, VACUUM, репликацию и мониторинг разбираем в курсе PostgreSQL, отказоустойчивый кластер — в курсе Patroni.
Жалоба «база тормозит», а на графиках CPU 30% и памяти хватает. Чаще всего виноват не сервер, а пара запросов, которые читают таблицу целиком. Найти их можно за несколько минут.
🟢 Включите статистику запросов. Расширение pg_stat_statements копит время выполнения по каждому запросу. В
postgresql.conf:shared_preload_libraries = 'pg_stat_statements'После перезапуска в нужной базе:
CREATE EXTENSION pg_stat_statements;🟢 Найдите самые дорогие запросы. Сортируйте по суммарному времени, а не по самому долгому запросу: короткий запрос, вызванный миллион раз, нагружает базу сильнее.
SELECT calls,
round(total_exec_time) AS total_ms,
round(mean_exec_time, 1) AS avg_ms,
left(query, 80) AS query
FROM pg_stat_statements
ORDER BY total_exec_time DESC
LIMIT 5;
🟢 Посмотрите план запроса:
EXPLAIN (ANALYZE, BUFFERS)
SELECT * FROM orders WHERE customer_id = 42;
Seq Scan on orders и тысячи страниц в Buffers: shared read значат, что таблица читается целиком.🟢 Добавьте индекс и проверьте план ещё раз:
CREATE INDEX CONCURRENTLY idx_orders_customer ON orders (customer_id);CONCURRENTLY строит индекс без блокировки записи в таблицу, на проде это важно. В плане должен появиться Index Scan.Сегодня в 19:00 Николай Лавлинский покажет PMM: он собирает такую статистику по PostgreSQL и MySQL в дашборды, чтобы не ходить в каждую базу с SQL. Участие бесплатное, регистрация по кнопке под постом.
EXPLAIN, индексы, VACUUM, репликацию и мониторинг разбираем в курсе PostgreSQL, отказоустойчивый кластер — в курсе Patroni.
👍7
🗓️ Расписание вебинаров на сегодня
⏰ 19:00 МСК - Мониторинг MySQL и PostgreSQL c PMM
🔗 Регистрация и программа
О вебинаре напомним за 5 минут до начала на этом канале.
Также вы сможете зайти через личный кабинет.
🔥 Задать вопросы и обсудить детали можно в нашем чате
⏰ 19:00 МСК - Мониторинг MySQL и PostgreSQL c PMM
🔗 Регистрация и программа
О вебинаре напомним за 5 минут до начала на этом канале.
Также вы сможете зайти через личный кабинет.
🔥 Задать вопросы и обсудить детали можно в нашем чате
❤1🔥1
Новый курс: Highload: Monitoring & Observability
Алерт пришёл, дашборд красный, а чтобы найти запрос, который тормозит, приходится открывать три системы и сверять время на глаз. На курсе вы связываете метрики, логи и трассы через
Что внутри:
🟢 Prometheus 3.x, Alertmanager и Grafana с дашбордами как кодом;
🟢 OpenTelemetry Collector, Jaeger и tail sampling: 100% трасс с ошибками и 10% остальных;
🟢 Fluent Bit, кластер Elasticsearch из трёх узлов с ILM и Graylog для сравнения;
🟢 Zabbix с LLD, Proxy и TimescaleDB.
18 уроков и 5 тренажёров с инцидентами, в среднем 42 часа на прохождение курса. В финале собираете контур наблюдаемости для микросервисного приложения, который запускается из репозитория одной командой, и разбираете подброшенный инцидент от алерта до первопричины в отчёте
Для кого: администраторы, которые растут в DevOps или SRE, и DevOps-инженеры.
Что нужно для прохождения: знания Linux в консоли, Docker Compose, основы сетей и первый опыт с Kubernetes: kubectl, Deployment, Service.
До 20 октября включительно скидка 5 000 ₽.
↘️ на практикум
↘️ на практикум+тренажеры
Алерт пришёл, дашборд красный, а чтобы найти запрос, который тормозит, приходится открывать три системы и сверять время на глаз. На курсе вы связываете метрики, логи и трассы через
trace_id и exemplars, чтобы от алерта до первопричины было несколько переходов.Что внутри:
🟢 Prometheus 3.x, Alertmanager и Grafana с дашбордами как кодом;
🟢 OpenTelemetry Collector, Jaeger и tail sampling: 100% трасс с ошибками и 10% остальных;
🟢 Fluent Bit, кластер Elasticsearch из трёх узлов с ILM и Graylog для сравнения;
🟢 Zabbix с LLD, Proxy и TimescaleDB.
18 уроков и 5 тренажёров с инцидентами, в среднем 42 часа на прохождение курса. В финале собираете контур наблюдаемости для микросервисного приложения, который запускается из репозитория одной командой, и разбираете подброшенный инцидент от алерта до первопричины в отчёте
rca.md.Для кого: администраторы, которые растут в DevOps или SRE, и DevOps-инженеры.
Что нужно для прохождения: знания Linux в консоли, Docker Compose, основы сетей и первый опыт с Kubernetes: kubectl, Deployment, Service.
До 20 октября включительно скидка 5 000 ₽.
↘️ на практикум
↘️ на практикум+тренажеры
👍3
Anonymous Quiz
18%
Останется 5 реплик до следующего коммита
65%
Argo CD вернёт число реплик из Git
8%
Argo CD удалит деплоймент и создаст заново
10%
Приложение уйдёт в OutOfSync и будет ждать ручной синхронизации
🔥11
Обновили курс Kubernetes Admin
Собрали всю обратную свзяь от вас и приняли решение выпустить новую версию курса. В новой версии задания на актуальных версиях: обновление кластера с 1.34 до 1.35 через kubeadm, Kubespray 2.29, etcd 3.5.26, cert-manager 1.19.
Курс можно купить вместе с записью интенсива от василия Озерова: 12 занятий от Kubernetes the hard way и TLS до CNI вручную, Flannel, Calico и Cilium, MetalLB и CSI.
32 урока в двух модулях, в среднем 82 часа. Финальный проект: production-ready HA-кластер из трёх мастер-нод с внешним балансировщиком, мониторингом, логированием, автоматическим выпуском сертификатов и квотами для команд разработки.
Если вы учитесь на прошлой версии, то сможете бесплатно обновить версию до новой через нашу поддержку. Для этого пишите на почту info@rebrainme.com.
Для кого: DevOps-инженеры, которые переходят с managed-кластеров на self-hosted, и системные администраторы. Нужны уверенный Linux (bash, systemd, сеть), основы контейнеров и базовый Ansible. Если Kubernetes для вас новый, начните с Kubernetes Base.
До 20 октября включительно скидка 7 000 ₽. Первые задания можно пройти бесплатно в демо.
↘️ Подробнее о курсе
Собрали всю обратную свзяь от вас и приняли решение выпустить новую версию курса. В новой версии задания на актуальных версиях: обновление кластера с 1.34 до 1.35 через kubeadm, Kubespray 2.29, etcd 3.5.26, cert-manager 1.19.
Курс можно купить вместе с записью интенсива от василия Озерова: 12 занятий от Kubernetes the hard way и TLS до CNI вручную, Flannel, Calico и Cilium, MetalLB и CSI.
32 урока в двух модулях, в среднем 82 часа. Финальный проект: production-ready HA-кластер из трёх мастер-нод с внешним балансировщиком, мониторингом, логированием, автоматическим выпуском сертификатов и квотами для команд разработки.
Если вы учитесь на прошлой версии, то сможете бесплатно обновить версию до новой через нашу поддержку. Для этого пишите на почту info@rebrainme.com.
Для кого: DevOps-инженеры, которые переходят с managed-кластеров на self-hosted, и системные администраторы. Нужны уверенный Linux (bash, systemd, сеть), основы контейнеров и базовый Ansible. Если Kubernetes для вас новый, начните с Kubernetes Base.
До 20 октября включительно скидка 7 000 ₽. Первые задания можно пройти бесплатно в демо.
↘️ Подробнее о курсе
👍7🔥4❤3
Обновили курс Redis: теперь на Redis 8 и с тренажёрами
В Redis 8 в ядро вошли Query Engine, JSON и векторный поиск, а наш курс был собран под прошлые версии. Мы пересобрали его целиком.
Что внутри новой версии:
🟢 протокол RESP3 и сборка Redis 8 из исходников;
🟢 паттерны кэширования, распределённые блокировки на
🟢 Streams с Consumer Groups и
🟢 Query Engine, JSON и Vector Sets: гибридный поиск в одном запросе;
🟢 RDB и Multi-Part AOF, политики вытеснения, Sentinel, Redis Cluster с TLS и ACL;
🟢 диагностика:
15 уроков и 5 тренажёров с инцидентами, в среднем 36 часов. Финальный проект: отказоустойчивая система обработки файлов на Python или Go поверх Redis Cluster с TLS и ACL.
Скрипты на Python или Go в курсе остались: на них проверяются блокировки, очереди и финальный проект. Если вы совсем не пишете код, будет тяжело.
Для кого: DevOps, SRE и администраторы, которые отвечают за Redis в проде, и бэкенд-разработчики.
Если вы учитесь на прошлой версии, то сможете бесплатно обновить версию до новой через нашу поддержку. Для этого пишите на почту info@rebrainme.com.
До 20 октября включительно скидка. Первые уроки можно пройти бесплатно в демо, подробнее о курсе на странице.
В Redis 8 в ядро вошли Query Engine, JSON и векторный поиск, а наш курс был собран под прошлые версии. Мы пересобрали его целиком.
Что внутри новой версии:
🟢 протокол RESP3 и сборка Redis 8 из исходников;
🟢 паттерны кэширования, распределённые блокировки на
SET NX EX и Redlock, Client-Side Caching;🟢 Streams с Consumer Groups и
XAUTOCLAIM для упавших воркеров;🟢 Query Engine, JSON и Vector Sets: гибридный поиск в одном запросе;
🟢 RDB и Multi-Part AOF, политики вытеснения, Sentinel, Redis Cluster с TLS и ACL;
🟢 диагностика:
SLOWLOG, LATENCY HISTOGRAM, --bigkeys и --hotkeys.15 уроков и 5 тренажёров с инцидентами, в среднем 36 часов. Финальный проект: отказоустойчивая система обработки файлов на Python или Go поверх Redis Cluster с TLS и ACL.
Скрипты на Python или Go в курсе остались: на них проверяются блокировки, очереди и финальный проект. Если вы совсем не пишете код, будет тяжело.
Для кого: DevOps, SRE и администраторы, которые отвечают за Redis в проде, и бэкенд-разработчики.
Если вы учитесь на прошлой версии, то сможете бесплатно обновить версию до новой через нашу поддержку. Для этого пишите на почту info@rebrainme.com.
До 20 октября включительно скидка. Первые уроки можно пройти бесплатно в демо, подробнее о курсе на странице.
👍9❤4
Как оплатить обучение за счёт компании: шаблон письма руководителю
«Курс зашёл, кубер развёрнут, работодатель счастлив» — так студент REBRAIN описал итог курса. Задача у него была рабочая: за два месяца перевести микросервисы в Kubernetes от вендора в частное облако.
Такое обучение часто оплачивает компания. Руководитель быстрее согласует курс, когда в запросе есть задача команды, результат после курса и стоимость. Вот шаблон, который можно отправить сегодня:
Для оформления даём договор, счёт на юрлицо и закрывающие документы.
В конце года многие компании распределяют остаток бюджета на обучение, поэтому письмо лучше отправить сейчас. Счёт и договор подготовит менеджер — кнопка под постом.
«Курс зашёл, кубер развёрнут, работодатель счастлив» — так студент REBRAIN описал итог курса. Задача у него была рабочая: за два месяца перевести микросервисы в Kubernetes от вендора в частное облако.
Такое обучение часто оплачивает компания. Руководитель быстрее согласует курс, когда в запросе есть задача команды, результат после курса и стоимость. Вот шаблон, который можно отправить сегодня:
Тема: обучение по курсу «[название]» за счёт компании
[Имя], добрый день.
В ближайшие [N] месяцев команде нужно [задача: перевести сервисы в Kubernetes / настроить мониторинг / собрать CI/CD].
Предлагаю пройти практикум REBRAIN «[название]»: задания на реальных стендах, без отрыва от работы.
После курса смогу [что сделаю сам] без привлечения подрядчика.
Стоимость — [сумма] ₽, REBRAIN работает с юрлицами по договору и счёту.
Готов обсудить, когда вам удобно.
Для оформления даём договор, счёт на юрлицо и закрывающие документы.
В конце года многие компании распределяют остаток бюджета на обучение, поэтому письмо лучше отправить сейчас. Счёт и договор подготовит менеджер — кнопка под постом.
👍6
🟡 Анонс бесплатных вебинаров на следующую неделю
—————————
1️⃣ Networks: Безопасное удалённое управление средствами протокола SSH на маршрутизаторах Eltex
📅 20 октября 2026, вторник, 19:00 по МСК
Программа вебинара:
🟢SSH: основные теоретические сведения;
🟢Базовая настройка SSH-сервера на маршрутизаторах ESR;
🟢Настройка аутентификации пользователей по паролю и открытому ключу.
Кто ведёт?
Андрей Шабалин — тренер Cisco / Huawei, инструктор академии Eltex и Астра-Университета
↘️ Регистрация
—————————
2️⃣ Linux: Восстановление данных
📅 21 октября 2026, среда, 20:00 по МСК
Программа вебинара:
🟢Таблицы разделов;
🟢Восстановление LVM;
🟢Восстановление суперблока ФС.
Кто ведёт?
Андрей Буранов — специалист по UNIX-системам в VK, 13+ лет работает с Linux, 11+ лет преподаёт
↘️ Регистрация
—————————
3️⃣ DevOps: Загруженность сервера 100% по CPU. Кто виноват и что делать?
📅 22 октября 2026, четверг, 20:00 по МСК
Программа вебинара:
🟢Первые команды:
🟢Ищем процесс-виновник:
🟢Анализ: это утечка памяти, бесконечный цикл или DDoS?
Кто ведёт?
Илья Сачков — DevOps-инженер в «Аптеки — Плюс», автор и ментор курса «Linux Basics» в REBRAIN
↘️ Регистрация
—————————
Не успеваете вживую? Записи эфиров есть в подписке REBRAIN.
—————————
1️⃣ Networks: Безопасное удалённое управление средствами протокола SSH на маршрутизаторах Eltex
📅 20 октября 2026, вторник, 19:00 по МСК
Программа вебинара:
🟢SSH: основные теоретические сведения;
🟢Базовая настройка SSH-сервера на маршрутизаторах ESR;
🟢Настройка аутентификации пользователей по паролю и открытому ключу.
Кто ведёт?
Андрей Шабалин — тренер Cisco / Huawei, инструктор академии Eltex и Астра-Университета
↘️ Регистрация
—————————
2️⃣ Linux: Восстановление данных
📅 21 октября 2026, среда, 20:00 по МСК
Программа вебинара:
🟢Таблицы разделов;
🟢Восстановление LVM;
🟢Восстановление суперблока ФС.
Кто ведёт?
Андрей Буранов — специалист по UNIX-системам в VK, 13+ лет работает с Linux, 11+ лет преподаёт
↘️ Регистрация
—————————
3️⃣ DevOps: Загруженность сервера 100% по CPU. Кто виноват и что делать?
📅 22 октября 2026, четверг, 20:00 по МСК
Программа вебинара:
🟢Первые команды:
top (заглянуть в P), htop, atop — какой инструмент когда;🟢Ищем процесс-виновник:
pidstat, strace -p;🟢Анализ: это утечка памяти, бесконечный цикл или DDoS?
Кто ведёт?
Илья Сачков — DevOps-инженер в «Аптеки — Плюс», автор и ментор курса «Linux Basics» в REBRAIN
↘️ Регистрация
—————————
Не успеваете вживую? Записи эфиров есть в подписке REBRAIN.
👍6❤1👏1
Диск забит на 100%, а du показывает половину
🟢 Сравните цифры:
Если
🟢 Найдите, кто их держит:
В выводе будут процесс, PID, номер дескриптора (FD) и размер. Чаще всего это лог, который удалили через
🟢 Освободите место. Самый чистый путь — перезапустить сервис или попросить его переоткрыть логи:
Если перезапускать сейчас нельзя, обнулите файл через дескриптор процесса. PID и FD берите из вывода lsof, здесь для примера 1234 и 7:
🟢 Чтобы не повторилось, удаляйте логи через logrotate, а не
Если
Процессы, файловые дескрипторы, диски и systemd разбираем на практике в курсе Linux Basics. Первые задания открыты бесплатно — по кнопке под постом.
df -h говорит, что корень заполнен, du насчитывает на 40 ГБ меньше, логи уже почистили, а места не прибавилось. Типичная причина: файл удалили, но процесс всё ещё держит его открытым. Пока дескриптор открыт, место на диске не освобождается.🟢 Сравните цифры:
df -h /
sudo du -xsh / 2>/dev/null
Если
df показывает заметно больше, чем du, ищите удалённые, но открытые файлы.🟢 Найдите, кто их держит:
sudo lsof -nP +L1 | grep deletedВ выводе будут процесс, PID, номер дескриптора (FD) и размер. Чаще всего это лог, который удалили через
rm вместо ротации.🟢 Освободите место. Самый чистый путь — перезапустить сервис или попросить его переоткрыть логи:
sudo systemctl restart nginxЕсли перезапускать сейчас нельзя, обнулите файл через дескриптор процесса. PID и FD берите из вывода lsof, здесь для примера 1234 и 7:
sudo truncate -s 0 /proc/1234/fd/7🟢 Чтобы не повторилось, удаляйте логи через logrotate, а не
rm. Для сервисов, которые не умеют переоткрывать файл, в конфиге ротации есть опция copytruncate.Если
df и du сходятся, а места всё равно нет, проверьте inode: df -i. Миллион мелких файлов сессий или кеша съедает их раньше, чем гигабайты.Процессы, файловые дескрипторы, диски и systemd разбираем на практике в курсе Linux Basics. Первые задания открыты бесплатно — по кнопке под постом.
👍18🔥6❤1