TGViewer
Channel Public Channel
DevOps Portal | Linux

DevOps Portal | Linux

@loose_code

Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps

Сотрудничество, реклама: @devmangx

Работаем с @Spiral_Yuri

РКН: https://clck.ru/3P8kFH
Subscribers
13.1K
Photos
1K
Videos
134
Links
1.1K

Showing posts older than #1591 · Back to latest

Older Posts 20 shown
Post #1589 4.42K
Устали продираться через тысячи пакетов?

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

👉 DevOps Portal
  • ❤ 11
  • 👍 5
  • 🔥 2
  • 😁 2
Post #1588 4.9K
Релиз Kubernetes v1.35 приближается (ожидается 17 декабря 2025 года): в следующей мажорной версии запланировано 17 изменений в области безопасности, включая новые проверки, вывод из эксплуатации устаревших возможностей, таких как cgroup v1 и режим IPVS, in-place-ресайзинг подов и улучшенную стабильность. Предварительный обзор подчёркивает сокращение legacy-компонентов, например переход от Ingress NGINX к HAProxy.

Подробнее тут

👉 DevOps Portal
  • 👍 6
  • ❤ 4
Post #1583 4.79K
Практический Docker Roadmap

Она включает более 50 практических заданий, дополненных десятками визуальных разборов и несколькими теоретическими глубокими погружениями. На данный момент вы можете изучить:

- Как запускать разные типы контейнеров (веб-приложения, CLI-утилиты, базы данных и т.д.)
- Как перечислять, инспектировать и управлять локальными контейнерами
- Как выполнять команды внутри контейнеров и отлаживать простые проблемы
- Как обновлять контейнерные образы для stateless и stateful приложений
- Как собирать контейнерные образы как профи
...и несколько других тем

https://labs.iximiuz.com/roadmaps/docker

👉 DevOps Portal
  • ❤ 13
  • 👍 5
  • 🔥 2
  • 🤝 2
Post #1582 4.3K
Быстрый совет по Linux

Чтобы получить список файлов, которые содержат заданную строку, используйте:

grep -rl string .


-r — рекурсивный обход

-l — вывести имена файлов с совпадениями

👉 DevOps Portal
  • 👍 13
  • ❤ 5
  • 🔥 3
Post #1580 4.47K
Kubetools – репозиторий с самой большой подборкой Open Source инструментов для Kubernetes на любые случаи жизни.

Все инструменты поделены на категории

👉 DevOps Portal
  • 👍 8
  • ❤ 5
Post #1579 4.46K
Этот инструмент предоставляет десктопный и мобильный GUI для управления кластерами Kubernetes.

Он позволяет:

- импортировать kubeconfig'и,
- просматривать ресурсы и метрики,
- выполнять exec в поды,
- пробрасывать порты,
- управлять релизами Helm.

GitHub: kubeterm

👉 DevOps Portal
  • ❤ 11
  • 👍 5
  • 🤔 1
Post #1578 4.23K
Управление микросервисами с Managed Service for Kubernetes®

На Kuber Conf by AOT участники обсудили возможности Managed Service for Kubernetes® — инструмента для оркестрации микросервисов внутри корпоративных сред.

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

На стенде участники проверяли свои знания в Kubernetes®, сражались с Chaos Monster и восстанавливали систему в игре «Спасение Контейнерленда».

👉 DevOps Portal
  • ❤ 6
  • 👍 1
  • 🔥 1
Post #1577 3.81K

Forwarded from Мир Linux

Let’s Encrypt сократит срок действия сертификатов до 45 дней

Let’s Encrypt официально объявил о планах уменьшить максимальный срок действия своих SSL/TLS-сертификатов с 90 дней до 45 дней.

10 февраля 2027 года срок действия сертификатов будет сокращён до 64 дней, а 16 февраля 2028 года - до 45 дней. Опциональная возможность получения сертификатов, действующих 45 дней, появится 13 мая 2026 года

В качестве причины сокращения срока действия сертификатов называются новые требования ассоциации CA/Browser Forum, выработанные в ходе совместной работы производителей браузеров и удостоверяющих центров

