DevOps FM
4.8K subscribers
595 photos
12 videos
10 files
713 links
♾️ Канал для тех, кто живёт DevOps и системным администрированием.

Новости, статьи, best practices, инструменты и чилл-аут контент. Cloud Native, Docker, Kubernetes, CI/CD, БД, мониторинг etc.

По вопросам — Анастасии @cryptographyinu
加入频道
💥 Коллеги из KazDevOps разыгрывают бесплатную консультацию по DevOps-вопросам с топами компании Core 24/7.

👉 3 победителя смогут задать вопросы техлиду и узнать, почему то или иное решение не работает, как настроить процесс эффективнее и от чего стоит отказаться.

Условия конкурса:

Быть подписчиком KazDevOps
Рассказать о своей ситуации вкратце под аналогичным постом в канале KazDevOps — 1-2 предложения о проблеме, задаче или амбициях, связанных с DevOps
Дождаться розыгрыша — победителей объявят 10 августа: проверят условия выше и рандомом определят 3 человек, которые представляют свой бизнес или работают в компании

🤝 Делитесь с коллегами и ожидайте звонка

#devops #devsecops #cloud #kubernetes #docker #terraform #giltab

@DevOpsKaz
👍4🔥3
🖖 Всем DevOps! У вас когда-нибудь воскресали зомби?

🧟 Ресурсы-зомби (zombie resources) — это компоненты облачной инфраструктуры, которые существуют и работают бесцельно.

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

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

🗑 Как снизить риски?

1) Сделайте ваши среды максимально наглядными. Визуализация потребления облачных ресурсов будет максимально понятной в виде диаграмм.
2) Присвойте теги ресурсам. Они должны быть ясными и понятными. Будет здорово, если в дополнение вы будете указывать название проекта и дату развёртывания;
3) Обеспечьте безопасность dev-среды. Важно очищать остатки ресурсов после завершения работы;
4) Проводите регулярные аудиты.

👩‍💻 В поисках зомби вам может помочь cAdvisor — инструмент, который анализирует использование контейнерами ресурсов.

#Docker #Ресурсы #Облако
Please open Telegram to view this post
VIEW IN TELEGRAM
👍157🔥2🥱2🤡1
Упс! Мы превратили средовую жабу в подборку релизов и статей за прошедшую неделю.

🟡 Выкатили релиз ядра Linux 6.10. Новая версия включает более 14 тысяч исправлений от 1989 разработчиков.

Что интересного? К примеру, внедрили начальный вариант NTSYNC — драйвера синхронизации Windows NT, прекратили поддержку старых CPU Alpha и добавили системный вызов mseal(), позволяющий процессам выставлять блокировку на изменение определённых частей своего адресного пространства.

Ещё Linux обзавёлся собственным BSoD, который реализовали через компоненты DRM Panic. Вы можете протестировать эту новую опцию с помощью маршрута echo c > /proc/sysrq-trigger. А в комментариях к этому посту мы показали, как выглядит синий экран смерти по-линуксовски.

Посмотреть все обновления вы сможете по этой ссылке. А по этой — скачать новую версию.

⚫️ В блоге Docker Джей Шмидт объяснил, в чём разница между инструкциями RUN, CMD и ENTRYPOINT. В статье вы найдёте наглядные примеры использования этих инструкций в режимах shell и exec. Чтобы начать читать — кликните сюда.

🟡 CIS обновили бенчмарки для Kubernetes, NGINX, OpenShift и многих других. Посмотреть новые показатели можно здесь.

⚫️ Архитектор ПО Саурабх Дашора рассказал и показал, как Reddit обслуживает 100 тыс. запросов метаданных в секунду. Спойлер: помогает им в этом единое хранилище метаданных мультимедиа. Из статьи вы узнаете о нюансах разработки такого хранилища и о том, как команда Reddit решила проблемы при миграции и масштабировании.

#DevOps #Linux #Docker
👍146🔥4
👩‍💻 Это — дерево решений для выбора между инструкциями RUN, CMD и ENTRYPOINT Dockerfile.

Эту и другую полезную информацию вы найдёте в новом переводе статьи от Docker, в которой автор показывает различия этих инструкций в форматах shell и exec.

Читать перевод — на Хабре.

#DevOps #Docker
Please open Telegram to view this post
VIEW IN TELEGRAM
21🥴14🔥4👍2
Далее в эфире DevOps FM — традиционный срединедельный дайджест новостей и статей.

🟡 Вчера состоялся релиз Kubernetes 1.31. Тема этого выпуска — чествование энтузиазма и духа коллективного творчества, благодаря которым k8s живёт и развивается уже более 10 лет. Маскотом этой версии стал жизнерадостный песёль Элли.

Новый релиз включает 45 изменений. Например, реализовали поддержку нового официального бэкенда nftables для kube-proxy. Ещё добавили поддержку селекторов полей для кастомных ресурсов, новое поле unhealthyPodEvictionPolicy для указания действий с нездоровыми подами и два новых флага — --emulation-version и --min-compatibility-version.

Kubernetes v1.31 доступен для скачивания на GitHub и официальном сайте.

⚫️ Джей Шмидт продолжает проводить различия между инструкциями Dockerfile. На этот раз он объяснил разницу между ADD и COPY (к примеру, в их поведении при удаленных контекстах) и на примерах показал, когда и какую инструкцию нужно использовать. Если кратко:

