DevOps Portal | Linux
13.3K subscribers
888 photos
113 videos
10 files
903 links
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps

Связь: @devmangx

РКН: https://clck.ru/3P8kFH
Download Telegram
Kor — это инструмент для обнаружения неиспользуемых ресурсов в Kubernetes.

На данный момент Kor умеет находить и перечислять неиспользуемые:

🔹ConfigMaps
🔹Secrets
🔹Services
🔹ServiceAccounts
🔹Deployments
🔹Statefulsets
🔹Roles

GitHub: Kor

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍148
Forwarded from Мир Linux
Шпаргалка по команде less

PDF-версия в хорошем качестве — в комментариях

@linuxos_tg
👍129
This media is not supported in your browser
VIEW IN TELEGRAM
Гайд, где собраны короткие советы по работе с VI, включая шорткаты, разделение окон, подсветку синтаксиса и многое другое.

Ссылка здесь

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63
Запуск и управление контейнерами Docker

Изучите, как запускать контейнеры самых разных типов (серверы, базы данных, CLI-инструменты и т.д.), взаимодействовать с ними и сформировать чёткое понимание того, как Docker управляет вашими приложениями «под капотом».

Здесь: Docker 101: Run and Manage Containers

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3🔥1
Быстрый совет по Linux

Команда diff — это полезный инструмент для поиска различий между файлами в терминале Linux. Однако icdiff предлагает более удобное сравнение — построчно, рядом, с цветовой подсветкой различий.

$ icdiff config-dev.ini config-prod.ini


Результат покажет оба файла бок о бок, при этом отличия будут подсвечены красным и зелёным, что значительно упрощает их визуальное сравнение.

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2811🔥8
Linux 101: Bind Mount

Bind-монтирование широко использовалось вместе с chroot, а сегодня активно применяется в Docker и Kubernetes. Например:

🔹Монтирование путей хоста в контейнеры или поды

🔹Обмен данными между контейнерами

🔹Обеспечение быстрого обхода union-файловой системы

Практика: https://labs.iximiuz.com/challenges/storage-bind-mount

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍4
В этой статье объясняется, как Kubernetes интегрирует метаданные о совместимости образов через Node Feature Discovery (NFD), позволяя ворклоадам указывать и валидировать требуемую ОС хоста, модули ядра и аппаратные возможности до планирования

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

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43
This media is not supported in your browser
VIEW IN TELEGRAM
Годная утилита для создания диаграмм для софта. К тому же бесплатная и совместимая с GitHub

Отлично подходит для UML, flowchart’ов и процессов. Экспорт в изображение, PDF, HTML и многое другое.

Забираем тут

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7😁62
This media is not supported in your browser
VIEW IN TELEGRAM
Быстрый совет по Linux

Команда less используется для чтения содержимого файлов, это не секрет.

Но знаешь ли ты, что её можно использовать и для просмотра содержимого директории? По сути, она показывает вывод команды ls

Зачем это нужно?

Ну, как минимум, тебе больше не придётся задумываться о том, что less нельзя применять к директории

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8👍54
Опенсорс платформа, которая может быть использована для управления секретами. Доступна как облачная версия, так локальная (Docker Compose, Kubernetes)

GitHub: infisical

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍96
Изучите топ-10 техник траблшутинга в Kubernetes, которые должен освоить каждый DevOps инженер. Эти советы по отладке K8s основаны на реальных кейсах и показывают, как быстро и надёжно решать типовые и критические проблемы в Kubernetes

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

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍85
Образы контейнеров FROM scratch стоит ли так делать? 🤔

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

- нет rootfs-лейаута

- отсутствуют CA-сертификаты

- нет базы данных часовых поясов

Решение? Использовать distroless-базу вместо этого

Подробнее о проблеме и одном из возможных решений:
🔹Building Container Images FROM Scratch: 6 Pitfalls That Are Often Overlooked
🔹What's Inside Distroless Container Images: Taking a Closer Look

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
Этот репозиторий содержит более 20 инструментов, которые автоматически генерируют диаграммы архитектуры Kubernetes на основе манифестов, Helm-чартов или состояния кластера.

Github: Awesome-Kubernetes-Architecture-Diagrams

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍2
Как удаляется Pod: разбор закулисных процессов

Когда мы выполняем команду:
kubectl delete pod

появляется сообщение подтверждения, что Pod удалён (если всё прошло успешно):
$ kubectl delete pod techops-pod
pod "techops-pod" deleted


Задумывались, что происходит “под капотом”?

Прежде чем разбирать процесс удаления Pod’а, нужно понимать базовые сигналы, которые используются при завершении процессов.
SIGTERM — запрашивает корректное завершение работы. Позволяет приложению завершить активные задачи и выполнить очистку перед остановкой. В Kubernetes при получении SIGTERM Pod получает время, чтобы завершиться “по-человечески”.

SIGKILL — принудительно завершает процесс без какой-либо очистки. Если Pod не завершился в отведённое время после SIGTERM, Kubernetes отправляет SIGKILL, чтобы окончательно его убить.


На картинке показан пошаговый разбор процесса, чтобы было понятнее ✌️

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115
Начиная с Kubernetes 1.34.1, интерфейс контейнерного рантайма (CRI-O) по умолчанию требует указания полностью квалифицированных имён образов.

При указании образов контейнеров в ваших деплойментах используйте полный путь до реестра.
Например: docker.io/nginx вместо просто nginx.

Если вы укажете короткое имя образа, которое совпадает с несколькими реестрами, пулл образа завершится ошибкой со следующим сообщением:
Warning  Failed         57m (x12 over 59m)     kubelet  Error: ImageInspectError
Warning InspectFailed 4m43s (x258 over 59m) kubelet Failed to inspect image "": rpc error: code = Unknown


👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5
Официальным языком DevOps должен быть YAML

- Helm использует YAML
- GitHub использует YAML
- Ansible использует YAML
- Argo CD использует YAML
- Kubernetes использует YAML
- Azure DevOps использует YAML
- Docker Compose использует YAML
и многие другие…

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

Так что сначала разберись с ним, вот тебе шпаргалка

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥317👍5🏆2
10 ошибок Kubernetes, которые нужно знать (и как их исправить)

Ошибки в K8s - одна из самых распространённых проблем, с которыми разработчики сталкиваются при запуске ворклоадов в продакшене, что приводит к неудачным деплоям, даунтайму и пустой трате времени на траблшутинг.

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

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
This media is not supported in your browser
VIEW IN TELEGRAM
Маленькая шпаргалка для начинающих линуксоидов

Сохраняем и пользуемся ✌️

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95