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

Связь: @devmangx

РКН: https://clck.ru/3P8kFH
Download Telegram
Кладезь практических материалов по изучению eBPF 🐝

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

От нуля до первого eBPF-приложения
https://labs.iximiuz.com/tutorials/my-first-ebpf-program-5120140e

Хранение данных в eBPF: создаём первую eBPF map
https://labs.iximiuz.com/tutorials/ebpf-maps-tutorial-3efd4617

Инспекция и мониторинг eBPF-приложений
https://labs.iximiuz.com/tutorials/inspecting-ebpf-using-bpftool-43dfa319

eBPF Verifier: почему ядро может безопасно выполнять eBPF-программы
https://labs.iximiuz.com/tutorials/ebpf-verifier-3bd2e199

eBPF-челлендж для начинающих
https://labs.iximiuz.com/challenges/ebpf-beginner-challenge-89ffd924

eBPF Tracepoints, Kprobes или Fprobes: что выбрать?
https://labs.iximiuz.com/tutorials/ebpf-tracing-46a570d1

Почему eBPF-программа работает на одном ядре и падает на другом?
https://labs.iximiuz.com/tutorials/portable-ebpf-programs-46216e54

Разработка по-настоящему переносимых eBPF-программ и BTFHub
https://labs.iximiuz.com/tutorials/truly-portable-ebpf-a7554c66

Разные способы доставки событий ядра из eBPF в user space
https://labs.iximiuz.com/tutorials/user-space-event-delivery-2197d020

Rate limiting сетевого трафика с помощью eBPF/XDP
https://labs.iximiuz.com/tutorials/ebpf-ratelimiting-dbc12915

Практика с XDP: eBPF для высокопроизводительного сетевого стека
https://labs.iximiuz.com/tutorials/ebpf-xdp-fundamentals-6342d24e

Разработка firewall на базе eBPF с матчингом диапазонов IP через LPM trie
https://labs.iximiuz.com/tutorials/ebpf-firewall-ed03d648

С нуля: L4 load balancer на базе eBPF/XDP с использованием NAT
https://labs.iximiuz.com/tutorials/xdp-load-balancer-700a1d74

С нуля: L2 Direct Server Return load balancer на eBPF/XDP
https://labs.iximiuz.com/tutorials/xdp-dsr-layer2-lb-92b02f3e

С нуля: IP-in-IP Direct Server Return load balancer на eBPF/XDP
https://labs.iximiuz.com/tutorials/xdp-dsr-load-balancer-b701a95a


Серия построена на реальных production-кейcах, а примеры из статей гарантированно компилируются и запускаются вне зависимости от вашего Linux-дистрибутива и версии ядра.

Happy hacking! 🚀

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
Прочитай это – и ты больше никогда не забудешь разницу между CMD и ENTRYPOINT в Docker.

Ответ:

🔹 ENTRYPOINT → Думай об этом как об основной команде, которая всегда выполняется при старте контейнера.
🔹 CMD → Это аргументы по умолчанию для этой команды (их можно переопределить при запуске контейнера).

Пример на картинке

➡️ Когда контейнер запускается → он выполняет ping http://google.com
➡️ Если переопределить CMD → docker run myimage http://yahoo.com
тогда выполнится ping http://yahoo.com

Запомни:

- ENTRYPOINT = что запускать
- CMD = с какими аргументами

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍265😁2
Как работает контейнерный нетворкинг 🧐

Docker, Podman и Kubernetes (через CRI) под капотом используют очень похожую схему – виртуальную bridge-сеть.

Собрать bridge-сеть с нуля, используя только базовые Linux-утилиты (ip, nsenter, iptables) – отличный способ разобраться в теме на практике:
https://labs.iximiuz.com/tutorials/container-networking-from-scratch

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54
SBOM становится критически важным для DevOps-команд, управляющих современными CI/CD пайплайнами

Вот почему его стоит внедрить каждой команде

Помните уязвимость Log4j? Тогда компании в спешке пытались определить, какие приложения оказались затронуты.

При наличии SBOM (Software Bill of Materials) этот процесс проходит значительно быстрее.

SBOM предоставляет полный инвентарь всех программных компонентов, входящих в состав приложения.

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

Традиционные файлы зависимостей, такие как pom.xml или package.json, дают лишь поверхностное представление о составе проекта.

SBOM обеспечивает более глубокую прозрачность, трекинг безопасности и возможности комплаенса, которые стандартные manifest-файлы обеспечить не могут.

Вот подробный гайд по SBOM:
https://newsletter.devopscube.com/p/sbom-what-why

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍6
Поды не "падают" на ноды случайным образом. kube-scheduler оценивает каждое размещение с учётом доступных ресурсов, ограничений и политик.

В следующем уроке курса "Kubernetes the Very Hard Way" подробно разбирается, как kube-scheduler работает изнутри

https://labs.iximiuz.com/courses/kubernetes-the-very-hard-way-0cbfd997/control-plane/kube-scheduler

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2
В этой статье объясняется, как предотвратить сбои системы, вызванные несбалансированным масштабированием в Kubernetes, используя KEDA с корректной настройкой триггеров и стратегий автоскейлинга

Читайте тут

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3
Изучите Kubernetes и подготовьтесь к сдаче экзамена Certified Kubernetes Administrator (CKA)

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

https://youtu.be/l57xKN6OBhY?si=ye6hGpF2lezRyvgB

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4🤔1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁348🏆4🌭2🥱1
Вы когда-нибудь использовали curl для работы с Kubernetes API или смотрели, что именно сохраняется в etcd после выполнения kubectl apply?

