Библиотека девопса | DevOps, SRE, Sysadmin
10.3K subscribers
1.37K photos
70 videos
4 files
2.57K links
Все самое полезное для девопсера в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/25874ec4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
✍🏻 Как бы вы использовали Docker Compose для масштабирования сервисов?

Для масштабирования сервисов с помощью Docker Compose можно использовать флаг --scale с командой docker-compose up. Обычно это используется для сервисов без состояния, таких как веб-серверы. Например, для масштабирования веб-сервиса до 3 экземпляров:

docker-compose up --scale web=3


✔️ Важно убедиться, что файл docker-compose.yml имеет правильно определенные службы и использует внешний балансировщик нагрузки или поддерживает масштабируемые экземпляры. Масштабирование сервисов с отслеживанием состояния (например, баз данных) требует дополнительной настройки для обеспечения согласованности данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 GitLab обновляет UI

GitLab продолжает преобразовывать пользовательский интерфейс, команда улучшила опыт развертывания (CD) и работу с ключами.

🔍 Что изменилось

• Обновлённый список окружений — теперь статус, инициатор, коммит, версия видны сразу, без раскрытия деталей.

• Улучшенная фильтрация ключей развертывания — теперь быстрее и удобнее находить нужные ключи.

➡️ Подробнее в блоге компании

🎯 GitLab делает ставку на удобство пользователей – какие ещё части платформы вам хотелось бы улучшить? Делитесь в комментариях 👇

🐸Библиотека devops'a #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥1
Управление доступом в Argo CD с ArgoCD RBAC Operator

Argo CD — мощный инструмент для GitOps, но настройка доступа может быть сложной. Используем ArgoCD RBAC Operator, чтобы автоматизировать управление ролями и разрешениями.

1️⃣ Установите ArgoCD RBAC Operator

kubectl apply -f https://raw.githubusercontent.com/example/argocd-rbac-operator/install.yaml


2️⃣ Определите роли и права

apiVersion: rbac.argocd.dev/v1alpha1
kind: ArgoCDRole
metadata:
name: dev-team
spec:
policies:
- action: get
resource: applications
scope: projects/dev


3️⃣ Назначаем роли пользователям

apiVersion: rbac.argocd.dev/v1alpha1
kind: ArgoCDUser
metadata:
name: user1
spec:
roles:
- dev-team


4️⃣ Проверяем доступ

argocd account can-i get applications --as user1

Если настройка корректна, пользователь получит соответствующие права.

💡 Попробовали этот оператор? Поделитесь опытом в комментариях! ⬇️

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41🔥1👾1
💪 База данных на стероидах

Tarantool совмещает in-memory NoSQL-хранилище с возможностью работы с SQL и поддержкой Lua-скриптов, позволяя писать бизнес-логику прямо внутри базы. Он поддерживает репликацию, шардирование и транзакции, обеспечивая низкие задержки и высокую производительность.

Что делать, если данных слишком много

— Оперативная память – штука дорогая. Для хранения больших объемов данных в Tarantool есть Vinyl – движок, который вместо RAM использует диск.

— Он работает по принципу LSM-дерева, где новые данные сначала записываются в память, а затем постепенно сбрасываются на диск, уменьшая нагрузку на систему.

Благодаря этому Vinyl идеально подходит для обработки больших объемов информации, например, в аналитике или логах.

📌 Подробнее про Vinyl

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4😁3🔥2
Команда дня: запуск временного контейнера

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

Для этого отлично подходит следующая команда:
docker run --rm -it alpine sh


Она запустит чистый Alpine и удалит его после выхода.

Попробуйте на досуге. А также не забывайте делиться самыми удобными фичами в комментариях👇

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🥱3
Чек-лист: перед деплоем Docker-контейнера

Если нужно отправить контейнер в плавание, то стоит пройтись по всем пунктам из списка:

📌 Оптимизация Dockerfile
✓ Нет ненужных пакетов и зависимостей
✓ Используется COPY вместо ADD, если не нужно скачивать файлы
✓ Используется .dockerignore, чтобы не включать лишние файлы
✓ Не используем latest, а задаем конкретные версии образов

🔒 Безопасность
✓ Контейнер не запускается под root
✓ Установлены минимально необходимые права
✓ Конфиденциальные данные передаются через переменные окружения или секреты
✓ Открываются только нужные порты
✓ Включена многослойная сборка, если есть зависимости

📊 Оптимизация
✓ Удалены временные файлы
✓ Используется --no-cache при установке пакетов
✓ Docker history показывает небольшое количество слоев (docker history <image_id>)

🧷 Работа с переменными окружения
✓ Все конфигурации вынесены в переменные окружения
✓ Используются .env файлы, а не хардкод переменных в Dockerfile
✓ Секретные данные (пароли, токены) хранятся в специальных инструментах

💿 Volumes
✓ Используются volumes, а не bind mounts, если контейнер должен сохранять данные
✓ Проверены права на запись
✓ Очищены старые тома, если они больше не используются docker volume prune
✓ Настроены резервные копии для важных данных

🧪 Тестирование перед деплоем
✓ Приложение успешно запускается в контейнере локально
✓ Тесты на работоспособность (docker run myimage pytest)
✓ Тесты на совместимость с БД (docker run myimage integration-tests)
docker scan myimage не показывает критических уязвимостей

Если все пункты выполнены, деплой должен пройти гладко.

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🔥1
🔥 Когда что-то пошло не по плану

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

👀 Какая самая неожиданная проблема вам попадалась в DevOps?

🔧 Может быть, сервер решил обновиться в разгар деплоя?
🕵️‍♂️ Или кто-то залил в продакшен конфигурацию с rm -rf /?
🚀 А, может, Kubernetes самовольно начал устраивать хаос в кластере?

Делитесь своими историями👇 Самый эпичный случай можно будет увековечить в мемах 😄

🐸Библиотека devops'a #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2🤔1
🎙 Новый выпуск подкаста LinkMeUp

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

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

➡️ Слушать подкаст

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔒 HashiCorp Vault Enterprise 1.19

В свежем апдейте управление секретами становится еще безопаснее, удобнее и готово к будущим вызовам.

💡 Что нового

• Постквантовая криптография — теперь в движке секретов Transit реализована экспериментальная поддержка алгоритмов, устойчивых к атакам квантовых компьютеров.

• Автоматическая ротация корневых ключей — новая версия автоматизирует ротацию ключей для AWS, Azure, Google Cloud, LDAP и даже баз данных.

• Улучшенный UI — добавлена поддержка Workload Identity Federation (WIF) для Google Cloud и Azure.

HashiCorp демонстрируют, что можно сделать безопасность более автоматизированной и современной, без лишних хлопот.

➡️ Подробнее в блоге компании

🐸Библиотека devops'a #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Как у вас с режимом сна?

🐸Библиотека devops'a #развлекалово
Please open Telegram to view this post
VIEW IN TELEGRAM
1😢5😁1🤔1
👨‍💻 Нужно ли DevOps-инженеру уметь кодить

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

DevOps – это про автоматизацию, а автоматизировать без кода невозможно. Инфраструктура как код, CI/CD пайплайны, управление кластерными системами – все это требует хотя бы базовых навыков программирования.

На другом конце баррикад мнение, что DevOps – это больше про процессы, культуру и автоматизацию с использованием готовых инструментов.

Достаточно уметь работать с конфигурационными файлами, понимать принципы работы CI/CD и уметь администрировать системы.

💬 А как вы считаете: DevOps должен уметь программировать, или это не обязательно? Делитесь своим мнением в комментариях! 👇

🐸Библиотека devops'a #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
📰 Дайджест новостей за неделю

Собрали для вас подборку из интересных новостей:

Обновление Debian 12 — выпущено обновление Debian 12 с исправлениями уязвимостей и ошибок.

Космические вычисления — Axiom Space отправит на МКС узел AxDCU-1 с Red Hat Device Edge для обработки данных в космосе без наземных серверов.

Shift-left тестирование с Testcontainers — в блоге Docker рассказали, как перенос тестирования на ранние этапы разработки помогает находить ошибки до продакшена.

ИИ в гибридных облаках — в Red Hat рассказали, как искусственный интеллект помогает оптимизировать гибридные облачные среды

🐸Библиотека devops'a #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🚀 MCP: Новый стандарт для интеграции ИИ

Model Context Protocol (MCP) — новый открытый стандарт. Он позволяет моделям ИИ безопасно и структурированно взаимодействовать с базами данных, API и другими сервисами без кастомных интеграций и сложных обходных решений.

🛠 Как это работает

MCP состоит из трёх ключевых компонентов:

🔹 MCP-клиент — ИИ-модель, которая запрашивает данные.

🔹 MCP-сервер — мост между ИИ и внешними системами: базы данных, API, файлы.

🔹 Resources & Tools — сервисы и функции, доступные ИИ через MCP.

MCP = стандартизация, безопасность, удобство. Если используете LLM в DevOps-инфраструктуре — стоит присмотреться.

➡️ Читать в оригинале

Как вам идея? Кто бы уже попробовал MCP в продакшене? 🤔👇

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Какую из следующих команд вы бы использовали, чтобы остановить или отключить службу httpd при загрузке системы?

👾 — # systemctl disable httpd.service
👍 — # system disable httpd.service
🥰 — # system disable httpd
🥱 — # system disable httpd.service

Библиотека задач по DevOps
👾53👍2
🔃 Обновление KDE Plasma

Команда KDE представила свежие улучшения в Plasma 6.4.0. Теперь в уведомлениях о передаче файлов можно увидеть графики скорости передачи, нажав на кнопку «Details».

📎 Полный список изменений читайте в блоге KDE

🐸Библиотека devops'a #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
❗️Вакансии «Библиотеки программиста» — ждем вас в команде!

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

Подробности тут

Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴

Ждем ваших откликов 👾
💾 Сохраняйте себе шпаргалку по типам SQL команд

🐸Библиотека devops'a #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3🥰1
Media is too big
VIEW IN TELEGRAM
🧑‍💻 Какой язык программирования учить в 2025 году

Proglib рассказывает базу в формате рилса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3