• В большинстве случаев лучше выбирать COPY, так как она проста и довольно безопасна. Она переносит файлы и каталоги из вашего локального контекста в создаваемый вами образ Docker.
ADD же рекомендуется использовать только тогда, когда вам необходим конкретно её функционал (например, возможность обработки URL-адресов).

Если хочется больше деталей, то можете прочитать весь обзор в блоге Docker.

🟡 В своем блоге команда DigitalOcean поделилась опытом переноса продакш-кода в монорепозиторий. Статью можно читать и как интересный кейс, и как полезный гайд.

⚫️ На TheNewStack опубликовали 5 советов по работе с Infrastructure as Code (IaC). Один из них: используйте шаблон The DRY, чтобы изменения в модуле автоматически отражались везде, где используется этот модуль. Остальные 4 совета — здесь.

#devops #kubernetes #docker
🔥12👍42
👩‍💻 Привет! Сегодня — немного best practices по оптимизации производительности Dockerfile.

1. Очищайте промежуточные файлы и удаляйте зависимости сборок после того, как они станут не нужны.
RUN apt-get update && apt-get install -y \
build-essential \
&& apt-get clean && rm -rf /var/lib/apt/lists/*


2. Используйте файл .dockerignore. С его помощью вы сможете уменьшить размер контейнера, ускорить сборку и предотвратить утечку секретов.

3. При выполнении инструкции RUN всегда объединяйте команды apt-get update и apt-get install с помощью &&.

4. Старайтесь избегать ненужных COPY. Они замедляют процесс сборки и увеличивают размер образа. Вы можете скопировать несколько файлов с помощью массивов, например:
COPY [
"config.json",
"index.js",
"package.json"
] /usr/src/app/


#bestpractices #docker
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍124🤣2🤯1
👩‍💻 Начиная с версии 17.5 Docker стал поддерживать multi-stage builds. Этот метод помог разделить сложные технические сборки на несколько этапов, каждый из которых выполняет определённую задачу. Благодаря этому важному обновлению стало легче уменьшать поверхность атаки и размер образов, а также эффективнее использовать кэш Docker.

На Blacksmith вышло понятное руководство по многоэтапным сборкам Docker. В статье вы найдете рекомендации по подбору базового образа для каждого этапа сборки и оптимизации порядка этапов.

#docker #dockerfile #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥53🥴1
Жабы закончились. Остался дайджест интересных новостей за последнюю неделю.

🟡 Вышел релиз OpenSSH 9.9. Из обновлений: теперь во время компиляции ключи DSA отключены по умолчанию, а в ssh, sshd и ssh-agent добавлена защита от оседания закрытых ключей в core-файлах, которая работает в Linux, OpenBSD и FreeBSD. Ещё добавили поддержку нового постквантового стандарта криптографии от NIST (Национального института стандартов и технологий США). Посмотреть все изменения можно по ссылке.

⚫️ У OpenSearch нашли проблему в совместимости с Google Chrome v.129 : при развертывании панели Discover вместо значений отображается красная маска. Будьте аккуратны. Временное решение проблемы – здесь.

🟡 Команда Docker приглашает разработчиков принять участие в уже традиционном опросе Docker State of Application Development, на результаты которого она будет ориентироваться при дальнейшей разработке продуктов. Опрос займет 20-30 минут, дедлайн — 20 ноября. Кстати, среди участников проведут розыгрыш макбука, игровых приставок и не только.

⚫️ Yandex Cloud объявил о запуске нескольких новых сервисов:
- Yandex BareMetal (аренда выделенных физических серверов);
- Security Deck (сервис для комплексного управления безопасностью компаний в облаке);
- Serverless Integrations (сервис для более быстрой разработки продуктов в облаке).

🟡 На Medium рассказали о сложностях и проблемах согласованности данных.

#devops #opensearch #openssh #docker #yandex
🔥11👍41👨‍💻1
👩‍💻 В этот понедельник публикуем несколько лучших практик по работе с сетью в Docker.

1) Сегментируйте сети. Используйте методы сетевой изоляции (настройте iptables правила). Сегментация сети позволит вам изолировать контейнеры, контролировать доступы и защищать конфиденциальные рабочие нагрузки. Даже если контейнер будет скомпрометирован, действия злоумышленника будут ограничены только этим контейнером; вся остальная система будет под защитой.

2) Избегайте перекрытия подсетей в сети Docker, чтобы предотвратить проблемы с подключением. Вы можете проверить текущую конфигурацию сети через команду docker network inspect.

3) Используйте DNS для обнаружения сервисов. Внутренний DNS Docker преобразует имена контейнеров в IP-адреса в одной сети, что значительно упрощает обнаружение сервисов.

4) Обезопасьте связь. Используйте зашифрованные overlay-сети для конфиденциальных приложений, особенно при работе на нескольких докер-хостах.

#devops #docker #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥73
👩‍💻 В каких случаях может понадобиться создать образ Docker без использования Dockerfile? Когда нужно, чтобы слои образа создавались параллельно, вся обработка выполнялась в памяти без обращения к файловой системе, а ещё была возможность использовать собственные правила кэширования данных.

В своем блоге Адольфо поделился опытом работы с dockerfileless-образами контейнеров. Два главных урока, которые вы можете вынести из статьи:

1. It is a true pain to deal with OCI images manually.

2. Рeeking under the hood of container images will not void your warranty, and is a great way to get a better idea of what an OCI image actually is.


#devops #docker #контейнеры
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥54👨‍💻2