DevOps – Telegram
DevOps
8.46K subscribers
1.47K photos
809 videos
28 files
1.74K links
Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter
Download Telegram
🚀 Kubernetes операторы — зачем они нужны?

В Kubernetes мы привыкли описывать всё декларативно: деплойменты, сервисы, ингрессы. Но когда дело доходит до сложных систем вроде баз данных, кластеров Kafka или Redis, обычных манифестов уже не хватает.

Тут на сцену выходят операторы 👷‍♂️

👉 Оператор — это контроллер, который следит за кастомным ресурсом (CRD) и автоматизирует рутинные задачи:

- создание и удаление объектов;
- бэкапы и восстановление;
- апгрейды без даунтайма;
- масштабирование и самовосстановление.

📌 Пример:
Вместо того чтобы руками поднимать PostgreSQL, писать StatefulSet и конфиги - достаточно создать PostgresCluster CRD. Оператор сам раскатит БД, настроит реплики, PVC и даже сделает бэкап.

💡 По сути, оператор - это "человек-админ в коде". Он знает, как управлять приложением и делает это автоматически в стиле GitOps.

#devops #девопс

Подпишись 👉@i_DevOps
3
Наглядное руководство по туннелированию SSH и переадресации портов

Если говорить коротко, то я жалею, что не знал о пробросе портов и туннелировании раньше. В этой статье я пытаюсь лучше понять это и поделиться с вами некоторым опытом и советами.
Темы: сценарии использования, конфигурация, SSH jumphosts, локальная/удаленная/динамическая переадресация портов и ограничения

https://ittavern.com/visual-guide-to-ssh-tunneling-and-port-forwarding/

#devops #девопс

Подпишись 👉@i_DevOps
👍6🔥21
Чем отличается StatefulSet от Deployment?

Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния.

StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том.

#devops #девопс

Подпишись 👉@i_DevOps
👍4
🔥 Открытый урок «Архитектура развертывания GitLab: от тестовой среды до продакшна».

🗓 10 сентября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «CI/CD на основе GitLab».

🎯 На вебинаре разберем:

✔️ Как выбрать способ развертывания GitLab: Omnibus, Docker, Kubernetes
✔️ Рекомендации по архитектуре для разных масштабов: от одиночного сервера до распределённой инсталляции
✔️ Сравнение плюсов и минусов подходов: простота, отказоустойчивость, масштабируемость
✔️ Типичные проблемы при развёртывании и как их избежать

👥 Кому будет интересно:
- Начинающим DevOps-инженерам — вы получите базовое понимание архитектуры GitLab и научитесь разворачивать его под разные задачи
- DevOps-практикам, которые уже используют GitLab и хотят повысить стабильность и отказоустойчивость
- Инженерам по внедрению CI/CD, которым важно понять, как масштабировать GitLab в корпоративной среде

🎯 Что вы получите:
- Понимание, как развернуть GitLab оптимально под свои задачи
- Понимание, как правильно выбрать среду (Docker vs Kubernetes) для развёртывания
- Практические советы по стабильности, резервированию и отказоустойчивости GitLab-инсталляций

🔗 Ссылка на регистрацию: https://vk.cc/cPbfkb

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Реагирование на инциденты ИБ в Linux-системах: база

В мире, где всё чаще происходят кибератаки, важно иметь понимание процесса реагирования на инциденты информационной безопасности. Особенно важно это в контексте Linux-систем, которые являются основой многих критически важных элементов ИТ-инфраструктуры компаний. Под катом вы найдете базовые моменты этого процесса, команды, которые могут быть использованы для анализа, а также точки интереса, на которые стоит обращать внимание. Статья будет полезна в первую очередь начинающим администраторам Linux-систем и отделам ИБ для составления планов по реагированию.

https://habr.com/ru/companies/first/articles/843126/

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Как допилить GitLab CI/CD и перестать переписывать пайплайны

Меня зовут Роман Волков, я Senior DevOps в МТС Web Services. Последние несколько лет мне приходилось создавать и адаптировать конвейеры на базе GItLab-CI, изменяя процесс автоматизации под каждую новую команду, стек, продукт и окружения эксплуатации. Чтобы облегчить жизнь себе и коллегам, я сделал небольшой внутренний фреймворк — FundaPipe, значительно упрощающий создание, развитие, переиспользование и применение самих конвейеров разработчиками.

https://habr.com/ru/companies/ru_mts/articles/938704/

#devops #девопс

Подпишись 👉@i_DevOps
👍4😁21
Сколько раз вы слышали истории о том, как злоумышленники получали доступ к Kubernetes-кластерам через неправильно настроенные права доступа или незащищённые секреты? В эпоху, когда контейнеризация стала стандартом, безопасность K8s — это уже не опция, а жизненная необходимость для любой серьёзной инфраструктуры.

📅 9 сентября в 20:00 Денис Шишикин проведёт открытый вебинар «Обеспечение безопасности в Kubernetes» в рамках курса «DevOps Advanced». Это практическое занятие для тех, кто хочет защитить свои кластеры от типовых угроз и научиться применять проверенные практики безопасности.

На вебинаре разберут конкретные инструменты и подходы — механизмы контроля доступа через RBAC, ограничение привилегий подов с помощью Pod Security Admission, безопасную работу с секретами через Sealed Secrets. Денис покажет, как сканировать манифесты и кластеры с помощью Trivy и kube-bench.

Особенно полезно будет DevOps-инженерам, системным администраторам и всем, кто работает с Kubernetes в продакшне. Спикер объяснит, какие угрозы характерны для K8s-кластеров и как проводить базовый аудит безопасности ресурсов и конфигураций.

👉 Вебинар бесплатный, но регистрация обязательна — места ограничены: https://vk.cc/cPeCNb

🎁 Каждый участник вебинара получит бонус — скидку на полный курс. Главное — успеть записаться.

Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576
1👍1
This media is not supported in your browser
VIEW IN TELEGRAM
mk - Интерактивный запуск задач для Makefile(Taskfile.yml)

Функции:
- Интерактивный интерфейс: Просматривайте и выбирайте доступные команды make с помощью стрелок или фильтруйте, вводя текст.
- Документация: Ознакомьтесь с описанием каждой команды, чтобы понять её назначение и использование.
- Клавиши, как в Vim: Используйте j и k для навигации, Enter для выполнения, а q для выхода.
- Фильтрация: Быстро находите команды, вводя часть их названия. Нажмите ? для справки.
- Удалённый Makefile: Загрузите Makefile с удалённого URL и выполните команды.
- Локальный Makefile: Загрузите Makefile из любой директории и выполните команды.
- Поддержка Taskfile.yml: Загрузите Taskfile.yml из удалённого URL или локального пути и выполните задачи.

https://github.com/orangekame3/mk

#devops #девопс

Подпишись 👉@i_DevOps
👍4
DevOps, админы, разработчики, архитекторы — хватит закрывать глаза на «серого кардинала» кластера. 

9 сентября в 19:00 мы разберём все тонкости работы kubelet с ведущим DevOps-инженером и магистром Михаилом Чугуновым.

На вебинаре вы узнаете:
💡Как kubelet управляет жизненным циклом подов и почему без него кластер — как корабль без капитана 
💡Что происходит, когда kubelet падает, и как быстро возвращать систему в строй
💡Взаимодействие с API-сервером, CRI, CNI, CSI и kube-proxy — не только теория, но реальные практические советы
💡Как избежать катастроф из-за неправильной настройки kubelet и продумать архитектуру под микросервисы

🎁Бонусы для участников:
7% скидка на любой курс OTUS
Видео-урок: «Детальный разбор Kubernetes»
Видео-разбор: «строим конвейер поставки»

Не откладывай — количество мест ограничено, а кластер ждать не станет. 
Записывайся https://tglink.io/ebece533d53c

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFG1vcLY
#devops #девопс

Подпишись 👉@i_DevOps
😁13
Infrastructure as Code на практике: как мы рефакторили сложный Ansible-репозиторий

Это статья о том, как сделать так, чтобы заказчику было легко пользоваться Ансиблом. Сразу оговорюсь: речь пойдет о кейсе, когда на вашей ферме 100 голов, и всех вы знаете по именам (да, так тоже бывает).

