fa
Feedback
DevOps

DevOps

رفتن به کانال در Telegram

Docker, Kubernetes, облачные сервисы (AWS, GCP, Azure), Infrastructure as a Code (Terraform, CloudFormation), администрирование Windows и Linux, сети TCP, IP, скрипты (Bash, PowerShell), Ansible, Jenkins, DevSecOps, логирование. По вопросам @evgenycarter

نمایش بیشتر
8 766
مشترکین
+524 ساعت
-247 روز
+1830 روز
آرشیو پست ها
DevOps
8 765
Как мы улучшили балансировку нагрузки ингестеров в Grafana Mimir с помощью spread-minimizing токенов Grafana Mimir - наша отк
Как мы улучшили балансировку нагрузки ингестеров в 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

DevOps
8 765
Canary-деплой в Kubernetes с использованием Argo Rollouts и Istio Мы не раз разбирали в своём блоге теорию и практику по разн
Canary-деплой в Kubernetes с использованием Argo Rollouts и Istio Мы не раз разбирали в своём блоге теорию и практику по разным стратегиям развёртывания новой версии приложения в Kubernetes. Сегодня рассмотрим ещё одну реализацию канареечного деплоя: с пассивными healthcheck и использованием Argo Rollouts и Istio. Этот вариант подойдёт, если к вашему приложению обращаются не через Ingress, а ходят внутри кластера по адресу service. Или если вы хотите видеть, что происходит с пользовательским трафиком на каждом из этапов обновления. https://habr.com/ru/companies/flant/articles/943624/ #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
🗓 Как быстро сохранить и восстановить ресурсы в 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

DevOps
8 765
Infrastructure as Code на практике: как мы рефакторили сложный Ansible-репозиторий Это статья о том, как сделать так, чтобы з
Infrastructure as Code на практике: как мы рефакторили сложный Ansible-репозиторий Это статья о том, как сделать так, чтобы заказчику было легко пользоваться Ансиблом. Сразу оговорюсь: речь пойдет о кейсе, когда на вашей ферме 100 голов, и всех вы знаете по именам (да, так тоже бывает). Ниже будет спорный материал. Результат описанного рефакторинга — компромисс между практикой IAC и людьми. Последняя составляющая этого компромисса требует тонкой настройки и деликатного подхода, поскольку люди в любой момент могут неосознанно начать отдаляться от IAC. Причина всегда одна — когнитивная нагрузка. Как только она начнет доставлять дискомфорт, IAC потихоньку двигают в сторону. https://habr.com/ru/companies/kts/articles/945016/ #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
#devops #девопс Подпишись 👉@i_DevOps
#devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
DevOps, админы, разработчики, архитекторы — хватит закрывать глаза на «серого кардинала» кластера. 9 сентября в 19:00 мы разб
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
8 765
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

DevOps
8 765
Сколько раз вы слышали истории о том, как злоумышленники получали доступ к Kubernetes-кластерам через неправильно настроенные
Сколько раз вы слышали истории о том, как злоумышленники получали доступ к 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

DevOps
8 765
Хотите узнать, что происходит у коллег на проде? Приходите на DevOops 2025 16–17 сентября в Санкт-Петербурге или участвуйте о
Хотите узнать, что происходит у коллег на проде? Приходите на DevOops 2025 16–17 сентября в Санкт-Петербурге или участвуйте онлайн. Конференция по инженерным решениям и DevOps-культуре собрала 50 докладов про основные тенденции DevOps-мира — от Kubernetes и security до ML/AI и командных практик. В программе — доклады, включающие реальный опыт спикеров который можно применить в своей работе, и хардкор — для расширения границ инженерного мышления. Помимо докладов будут дискуссии со спикерами, круглые столы, зоны нетворкинга, нетехнический кейноут от специального гостя и вечеринка. Подробности и билеты — на сайте DevOops. С промокодом IDEVOPS персональные билеты дешевле. Реклама. ООО «Джуг Ру Груп». ИНН 7801341446

DevOps
8 765
Как допилить GitLab CI/CD и перестать переписывать пайплайны Меня зовут Роман Волков, я Senior DevOps в МТС Web Services. Пос
Как допилить GitLab CI/CD и перестать переписывать пайплайны Меня зовут Роман Волков, я Senior DevOps в МТС Web Services. Последние несколько лет мне приходилось создавать и адаптировать конвейеры на базе GItLab-CI, изменяя процесс автоматизации под каждую новую команду, стек, продукт и окружения эксплуатации. Чтобы облегчить жизнь себе и коллегам, я сделал небольшой внутренний фреймворк — FundaPipe, значительно упрощающий создание, развитие, переиспользование и применение самих конвейеров разработчиками. https://habr.com/ru/companies/ru_mts/articles/938704/ #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
Реагирование на инциденты ИБ в Linux-системах: база В мире, где всё чаще происходят кибератаки, важно иметь понимание процесс
Реагирование на инциденты ИБ в Linux-системах: база В мире, где всё чаще происходят кибератаки, важно иметь понимание процесса реагирования на инциденты информационной безопасности. Особенно важно это в контексте Linux-систем, которые являются основой многих критически важных элементов ИТ-инфраструктуры компаний. Под катом вы найдете базовые моменты этого процесса, команды, которые могут быть использованы для анализа, а также точки интереса, на которые стоит обращать внимание. Статья будет полезна в первую очередь начинающим администраторам Linux-систем и отделам ИБ для составления планов по реагированию. https://habr.com/ru/companies/first/articles/843126/ #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
🔥 Открытый урок «Архитектура развертывания GitLab: от тестовой среды до продакшна». 🗓 10 сентября в 20:00 МСК 🆓 Бесплатно.
🔥 Открытый урок «Архитектура развертывания 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

DevOps
8 765
Чем отличается StatefulSet от Deployment? Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния. StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том. #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
Наглядное руководство по туннелированию SSH и переадресации портов Если говорить коротко, то я жалею, что не знал о пробросе
Наглядное руководство по туннелированию SSH и переадресации портов Если говорить коротко, то я жалею, что не знал о пробросе портов и туннелировании раньше. В этой статье я пытаюсь лучше понять это и поделиться с вами некоторым опытом и советами. Темы: сценарии использования, конфигурация, SSH jumphosts, локальная/удаленная/динамическая переадресация портов и ограничения https://ittavern.com/visual-guide-to-ssh-tunneling-and-port-forwarding/ #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
🚀 Kubernetes операторы — зачем они нужны? В Kubernetes мы привыкли описывать всё декларативно: деплойменты, сервисы, ингрессы. Но когда дело доходит до сложных систем вроде баз данных, кластеров Kafka или Redis, обычных манифестов уже не хватает. Тут на сцену выходят операторы 👷‍♂️ 👉 Оператор — это контроллер, который следит за кастомным ресурсом (CRD) и автоматизирует рутинные задачи: - создание и удаление объектов; - бэкапы и восстановление; - апгрейды без даунтайма; - масштабирование и самовосстановление. 📌 Пример: Вместо того чтобы руками поднимать PostgreSQL, писать StatefulSet и конфиги - достаточно создать PostgresCluster CRD. Оператор сам раскатит БД, настроит реплики, PVC и даже сделает бэкап. 💡 По сути, оператор - это "человек-админ в коде". Он знает, как управлять приложением и делает это автоматически в стиле GitOps. #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
CI/CD — это больше, чем модный термин. Это практики, которые экономят время команды, уменьшают количество ошибок и помогают р
CI/CD — это больше, чем модный термин. Это практики, которые экономят время команды, уменьшают количество ошибок и помогают релизить быстрее. Но как правильно построить pipeline, чтобы он не стал источником проблем? Какие шаги в workflow действительно обязательны, а какие тормозят процесс? На открытом уроке разберём реальные кейсы и покажем CI/CD на практике. Вы увидите полный цикл — от сборки до доставки веб-приложения, узнаете о ключевых ролях DevOps в процессе и разберётесь в лучших практиках. После этого вы сможете грамотно выстроить CI/CD под задачи своей команды. Присоединяйтесь 2 сентября в 20:00 МСК, урок проходит в преддверие старта курса «GitOps», все участники получат скидку на обучение: https://vk.cc/cP1V7r Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

DevOps
8 765
Container and image vocabulary Визуализация и простое объяснение основных терминов в области контейнеризации. https://dev.to/
Container and image vocabulary Визуализация и простое объяснение основных терминов в области контейнеризации. https://dev.to/zdybit/container-and-image-vocabulary-123k #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
🚀 Kubernetes операторы: зачем они нужны? Если ты когда-нибудь настраивал stateful сервисы в Kubernetes (Postgres, Kafka, Elasticsearch и т.д.), то знаешь: манифесты Deployment/StatefulSet сами по себе редко закрывают все потребности. Нужен кто-то, кто будет следить за жизненным циклом приложения: бэкапы, апгрейды, реплики, восстановление. Вот тут и появляются Operators. Оператор — это контроллер, который расширяет Kubernetes API и умеет управлять сложными приложениями как «живым организмом». По сути, он кодирует опыт SRE/админа внутри кластера. Как это работает? 1. Создаётся CustomResourceDefinition (CRD) - новый объект в Kubernetes (например, PostgresCluster). 2. Пишется контроллер, который следит за этим объектом и выполняет нужные действия (инициализация БД, настройка реплик, обновления). 3. Ты как DevOps просто применяешь YAML с описанием кластера, а оператор сам делает всю грязную работу. Примеры операторов Zalando Postgres Operator — управляет кластерами PostgreSQL. Strimzi - Kafka в Kubernetes. Prometheus Operator - автоматизация деплоя Prometheus + Alertmanager. Почему это круто? -Снижается рутина → не нужно писать километры bash-скриптов. -Упрощается управление → вместо «кучи манифестов» ты работаешь с одним объектом. -Автоматизация best practices → разработчики операторов уже заложили правильные сценарии. #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
Объясните, что такое диспетчер облачного контроллера. Cloud Controller Manager позволяет связать кластер с API облачного провайдера. Cloud-controller manager позволяет поставщикам облачных услуг развиваться независимо от основного кода Kubernetes, абстрагируя специфичный код. Это позволяет поставщикам облачных услуг разрабатывать и поддерживать свой код независимо от основного кода Kubernetes. Используя CCM, облачные операции, такие как создание и управление балансировщиками нагрузки, томами блочного хранения и облачными сетевыми ресурсами, могут выполняться бесперебойно в кластере Kubernetes. Это позволяет пользователям использовать преимущества как Kubernetes, так и облачного провайдера, сводя к минимуму потенциальные проблемы совместимости. #devops #девопс Подпишись 👉@i_DevOps

DevOps
8 765
Объясните концепцию Ingress в Kubernetes Ingress — это объект API Kubernetes, который используется для предоставления маршрутов HTTP и HTTPS извне кластера к сервисам внутри кластера. Это обеспечивает единую точку входа в кластер, позволяет более просто управлять приложениями и устранять проблемы с маршрутизацией. #devops #девопс Подпишись 👉@i_DevOps