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
Сложная оркестрация

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

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

#devops #девопс

Подпишись 👉@i_DevOps
👍31
aws-network-policy-agent — это агент политики сети для Kubernetes, который обеспечивает реализацию Kubernetes NetworkPolicy на уровне VPC для Pod'ов в Amazon VPC Lattice. Он используется в сочетании с VPC Lattice integration for Amazon EKS.

Агент реализует политики сети Kubernetes, управляя исходящим трафиком Pod'ов через VPC Lattice Service Network, разрешая или блокируя соединения в соответствии с правилами, заданными в NetworkPolicy.

https://github.com/aws/aws-network-policy-agent

#devops #девопс

Подпишись 👉@i_DevOps
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
📥 Получено приглашение на Cloud․ru Tech Lab: DevOps

📅Когда: 22 мая в 18:00
📍Где: Москва, Гоэлро Лофт, м. Электрозаводская

В программе:
😶‍🌫️ClusterAPI как цель, Terraform как мост: управляем жизненным циклом платформы
Олег Одинцов, старший инженер платформы App.Farm РСХБ-Интех

😶‍🌫️Автомасштабирование K8s в ноль: от базы до хардкора
Илья Смирнов, архитектор решений Cloud․ru

😶‍🌫️Calico CNI: жизнь после запуска
Александр Качмашев, лидер круга «Инфраструктура для разработчиков» Точка

😶‍🌫️Как организовать сетевую связность Bare Metal Kubernetes
Антон Паус, DevOps-инженер Cloud․ru

Вечер завершится приятным afterparty c нетворкингом, легкими напитками и закусками.


🟢 Зарегистрироваться на митап
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
AList — это система для индексирования и управления файлами в облачном хранилище, предоставляющая веб-интерфейс и API. Поддерживает множество облачных хранилищ, таких как OneDrive, Google Drive, Dropbox, WebDAV и другие. Позволяет просматривать, скачивать и делиться файлами через веб-интерфейс без необходимости скачивать их на локальное устройство. AList написан на Go и легко разворачивается.

Основные возможности:

* Поддержка множества облачных хранилищ
* Удобный веб-интерфейс
* Гибкие настройки прав доступа
* REST API для интеграции
* Простота установки и настройки

https://github.com/AlistGo/alist

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Docker Images for Frp Based on Alpine and Debian

(amd64, arm32v5, arm32v6, arm32v7, arm64v8, i386, mips64le, ppc64le,riscv64, s390x)

https://github.com/snowdreamtech/frp

#devops #девопс

Подпишись 👉@i_DevOps
👍1
Как микросервисы общаются между собой в Kubernetes?

Знание сетевого взаимодействия — ключ к эффективному управлению кластерами!

⏺️ На открытом уроке 28 мая в 20:00 МСК вы разберётесь с типами сервисов Kubernetes: ClusterIP, NodePort, ExternalService и LoadBalancer. Мы детально расскажем, как правильно настроить маршрутизацию трафика и обеспечить доступность сервисов как внутри, так и вне кластера.

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

Регистрация открыта: https://vk.cc/cM8B1x

Урок пройдет в преддверии старта курса «Инфраструктурная платформа на основе Kubernetes», участники получат скидку на обучение.

🎁 Промокод на доп.скидку на курс Kuber_06 , срок ограничен.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍3
Понимание динамического масштабирования ресурсов Kubernetes и ускорения CPU

Одним из ключевых преимуществ Kubernetes является его способность эффективно управлять ресурсами контейнеров. Однако, по мере роста приложений и увеличения нагрузки, понимание того, как Kubernetes масштабирует ресурсы и использует возможности процессора, становится критически важным.

Что такое динамическое масштабирование ресурсов?

Динамическое масштабирование ресурсов — это механизм Kubernetes, который позволяет подстраивать лимиты ресурсов контейнеров во время их выполнения. Это особенно полезно в сценариях с переменной нагрузкой, где контейнеры могут требовать больше ресурсов в пиковые моменты и меньше — в периоды простоя.

Для этого Kubernetes использует такие инструменты, как:

* Vertical Pod Autoscaler (VPA) — автоматически регулирует запросы и лимиты ресурсов у подов.
* Horizontal Pod Autoscaler (HPA) — масштабирует количество подов в зависимости от метрик (например, загрузки CPU).

Что такое CPU Boost?

На уровне ядра Linux существует функция под названием CPU Boost (часто называемая Turbo Boost на процессорах Intel), которая позволяет временно увеличивать частоту CPU выше номинальной, если это необходимо.

Kubernetes позволяет использовать CPU Boost, но важно понимать, что:

* CPU boost не гарантируется, даже если ты укажешь высокий лимит CPU.
* Он может сработать, если:

* Контейнер запущен с Guaranteed QoS.
* У узла есть свободные ресурсы.
* Система не перегружена по температуре и энергопитанию.

Почему это важно?

Если твои приложения чувствительны к задержкам и требуют быстрой реакции (например, real-time обработка), то использование CPU Boost может дать кратковременное, но значительное улучшение производительности.

Но полагаться на него как на стабильную стратегию масштабирования не стоит — это больше бонус, чем гарантированный ресурс.

Практические рекомендации

1. Используй requests и limits с умом: слишком заниженные requests могут привести к throttling.
2. Настрой HPA и VPA, чтобы обеспечить гибкость и эффективность.
3. Не рассчитывай на CPU Boost как на основу производительности.
4. Мониторь реальные метрики и подстраивай конфигурации.


https://cloud.google.com/blog/products/containers-kubernetes/understanding-kubernetes-dynamic-resource-scaling-and-cpu-boost

#devops #девопс

Подпишись 👉@i_DevOps
👍42
Forwarded from Bash Советы
🔁 Как перезапускать сервис только если он завис?

Иногда не хочется перезапускать сервис "на всякий случай", но вот если он реально завис — другое дело. Вот простой способ проверять, активен ли сервис, и перезапускать его при зависании:


#!/bin/bash

SERVICE="nginx"

if ! systemctl is-active --quiet "$SERVICE"; then
echo "$(date): $SERVICE не активен, пробую перезапустить..." >> /var/log/service_monitor.log
systemctl restart "$SERVICE"
else
echo "$(date): $SERVICE работает нормально" >> /var/log/service_monitor.log
fi


🛠 Можно добавить в крон, например, проверку каждые 5 минут:


*/5 * * * * /usr/local/bin/check_nginx.sh


📁 Не забудь сделать скрипт исполняемым:


chmod +x /usr/local/bin/check_nginx.sh


💡 Можно заменить nginx на любой другой системный сервис.

👉@bash_srv
🥴53👍3👎2
Паттерны RESTful API. Как проектировать удобные, масштабируемые и гибкие API?

Этот вебинар поможет вам правильно проектировать API, избегать ошибок и применять передовые подходы при разработке микросервисов.

📌 На вебинаре вы узнаете:
– Какой уровень зрелости REST выбрать для вашего API?
– Что такое HATEOAS и когда он действительно полезен?
– Как использовать json-api и OData для работы с API?
– Как автоматически генерировать клиентские SDK и документацию с OpenAPI IDL?
– Лучшие практики проектирования RESTful API, которые помогут избежать ошибок и сделать API удобным для пользователей.

👉 Регистрация и подробности о курсе Highload Architect: https://vk.cc/cMaCa5

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
This media is not supported in your browser
VIEW IN TELEGRAM
k'exp - Kubernetes Explorer

Создан не для управления продом, а для изучения кубера через визуализацию.

k'exp предназначен для:

Изучение и исследование возможностей Kubernetes
Разработка приложений (предварительные наборы объектных графов для каждого приложения)
Разработка контроллеров и операторов (динамические графы объектов)
[скоро появится] Postman-подобный клиент и конструктор запросов для Kubernetes API
k'exp может отражать состояние вашего кластера в режиме реального времени:

https://github.com/iximiuz/kexp

#devops #девопс

Подпишись 👉@i_DevOps
👍3
Как проверить, что твои бэкапы не просто занимают место?

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

🔹 Автоматическое тестирование восстановления
Настрой регулярное восстановление из резервных копий в тестовой среде. Например, можно развернуть временный сервер и поднять на нём восстановленную БД.

🔹 Сравнение контрольных сумм
Для файловых бэкапов сохраняй хэши (MD5, SHA256) до и после резервного копирования. Это поможет выявить изменения или повреждения данных.

🔹 Логирование и мониторинг
Настрой алерты на ошибки резервного копирования. Если скрипт завершился неудачно, ты должен об этом узнать раньше, чем твой прод улетит в тартарары.

🔹 Глубина хранения и дедупликация
Не удаляй старые бэкапы слишком рано. Иногда проблему замечают через несколько недель. Храни несколько версий резервных копий, но следи за размером и удостоверься, что не копируешь лишнее.

🔹 Периодические мануальные проверки
Раз в месяц пробуй восстановить данные вручную. Это займёт 15 минут, но может спасти компанию от потерь.

Бэкап, который не тестировали на восстановление — это просто набор битов. Убедись, что твои копии действительно можно использовать!