Ниже будет спорный материал. Результат описанного рефакторинга — компромисс между практикой IAC и людьми. Последняя составляющая этого компромисса требует тонкой настройки и деликатного подхода, поскольку люди в любой момент могут неосознанно начать отдаляться от IAC. Причина всегда одна — когнитивная нагрузка. Как только она начнет доставлять дискомфорт, IAC потихоньку двигают в сторону.

https://habr.com/ru/companies/kts/articles/945016/

#devops #девопс

Подпишись 👉@i_DevOps
👍3
🗓 Как быстро сохранить и восстановить ресурсы в Kubernetes

Иногда нужно забэкапить пачку однотипных ресурсов и потом без боли восстановить.
Делимся двумя проверенными способами.

1️⃣ kubectl-neat + yq
Очищаем YAML от лишних метаданных и превращаем массив в отдельные документы:

kubectl get <resource> -n <namespace> -o yaml \
| kubectl-neat \
| yq eval '.items[] | split_doc' - > resources.yaml

kubectl apply -f resources.yaml


2️⃣ kubedump
Автоматизирует сохранение/восстановление по проектам:

kubedump dump <namespace> --resources <resource> --project <project-name>
kubedump restore --project <project-name>


Что выбрать?
kubectl-neat + yq: лёгкий, гибкий, для разовых задач.
kubedump: для регулярных бэкапов и больших кластеров.

Бонус:
➡️ Лимиты ресурсов в Kubernetes
➡️ Как настроить basicAuth в Traefik

➡️ Больше лайфхаков и практичных утилит для инженеров DevOps — в CORTEL

Реклама ООО "Кортэл"
ИНН: 7816246925
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3
Canary-деплой в Kubernetes с использованием Argo Rollouts и Istio

Мы не раз разбирали в своём блоге теорию и практику по разным стратегиям развёртывания новой версии приложения в Kubernetes. Сегодня рассмотрим ещё одну реализацию канареечного деплоя: с пассивными healthcheck и использованием Argo Rollouts и Istio. Этот вариант подойдёт, если к вашему приложению обращаются не через Ingress, а ходят внутри кластера по адресу service. Или если вы хотите видеть, что происходит с пользовательским трафиком на каждом из этапов обновления.

https://habr.com/ru/companies/flant/articles/943624/

#devops #девопс

Подпишись 👉@i_DevOps
👍31
Как мы улучшили балансировку нагрузки ингестеров в Grafana Mimir с помощью spread-minimizing токенов

Grafana Mimir - наша открытая, горизонтально масштабируемая, мультиарендная база временных рядов, позволяющая принимать более 1 миллиарда активных серий. Ингестеры Mimir используют консистентное хеширование - распределённую технику хеширования для репликации данных. Этот подход гарантирует минимальное количество перемещений временных рядов между доступными ингестерами при добавлении или удалении узлов в системе.

Мы заметили, что ранее используемый в Mimir алгоритм консистентного хеширования приводил к неравномерному распределению временных рядов между ингестерами: разброс нагрузки доходил до 25%. В результате одни ингестеры перегружались, а другие оставались недоиспользованными. Чтобы решить эту проблему, мы разработали новый алгоритм - стратегию генерации токенов, минимизирующую разброс. Она позволяет, с одной стороны, сохранять преимущества консистентного хеширования, а с другой - достигать почти идеального распределения нагрузки.

Равномерная балансировка нагрузки оптимизирует сетевую производительность и снижает задержки, поскольку спрос равномерно распределяется между ингестерами. Это обеспечивает более эффективное использование вычислительных ресурсов и ведёт к более стабильной производительности. В этом посте мы представим наш новый алгоритм и покажем, как он улучшил балансировку нагрузки ингестеров в некоторых наших продакшн-кластерах Grafana Cloud Metrics (работающих на базе Mimir) до уровня, который теперь практически идеален.

https://grafana.com/blog/2024/03/07/how-we-improved-ingester-load-balancing-in-grafana-mimir-with-spread-minimizing-tokens/

#devops #девопс

Подпишись 👉@i_DevOps
2👍1
🇷🇺 100% российская разработка

INFRAX — платформа all-in-one для управления ИТ-инфраструктурой:

Мониторинг инфраструктуры (ITOM)
Удаленный доступ для сотрудников и привилегированных пользователей
Обработка заявок пользователей (ServiceDesk)
База знаний с разграничением доступа к категориям (публичные и закрытые)
Автоматизация (скрипты и планировщик)
Контроль привилегированных пользователей. Видеозапись сессий RDP/SSH/VNC. (PAM)
Управление доступами. Доступ ко всем корпоративным сервисам через одну учетку (IAM)

БЕСПЛАТНО до 100 пользователей! 🎁

👉 Попробовать INFRAX

Реклама. ООО «АУДИТ-ТЕЛЕКОМ», ОГРН 1167746696776, erid: 2Vtzqv8Ag74
👍3
Чем отличается Kubernetes от Openshift?

Openshift имеет более строгие политики безопасности и модели аутентификации.
Openshift поддерживает полную интеграцию CI/CD Jenkins.
Openshift имеет веб-консоль по-умолчанию. В Kubernetes консоль необходимо дополнительно устанавливать консоль.
В Kubernetes возможно устанавливать сторонние сетевые плагины. В Openshift используется собственное сетевое решение Open vSwitch, которое предоставляет 3 различный плагина.
Kubernetes может быть установлен практически на любой дистрибутив Linux. Openshift имеет ограничения на устанавливаемые дистрибутивы, преимущественно используются RH-дистрибутивы.
Kubernets доступен в большинстве облачных платформ - GCP, AWS, Azure, Yandex.Cloud. Openshift доступен на облачной платформе Azure и облаке от IBM.
По-умолчанию, в Openshift поды в кластере могут быть запущены только под обычным пользователем, чтобы запустить под под пользователем root необходимо выдать права для сервисного аккаунта. В Kubernetes по-умолчанию поды могут быть запущены по пользователем root.

#devops #девопс

Подпишись 👉@i_DevOps
1
🚀 Хотите ускорить разработку и автоматизировать рутинные процессы?

🦾 CI/CD — это то, что превращает долгие релизы в один клик. А GitLab — инструмент, который позволит выстроить этот процесс без лишней боли.

💡 На курсе «CI/CD на основе GitLab» вы научитесь развертывать GitLab и GitLab Runner, настраивать пайплайны любой сложности, интегрировать Ansible, Docker и Kubernetes, а также внедрять лучшие практики безопасности. Всё это на актуальной версии и в формате живых лекций с практикой.

🎯 Вы будете понимать, как построить эффективный workflow, настроить автоматическую доставку кода, тестирование и деплой. После курса вы сможете уверенно работать с CI/CD в реальных проектах и говорить на одном языке с DevOps-инженерами.

➡️ Пройдите вступительное тестирование и присоединяйтесь к группе:
https://vk.cc/cPlYgF

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
Репликация базы Postgrespro на двух нодах

В данной статье описывается пошаговая настройка отказоустойчивой репликации PostgresPro-12 на двух серверах в изолированной среде без внешнего доступа и возможности развертывания третьего узла. Решение ориентировано на AstraLinux, но легко адаптируется под другие дистрибутивы. В условиях, где стандартные решения вроде Patroni с etcd или ZooKeeper неприменимы из-за требования минимум трёх нод, предлагается альтернативный подход на базе keepalived и кастомных bash-скриптов.
Ключевой особенностью является использование keepalived не только для управления виртуальным IP-адресом (VIP), но и для автоматического переключения роли PostgreSQL между мастером и репликой при отказе основного сервера.

https://habr.com/ru/articles/945716/

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Лекторий по SRE

Примеры сбоев
Что такое SRE
Цели мониторинга, логи и метрики
Детектирование проблем до и во время сбоя
SLA, SLO, SLI
Причины сбоев
Устранение сбоев
Постмортемы
Приемы уменьшения количества сбоев
Устойчивый к сбою код

источник

#devops #девопс

Подпишись 👉@i_DevOps
👍7