Следующий урок в курсе «Kubernetes the Very Hard Way» разбирает, как kube-apiserver интегрируется в Kubernetes и как он работает под капотом:
https://labs.iximiuz.com/courses/kubernetes-the-very-hard-way-0cbfd997/control-plane/kube-apiserver#overview

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

Во время редактирования файла в nano нажмите Ctrl + T, чтобы выполнить shell-команду, не выходя из редактора.

Nano выполнит команду и вставит её вывод в текущий файл – это удобно, когда нужно быстро добавить результат команды или сгенерированный текст прямо в процессе редактирования

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22👀73🤔1
Одна из концепций Istio, которую стоит понимать: HBONE

HBONE расшифровывается как HTTP-Based Overlay Network Environment.

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

Вот что он делает:

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

До появления HBONE каждое соединение между workload’ами приводило к созданию отдельных соединений между их sidecar-прокси.

С HBONE множество соединений мультиплексируются через один общий защищённый туннель.

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

HBONE объединяет три веб-стандарта:
• HTTP/2 — позволяет передавать несколько потоков в рамках одного TCP-соединения

• HTTP CONNECT — используется для построения туннеля поверх существующего соединения

• mTLS (mutual TLS) — шифрует туннель и обеспечивает взаимную аутентификацию сторон


Даже если вы напрямую не администрируете service mesh, как DevOps-инженеру вам важно понимать, как все эти компоненты состыкуются между собой.

Если вы работаете с service mesh, разберитесь в базовых принципах и понимайте, что именно происходит под капотом

Примечание: HBONE существует только внутри экосистемы Istio. Это не стандартный сетевой протокол, который можно встретить в спецификациях TCP/IP или HTTP

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74
This media is not supported in your browser
VIEW IN TELEGRAM
Когда понимаешь, что DevOps/SRE – одна из немногих ролей, куда ИИ не сможет полностью проникнуть

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1715🌚3💊3
This media is not supported in your browser
VIEW IN TELEGRAM
Это всегда DNS!

Независимо от того, дебажишь ли ты проблемы с DNS или просто хочешь узнать, где хостится твой любимый сайт, nslookup тебя выручит!

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73
Как использовать playground’ы iximiuz Labs в качестве удалённого Docker-контекста.

Пара команд – и ты можешь запускать контейнеры на удалённых VM через локальный docker CLI. Удобно, безопаснее и подходит даже для удалённой сборки образов.

https://labs.iximiuz.com/docs/playground-recipes/remote-docker-host#remote-docker-context

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
Как приручить сетевую инфраструктуру? 🤯
Пройти бесплатный мини-курс по компьютерным сетям от Академии Selectel.

Программа курса нацелена на практические навыки. За 4 урока вы научитесь выстраивать базовые сетевые схемы, поднимать выделенные и облачные серверы.

И сразу отработаете навыки — получите промокод на 500 бонусных рублей, чтобы практиковаться в панели управления Selectel бесплатно.

Курс будет интересен как начинающим, так и более опытным сисадминам. Начните обучение сейчас ➡️ https://slc.tl/wfoft?2W5zFGhwrND

Больше инструкций и курсов по сетевому администрированию — в Telegram-канале @selectel_academy. Подписывайтесь!
Развертывание Rancher в кластере Kubernetes

- Начните с базового кластера Kubernetes.

- Установите cert-manager для управления SSL-сертификатами.

- Разверните Rancher с помощью Helm-чартов.

- Получите доступ к веб-интерфейсу и импортируйте дополнительные кластеры.

- Управляйте ворклоадами, RBAC и мониторингом во всех кластерах из единой консоли.

Подробное руководство: https://devopscube.com/setup-rancher-on-kubernetes-cluster/

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
Супер простой Docker-челлендж: напишите Dockerfile и соберите образ для веб-сервиса на Node.js (Express).

Хороший способ начать контейнеризировать свои проекты:
https://labs.iximiuz.com/challenges/docker-write-simple-dockerfile

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3
😐 Устали деплоить в Kubernetes через kubectl и бесконечные CI-скрипты? Хотите, чтобы деплой был воспроизводимым, контролируемым и прозрачным?

ArgoCD — де-факто стандарт GitOps для Kubernetes, который используют в крупных компаниях.

🥹 Новый курс «ArgoCD: GitOps-деплой и автоматизация в Kubernetes» на Stepik!

В курсе:
- GitOps — что это и зачем он нужен.
- Установка и настройка ArgoCD.
- Application и App of Apps.
- GitOps-деплой приложений.
- ArgoCD Image Updater (автокоммиты новых образов).
- Notifications (Telegram).
- SOPS и шифрование секретов в Git.


Курс подойдёт, если у вас есть базовые знания Docker и Kubernetes, вы DevOps или просто хотите прокачать практический GitOps-навык, который точно встретится в работе!

👉 Открыть курс на Stepik
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍1
Глубокое погружение в Kubelet: разбираемся с причинами сбоев при старте Pod’ов

Подробный гайд по архитектуре kubelet, управлению жизненным циклом Pod’ов и системному траблшутингу проблем запуска контейнеров

https://issaouiadam.medium.com/the-kubelet-deep-dive-understanding-pod-startup-failures-155f94ba7433

👉 DevOps Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
4
Финальный урок по control plane в Kubernetes the Very Hard Way, посвящённый kube-controller-manager, уже опубликован:

https://labs.iximiuz.com/courses/kubernetes-the-very-hard-way-0cbfd997/control-plane/kube-controller-manager

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