@linuxos_tg
  • 🤯 11
  • ❤ 4
  • 💊 2
Post #1574 4.06K
От 300 МБ до 6 МБ в контейнерном образе

Вот как

Когда вы собираете контейнерные образы, чаще всего начинаете с базового образа вроде Ubuntu, Alpine или Debian.

Но что, если можно стартовать с пустоты?

❌ Без ОС
❌ Без shell
❌ Без лишних файлов
✅ Только ваше приложение и конфиги

Именно это и позволяет сделать базовый образ Docker scratch.

Вот простой гайд, который охватывает следующее:

- Как работают scratch-образы
- Добавление SSL-сертификатов
- Управление данными таймзоны
- Настройка пользователя и многое другое

Читайте здесь

👉 DevOps Portal
  • ❤ 6
  • 👍 5
  • 🔥 4
Post #1573 3.58K
Kubectl плагин для Kubernetes OpenID Connect аутентификации. Также известен как kubectl oidc-login.

Принцип его работы довольно простой: при запуске kubectl, kubelogin открывает страницу, где можно залогиниться через провайдера. Получив токен от провайдера, он передается в kubectl и используется для доступа в Kubernetes API.

GitHub: kubelogin

👉 DevOps Portal
  • ❤ 8
  • 👍 2
Post #1571 3.84K
Годная серия статей - "Hands-on lab: Full Kubernetes compromise, what will your SOC do about it?". Она включает четыре части:

1) Введение - легенда про вымышленную компанию Kuby, в которой случился инцидент и были слиты их данные. Дается описание инфраструктуры компании.
2) Построение уязвимой инфраструктуры Kuby - стек Terraform, Amazon EKS, GitHub Actions CI/CD pipeline.
3) Атака инфраструктуры Kuby - supply-chain attack приводящий к backdoor.
4) Расследование инцидента - анализ событий в GuardDuty и сбор релевантных артефактов и что можно еще улучшить.

Полезно 👍

👉 DevOps Portal
  • 👍 9
  • ❤ 3
Post #1570 4.16K
Как превратить свой старый телефон в веб-сервер

Эта статья хостится на лежащем в ящике Fairphone 2 2015 года, работающем на postmarketOS

В этом туториале тебя проведут по шагам, которые привели к такому результату

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

Читайте здесь

👉 DevOps Portal
  • 👍 11
  • ❤ 5
  • 😁 2
  • 🤯 1
Post #1568 4.12K
Лёгкий GUI для управления несколькими Kubernetes-кластерами из одного места, с отображением в реальном времени, порт-форвардингом, агрегированными логами и опциональной AI-поддержкой для Troubleshooting через OpenAI/Claude/Gemini/Ollama

GitHub: kubewall

👉 DevOps Portal
  • ❤ 11
  • 👍 3
Post #1567 3.85K
Откопал годный инструмент – Pinniped

По сути, Pinniped выступает в роли authentication service для Kubernetes кластера. Он поддерживает различные authenticator types и OIDC identity providers, а также имплементирует различные стратегии интеграции с различными дистрибутивами Kubernetes для облегчения аутентификации

👉 DevOps Portal
  • 👍 7
  • ❤ 3
  • 🔥 1
Post #1565 3.64K
Традиционно наибольшему глубинному пониманию и максимально переносимым знаниям способствует такой порядок обучения:

Linux → Networking → Containers → {Kubernetes, Cloud}

Переходить сразу к изучению более высокоуровневых сетевых компонентов, таких как AWS VPC, Security Groups, Internet Gateways и т.п., вполне распространённая практика, но, по моему опыту, это часто приводит к тому, что на освоение уходит больше времени, а при переходе с AWS на Azure или при отказе от удобств облака в пользу более дешёвой, но и более суровой реальности on-prem-развёртываний приходится буквально переучиваться с нуля.

В противоположность этому, когда вы сначала разбираетесь с LAN’ами (L2-широковещательные домены, типовые топологии коммутаторов и т. п.), затем с L3-маршрутизацией, iptables и NAT, понимание того, что такое VPC и Security Group на самом деле, становится гораздо проще.

