Библиотека девопса | DevOps, SRE, Sysadmin
1.07K subscribers
5 photos
1 video
10 links
Блог DevOps инженера
Download Telegram
⚡️ Чтение чужого Terraform - кода: боль и радость DevOps

Terraform сам по себе прост, но когда открываешь чужие модули - хочется закрыть ноутбук и уйти в отпуск.

Что обычно встречается:

- 100500 переменных в variables.tf, половина из которых нигде не используется.
- "Универсальный" модуль: и под AWS, и под GCP, и под Azure - но работает только в одном.
- Output-хаос: чтобы понять, откуда берётся IP, нужно пройти 5 вложенных модулей.
- Нет документации — комментарии? README? Не, не слышали.

👉 Как выжить:

1. Начни с terraform graph | dot -Tpng > graph.png — визуализация сильно помогает понять связи.
2. Используй terraform console — можно проверить выражения прямо на лету.
3. Включи TF_LOG=DEBUG при планировании — увидишь, что реально под капотом.
4. И не стесняйся переписать модуль под себя — часто это быстрее, чем поддерживать чужую магию.

💡 Совет: заведите внутренний гайд по стилю Terraform (структура папок, нейминг, обязательный README). Это спасает нервы всей команды.

Подпишись 👉@devopslib
👍4
🚀 Kubernetes: зачем вообще нужны операторы?

Обычный Deployment или StatefulSet хорошо справляется с запуском подов. Но вот что делать, если у тебя есть сложная система - например, база данных с репликацией, кластер Kafka или Redis с шардингом? Просто манифестов будет мало.

Тут приходят Kubernetes Operators.
Оператор - это контроллер + CRD (Custom Resource Definition), который понимает, как управлять конкретным приложением:

- следит за состоянием ресурса,
- запускает нужное количество реплик,
- настраивает связи,
- делает бэкапы, обновления, миграции.

👉 По сути, оператор превращает знания SRE/админа в код, который работает прямо внутри кластера.

Примеры:

- Prometheus Operator - автоматом деплоит Prometheus, Alertmanager, ServiceMonitor.
- Postgres Operator - умеет поднимать кластера PostgreSQL с репликацией и бэкапами.
- Cert-Manager - автоматически выдает TLS-сертификаты.

🔑 В итоге операторы позволяют управлять сложными системами так же просто, как подами. Главное - не городить «свой велосипед», а искать готовые CRD, которые уже сделали другие.

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

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

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

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

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

Реклама. ООО «АУДИТ-ТЕЛЕКОМ», ОГРН 1167746696776, erid: 2Vtzqv8Ag74
🔥 CI/CD пайплайны: боль или спасение?

Любой DevOps рано или поздно сталкивается с тем, что пайплайн превращается в монстра: шаги на 2000 строк, десятки if-ов, и полдня на разбор «почему не задеплоилось».

Но по сути CI/CD - это не только «запустить тесты и выкатить в прод», а целая философия:

🔹 CI (Continuous Integration)

- каждое изменение мержится быстро и проверяется автоматически;
- цель - держать main-ветку в «рабочем» состоянии всегда;
- меньше конфликтов и сюрпризов при релизах.

🔹 CD (Continuous Delivery/Deployment)

- всё, что прошло CI, можно выкатывать хоть в прод;
- ручная кнопка или автодеплой — зависит от зрелости команды;
- уменьшает время «от коммита до продакшна».

⚡️ Где ломается магия?

- Если пайплайны начинают жить своей жизнью, а разработчики боятся их трогать.
- Если тесты гоняются по часу, и команда снова жмёт «на выходных зарелизим».
- Если нет нормальной стратегии отката.

💡 Совет: держи пайплайн простым, модульным и прозрачным. Лучше несколько коротких пайплайнов, чем один гигант.

А у тебя пайплайн больше похож на швейцарские часы или на «дженкинс на костылях»? 😅

Подпишись 👉@devopslib
👍1
🔥 GitOps - next level для DevOps

Раньше деплой выглядел так: написали Helm-чарт → закинули kubectl apply → надеемся, что всё взлетит. Но у такого подхода куча минусов: ручные действия, нет прозрачного аудита, легко ошибиться.

🛠 Решение - GitOps.

👉 Суть: всё, что крутится в кластере, описано в Git.

- Изменения вносим через Pull Request.
- CI прогоняет проверки.
- Спец-оператор (ArgoCD или Flux) синхронизирует кластер с Git-репозиторием.

📌 Преимущества:

- Истина всегда в Git → легко откатиться.
- Аудит и история изменений из коробки.
- Меньше доступа к самому кластеру → безопаснее.
- Автоматическая самовосстановляемость: если кто-то руками изменит деплой, GitOps всё вернёт.

💡 По сути, Git становится "центральным управлением инфраструктуры".
Если раньше у вас был ssh и kubectl, то теперь всё решает git push.

А у вас уже есть GitOps в проде или пока классические пайплайны?

Подпишись 👉@devopslib
👍2