#devops #девопс

Подпишись 👉@i_DevOps
👌4
Да что вы знаете про DevSecOps?

Проверь себя – пройди тест по ДевСекОпс и узнай, можешь ли ты стать DevSecOps-инженером!

🫵 Ответишь успешно — пройдешь на курс «Внедрение и работа в DevSecOps» от Отус по специальной цене.

Освойте принципы и популярные инструменты DevSecOps-инженера, которые помогут повысить вашу востребованность и доход на онлайн-курсе «Внедрение и работа в DevSecOps» от OTUS.

Авторская программа подготовлена опытным инженером и завалидированная партнером StartX.

➡️ ПРОЙТИ ТЕСТ

💥 Бонусом за успешно пройденный тест получишь доступ на сайт курса к записям лучших открытых уроков.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
🚀 Kubernetes 1.32: пять фич, которые стоит попробовать прямо сейчас

* Auto-delete PVC для StatefulSet
StatefulSet наконец-то умеет сам удалять PVC, когда поды и сам объект больше не нужны. Включите StatefulSetAutoDeletePVC и задайте persistentVolumeClaimRetentionPolicy — забудете про ручную очистку хранилища.

* Память-backed emptyDir с динамическим размером
Теперь emptyDir { medium: "Memory" } может автоматически подстраиваться под лимиты RAM вашего пода (или заданный лимит), а не фиксированные 50 %. Отлично для временных кэшей и build-джобов.

* Field Selectors для CRD
Custom Resource теперь поддерживает --field-selector, как “родные” объекты K8s. Фильтруйте CR легко, без дополнительных label-index.

* status.hostIPs в GA
Подам больше не нужен костыль, чтобы узнать IPv4/IPv6 узла в dual-stack-кластере: адреса приходят прямо в Downward API.

* Node name в ServiceAccount JWT
Узел теперь прописывается в SA-токен, что упрощает Validating/Mutating Admission Policies и сокращает риск эскалации прав.

💡 Как обновиться

1. Скачайте свежий kubeadm 1.32 и выполните kubeadm upgrade plan && kubeadm upgrade apply v1.32.
2. Проверьте deprecated API в релиз-нотах.
3. Включите нужные Feature Gates — и в бой!

#devops #девопс

Подпишись 👉@i_DevOps
👍61
Присоединяйтесь к обзору «Нимбиуса» — решения класса Cloud Management Platform

«Нимбиус» — это российская разработка — аналог VMware vRealize и Red Hat CloudForms, которая помогает крупным компаниям создавать частные облака и управлять гибридной инфраструктурой по модели Infrastructure-as-a-Code.

На мероприятии вы узнаете, как платформа повышает эффективность работы команд разработки и эксплуатации ИТ-инфраструктуры, а также увидите последние достижения:
▪️Интеграции с платформами zVirt и SpaceVM
▪️Новые PaaS-сервисы в маркетплейсе — СУБД и Kubernetes
▪️Единый модуль биллинга и аллокации затрат

Что еще в программе?
▪️Обзор трендов на инфраструктурном рынке в РФ
▪️Live-demo функционала продукта, новых фишек
▪️Непридуманные истории внедрения в Enterprise

Когда: 30 мая, 14:00 мск
Формат: онлайн

🔗 Регистрация
👍51
Изучение групп и версий API в Kubernetes

Kubernetes — мощная платформа оркестрации контейнеров, предлагающая широкий набор возможностей через свой API (интерфейс программирования приложений). Для эффективного использования функционала Kubernetes крайне важно понимать структуру его API, включающую группы API и версии. В этой статье мы рассмотрим виды групп API в Kubernetes с примерами, демонстрирующими их значение, а также подробно остановимся на версиях API для полного понимания.

https://devopsvoyager.hashnode.dev/exploring-kubernetes-api-groups-and-versions

#devops #девопс

Подпишись 👉@i_DevOps
👍2
Привет, друзья! Сегодня разберём, как выстроить надёжный GitOps-процесс с помощью Argo CD и Kubernetes.

1. Архитектура репозитоpиев

* Monorepo vs Multirepo: в зависимости от масштаба проектов выбирайте единое или раздельное хранилище манифестов.
* Разделяйте окружения (prod/stage/dev) по разным папкам или веткам.

2. Декларативность

* Храните все Kubernetes-манифесты (Deployment, Service, Ingress, ConfigMap, Secret) в Git.
* Все изменения проходят через MR/PR с обязательным код-ревью и автоматическим CI-проверками (lint, kubeval).

3. Установка и конфигурация Argo CD


kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml


* Подключите репозиторий:

* URL: ваш Git-сервер
* Type: Git
* Auth: SSH-ключ или токен
* Создайте приложение (Application), где укажете target-кластер и путь к манифестам.

4. Автосинхронизация и управление откатом

* Включите syncPolicy.automated для мгновенного применения изменений.
* Настройте pruneResources: true, чтобы удалять неактуальные объекты.
* Активируйте selfHeal: true — Argo CD будет восстанавливать конфигурацию при ручных правках.

5. Мониторинг и оповещения

* Подключите Prometheus и Grafana к Argo CD через метрики и вебхуки.
* Настройте оповещения в Slack или Telegram о неудачных синках и drift’ах.

6. Секреты и конфигурации

* Используйте Sealed Secrets или HashiCorp Vault для безопасного хранения.
* Аргокаталоги монтируйте через CSI-драйверы, чтобы не держать секреты в Git.

7. Best Practices

* Разделяйте права доступа через RBAC — кто может мёржить изменения в prod.
* Периодически пересматривайте Git-историю и чистите устаревшие ветки.
* Проводите тренировку «chaos engineering» — симулируйте сбои при помощи LitmusChaos или Chaos Mesh.

Небольшой чеклист перед деплоем:

* [ ] CI-лейблы зелёные
* [ ] Артефакты в артефактном репозитории
* [ ] Инфраструктурные тесты пройдены
* [ ] Определён ответственный за rollback

Успешного вам релиза и минимальных «рывков» в проде!

Подпишись 👉@devopslib
👍3
Горизонтальное масштабирование СУБД на примере Greenplum

Современные приложения работают с огромными объёмами данных, и рано или поздно классические СУБД перестают справляться с нагрузкой. Выход — горизонтальное масштабирование, позволяющее эффективно распределять запросы и хранение по нескольким узлам.

На вебинаре вы:

— Познакомитесь с концепцией горизонтального масштабирования и почему оно критически важно в высоконагруженных системах.
— Разберёте архитектуру СУБД Greenplum — одного из самых мощных решений на базе PostgreSQL для работы с Big Data.
— Узнаете, как устроены шардирование, партиционирование, репликация и управление кластерами в Greenplum.
— Посмотрите реальные кейсы использования Greenplum в распределённых системах.

👉 Регистрация и подробности о курсе Highload Architect: https://vk.cc/cMiILQ

Бесплатное занятие приурочено к старту курса Highload Architect, обучение на котором позволит освоить решения, которые выдерживают большое количество запросов в секунду и правильно оптимизировать работоспособность серверов.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Statusnook — это открытое (MIT) self-hosted решение для быстрого развёртывания страницы статуса и мониторинга HTTP-эндпоинтов с оповещениями в Email и Slack.

https://github.com/goksan/statusnook

#devops #девопс

Подпишись 👉@i_DevOps
👍4
Selectel Billing Exporter

Это экспортёр для Prometheus, который позволяет собирать метрики расходов в Selectel. С его помощью можно мониторить свои траты на сервисы Selectel прямо через привычные инструменты наблюдения.
Он поддерживает получение информации о балансе и детализации расходов по каждому сервису. Для работы потребуется указать API-токен Selectel.

https://github.com/mxssl/selectel-billing-exporter

#devops #девопс

Подпишись 👉@i_DevOps
👍6❤‍🔥1
7 популярных мифов о Service mesh, которые мешают вам его освоить 🚫

Service mesh окружен заблуждениями, из-за которых многие его боятся внедрять или считают бесполезным:

«У него огромный оверхед из-за нагрузки на систему»
«Для разработчика это лишнее, пусть DevOps разбираются»
«Зачем он нужен, если есть API Gateway?
И многое другое.

Собрали противоречивые утверждения в одном файле и разобрались, где – правда, а где – миф.

📌 Забирайте полезный материал у бота-помощника в один клик.

erid: 2W5zFFujWFr
🗂️ Как найти большие файлы в системе

Иногда на сервере внезапно заканчивается место, и нужно срочно найти, какие файлы занимают больше всего пространства. Вот простая команда на bash:


find / -type f -size +500M -exec ls -lh {} \; 2>/dev/null | awk '{ print $NF ": " $5 }' | sort -hr -k2


🔹 Что делает этот скрипт:

* Ищет все файлы больше 500 МБ по всему серверу.
* Показывает их размер и путь.
* Сортирует список по размеру — самые большие файлы будут вверху.

Совет:
Если нужно искать не по всему серверу, а только в домашней папке, просто поменяй / на ~/.

#devops #девопс

Подпишись 👉@i_DevOps
👍11🔥4