И самое приятное в том, что у фокуса на фундаментальных вещах есть ещё одно важное преимущество: знания становятся переносимыми и в сторону тоже

Например, контейнерная сеть (типичная bridge-сеть Docker) и Node/Pod-сети в Kubernetes опираются на те же концепции, даже если отдельные примитивы виртуализированы (Linux bridge выступает виртуальным коммутатором, а network namespace — аналогом изолированного сетевого узла).

Поэтому в iximiuz Labs делается акцент на фундаментальных аспектах серверных технологий:

- [course] Computer Networking Fundamentals For Developers, DevOps, and Platform Engineers — https://labs.iximiuz.com/courses/computer-networking-fundamentals

- [hands-on] Practical Networking 101 problems — https://labs.iximiuz.com/challenges?category=networking

👉 DevOps Portal
  • ❤ 6
  • 👍 5
Post #1563 3.52K
Случалось ли вам по ошибке обновить Kubernetes Secret?

Такое происходит чаще, чем кажется. Например:

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

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

Чтобы предотвратить такие ситуации, Kubernetes позволяет сделать Secrets immutable.

Достаточно добавить одну строку immutable: true в манифест, вы можете залочить этот Secret.

Если кто-то попробует его изменить, Kubernetes заблокирует обновление.

Если всё же нужно обновить immutable Secret, его придётся удалить и создать заново.

Есть и другой способ избежать случайных изменений – использовать Secrets Store CSI Driver.

Он монтирует внешние секреты из провайдеров вроде AWS Secrets Manager напрямую как read-only тома в поды, так что их нельзя модифицировать из кластера.

Чтобы узнать больше о Secrets Store CSI Drive, прочитайте эту статью:
https://devopscube.com/secrets-store-csi-dirver-eks/

👉 DevOps Portal
  • 👍 9
  • ❤ 3
Post #1562 3.42K
Сегодня разбирается классическая задача распределённых систем: как надёжно стримить логи с нескольких реплик в хронологическом порядке?

Удивительно, но ни один из популярных контейнерных тулов этого не делает.

docker service logs, kubectl logs, stern, kubetail, k9s — все они просто перемешивают потоки по мере поступления. Стандартный костыль – прогонять вывод через | sort 🙃

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

Для новой команды uc logs используется следующий подход:

1. Low watermark

Трекать минимальный timestamp среди всех лог-стримов и безопасно печатать буферизированные логи с таймстампами ниже этой метки.

watermark = min(latest_timestamp for each stream)
sort and print all buffered logs where timestamp < watermark


2. Heartbeat-таймстампы

Что если контейнер замолчит? Весь поток залипнет, потому что watermark больше не будет сдвигаться.

Решение: периодически отправлять пустые heartbeat-записи с текущим timestamp от серверов. Это своего рода обещание: «У меня нет логов старше этого».

Это позволяет клиенту продвигать watermark сразу, не блокируя вывод. Интервал в 500 мс – 1 с работает хорошо на практике.

Что насчёт несинхронизированных часов?

Много тут не сделать, если не плодить лишнюю сложность. Просто детектируйте ситуацию, предупредите пользователя, и на этом всё.

👉 DevOps Portal
  • ❤ 5
  • 👍 5
  • 🔥 1
Post #1560 3.75K
Не забудьте создать и использовать непривилегированного (non-root) пользователя в вашем Dockerfile.

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

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

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

👉 DevOps Portal
  • 👍 18
  • ❤ 6
Post #1559 3.9K
В статье A Practical Approach to Keycloak Token Exchange: Converting External Tokens for Internal Use with Kubernetes and Istio рассматривается подход к настройке обмена токенами Keycloak в Kubernetes с помощью Istio.

Автор показывает как сконфигурировать CRD ресурс EnvoyFilter, в котором будет заложена Token Exchange Logic:

- Extract Authorization Header
- Make HTTP Call to Keycloak
- Inject Internal Token

👉 DevOps Portal
  • ❤ 6
  • 👍 4
  • 🔥 2
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →