Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Связь: @devmangx № 5581790357
«Штурвал 2.10»: встречайте поддержку Yandex Cloud и настоящую мультитенантность
10 июня в 17:00 мск встречаемся на обзорном вебинаре по релизу Kubernetes-платформы «Штурвал 2.10». Ребята из «Лаборатории Числитель» расскажут про два самых интересных обновления:
▪️Поддержку провайдера Yandex Cloud — как управлять кластерами в этом облаке так же, как у себя в инфраструктуре.
▪️Появление тенантов — как централизованно управлять доступами на понятных для бизнеса абстракциях, например, таких как «департамент», «система» и «окружение».
Вебинар будет интересен DevOps-инженерам, разработчикам, сотрудникам служб эксплуатации, специалистам по информационной безопасности, руководителям и всем, кто заинтересован в контейнеризации.
✔️ Регистрация
Все используют балансировщик нагрузки, но немногие понимают алгоритмы балансировки
Вот несколько популярных:
🔹Round Robin — распределяет входящие запросы по серверам по очереди в фиксированном циклическом порядке.
🔹IP Hash — использует хеш-функцию от IP-адреса клиента, чтобы стабильно направлять его на один и тот же сервер.
🔹Least Connections — перенаправляет новые запросы на сервер с наименьшим количеством активных соединений.
🔹Weighted Round Robin — распределяет запросы с учётом веса (веса или производительности) каждого сервера, передавая больше трафика более мощным узлам.
🔹Least Response Time — направляет запросы на сервер с наименьшей средней задержкой или временем отклика.
🔹Random — выбирает сервер случайным образом для каждого входящего запроса, без определённой логики или последовательности.
👉 DevOps Portal
Запустите собственный ИИ в стиле ChatGPT локально с помощью Docker Compose
Устали от ограничений по количеству запросов? Разверните self-hosted open-source LLM, такой как Ollama с Open WebUI, всего лишь с использованием Docker Compose.
👉 DevOps Portal
Многообещающее начало отпуска
👉 DevOps Portal
👨💻 Эти каналы реально помогают в изучении программирования и IT
Не веришь? Проверь сам:
👩💻 Easy GitHub — лучшие репозитории с гитхаба для практики и освоения IT.
🔠 Easy InfoSec — ИБ, хакинг, OSINT, анонимность, пентест и многое другое.
🖥 Easy Python — лёгкое изучение самого универсального языка в мире.
🌐 Easy WebDev — всё про Frontend, Backend и сопутствующие технологии.
🖥 Easy Coder — а здесь вообще про всё, что нужно знать для работы в IT.
🖱 Просто выбери нужное и получай топовые материалы каждый день!Читать полностью…
Принес годноту – Labex. Более 1000 интерактивных лабораторий и туториалов по DevOps, Linux, инфобезу, Python и многому другому
Всё работает прямо через браузер — никакой установки, просто открыл и погнал
Забираем абсолютно бесплатно здесь
👉 DevOps Portal
Вопросы для собеседования DevOps
Нашёл годный ресурс с вопросами и ответами по ключевым темам:
🔹Core DevOps Concepts
🔹K8s
🔹CI/CD
🔹Мониторинг и логгирование
🔹SRE и куча других
Из минусов — вопросов пока маловато и местами поверхностно. Но как стартовый чеклист или разминка перед интервью — пойдет
https://interview.devopscommunity.in/
👉 DevOps Portal
Изучаете, как вручную размещать Pod'ы в Kubernetes?
На платформе iximiuz Labs доступно задание, которое охватывает node selectors, правила affinity и taints.
Полезно, когда вам нужно контролировать размещение Pod'ов — например, для запуска рабочих нагрузок на узлах с GPU, изоляции сред или распределения трафика.
Если вы хотите освоить эти техники, это задание — отличный способ попрактиковаться.
Попробуйте здесь:
https://labs.iximiuz.com/challenges/kubernetes-pod-advanced-scheduling-3b631fdf
👉 DevOps Portal
🚀 Почему пользователи платят $30 за простой конвертер картинок? Давайте разберемся.
Кирилл из комьюнити создал простой продукт всего за один месяц, внедрив метод, которой уже принес результат.
Как он это сделал:
1️⃣ Анализ спроса: через поисковые запросы он увидел, что много людей ищут конвертацию «HEIC to JPG».
2️⃣ Фокус на главном: удалил всё лишнее, оставив только функцию конвертации в один клик.
3️⃣ Скорость внедрения: за 30 дней сделал запуск без перфекционизма.
Посты про конвертер (ч.1, ч.2)
Что из этого получилось:
— Доход $500 в месяц с тенденцией роста.
— Более $10K заработано на конвертере.
— $0 на рекламу, всего $40 в месяц на сервер.
Выводы:
— Люди платят за удобство, даже если есть бесплатные аналоги.
— Продукт функционирует автоматически с минимальной поддержкой.
— Быстрая и экономичная проверка идеи может быть успешной.
Результаты из комьюнити билдеров:
— Более 400 запусков по этой методике.
— Некоторые продукты уже набрали от 50К до 100К+ пользователей.
Присоединяйтесь к @its_capitan — следите за процессом разработки, продвижения и узнайте, сколько можно заработать на таких микро-продуктах.
Амбициозные проекты, удалёнка и рост в сфере DevOps — звучит как работа мечты! Отправляйте резюме до 8 июня и присоединяйтесь к команде YADRO! 🧑💻
Как получить оффер за 3 дня? Подробности на карточках выше — листайте!
Оставляйте заявку — мы ждём именно вас!
Двухминутная настройка. Повышение производительности Kubernetes.
Добавление параметров externalTrafficPolicy: Local
и sessionAffinity: ClientIP
улучшает производительность за счёт снижения задержек и обеспечения привязки клиентских сессий к одному и тому же pod’у.
Внимание: это может увеличить нагрузку на отдельные узлы, но взамен повышается отклик и сохраняется сессия, что критично для пользовательского опыта в высоконагруженных приложениях.
👉 DevOps Portal
Многие считают, что балансировщики нагрузки нужны лишь для распределения сетевого трафика.
Однако в современных облачных архитектурах существует множество сценариев использования, которые доказывают, что их возможности гораздо шире.
Вот несколько примеров
👉 DevOps Portal
Что такое трансляция сетевых адресов (NAT)?
👉 DevOps Portal
Удалённый доступ к Docker-демону с другой машины
Иногда может потребоваться выполнять команды Docker с отдельной машины, на которой установлен только Docker CLI, но не полный движок Docker. Например, Docker работает на вашем домашнем сервере, а вы хотите управлять им с ноутбука или рабочей машины разработчика.
Чтобы это стало возможным, вы можете открыть Docker-демон по протоколу TCP, обновив файл daemon.json
на сервере
👉 DevOps Portal
Совет дня по Linux
Большинство людей используют echo
для вывода информации
Но в многих случаях его также можно использовать, чтобы избежать ошибок echo
позволяет развернуть подстановочные знаки и понять, что произойдёт, ещё до выполнения команды.
👉 DevOps Portal
Краткий совет по Linux
Вы можете вывести все возможные варианты автодополнения в терминал, нажав ESC + *
после ввода начальных символов
👉 DevOps Portal
SPRINT OFFER для DevOps Engineer по направлениям Infrastructure и CI/CD 😊
Как получить оффер в YADRO за 3 дня 🔥
С какими задачами предстоит работать?
На позиции Infrastructure Engineer:
🚀 Настройка и внедрение систем мониторинга и Observability для продуктов, определение ключевых метрик совместно с командами разработки
🚀 Участие в создании устойчивой инфраструктуры и её дальнейшей поддержке для обеспечения высокого качества сборки продуктов
🚀 Описание инфраструктуры и сервисов как код и автоматизация процессов с использованием Ansible
На позиции: CI/CD
💡 Автоматизация процесса выпуска ПО с использованием Gitlab CI
💡 Внедрение Observability для текущих продуктов, определение ключевых метрик совместно с разработкой
💡 Выстраивание DevSecOps процессов вместе с командами ИБ
Кого мы ждём в команду YADRO?
Разработчиков с опытом работы с основными DevOps-инструментами от 1 года и с желанием развиваться в этом направлении.
💙Отправляйте резюме до 8 июня! Все подробности — по ссылке.
Kubernetes The Hard Way
Автор этого гайда работал над ним около двух лет, осуществил тысячи перезапусков и пересобрал сотни кластеров — всё это вылилось в один боевой гайд. Kubernetes вручную, от и до, без kubeadm
и прочих поблажек.
— полный пошаговый гайд по сборке Kuberentes.
— удобные alias’ы, функции и обёртки
— десятки скриптов, которые реально работают в бою
— важные моменты, о которых молчат в туториалах
Всё это оформлено в удобной документации на MDX структуре, с фокусом на читаемость и практику. Ещё и на русском языке.
Изучаем здесь
👉 DevOps Portal
Совет дня по Linux
Используйте расширение скобок с mkdir -p
, чтобы создать несколько вложенных каталогов за один раз
Эта однострочная команда
$ mkdir -p projects/{frontend,backend}/{src,test,docs}
Конвейеры CI/CD для Kubernetes — 8 лучших практик и инструментов
Узнайте о лучших практиках и методах управления CI/CD-конвейерами с использованием Kubernetes. Эти стратегии помогут вам автоматизировать развёртывания напрямую в ваши продуктивные кластеры.
https://spacelift.io/blog/kubernetes-ci-cd
👉 DevOps Portal
Реверс-инжиниринг Docker-образа
Если вдруг потерялся Dockerfile
от образа, который у тебя в проде, или просто хочется копнуть глубже и разобраться, как собирался образ под капотом — есть пара удобных тулзов, которые помогут вытянуть исходники и заодно прокачать понимание процесса билда.
Неудивительно, что сами эти утилиты — это тоже Docker-образы. Так что без лишних движений — запускай одну из команд ниже, и получишь восстановленную версию Dockerfile
:
sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm dduvnjak/dockerfile-from-image $IMAGE_ID
sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm laniksj/dfimage $IMAGE_ID
sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm mrhavens/dedockify $IMAGE_ID
$IMAGE_ID
— это ID нужного тебе образа, Dockerfile
которого вы хотите восстановитьDockerfile
. Все три утилиты (dockerfile-from-image, dfimage, dedockify) работают схожим образом: они анализируют слои, которые появились во время сборки. Каждая инструкция из Dockerfile потенциально создаёт слой (но не всегда). Единственное отличие в том, что первая написана на Ruby, а вторые две на Python.alias dedockify="sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm mrhavens/dedockify"
dedockify $IMAGE_NAME
alias dive="sudo docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive"
dive nginx:latest
CI=true dive $IMAGE
🧠 Как узнать ВСЁ о железе и системе в Linux за 5 минут
Привет, линукс-мастер! 🐧
Хочешь быстро получить полную информацию о процессоре, памяти, дисках, устройствах USB и прочем железе в системе? Лови топ команд для диагностики без лишних движений:
⚙️ Системная информация
- uname -a
— версия ядра и архитектура системы.
🖥️ Информация о железе
- lspci
— список всех устройств на шинах PCI.
- lsusb
— список USB-контроллеров и устройств.
- lshw
— детальное описание железа.
- hwinfo
— альтернатива lshw с расширенными данными.
- dmidecode
— чтение таблицы DMI/SMBIOS (информация о BIOS, материнке, памяти).
🧠 Процессор и память
- lscpu
— характеристики процессора.
- free -h
— текущая загрузка ОЗУ.
- cat /proc/cpuinfo
— подробности о CPU.
🛠️ Диски и файловые системы
- lsblk
— список всех блочных устройств.
- blkid
— метки разделов и UUID.
- fdisk -l
, gdisk -l
, parted -l
— разметка дисков.
- df -h
— свободное место на дисках.
- mount
— список смонтированных разделов.
🔥 Дополнительно
- dmesg
— лог загрузки ядра и сообщения устройств.
- hdparm -I /dev/sdX
— характеристики жестких дисков.
- inxi -Fxz
— сводный отчёт о системе и железе.
🛡️ Все команды работают в терминале, без GUI. Удобно для серверов, VPS и быстрой диагностики локальных машин.
📩 Завтра: Вопрос №25 из теста Linux Essentials Certification
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Превращаем namei в супер-ls с опцией -l!
🧠 - Prometheus: Все Основы Мониторинга — Почему Это Важно
🧠 - Раскрой тайны своего файрвола: просмотр правил iptables!
#Linux_Mastery @LinuxSkill #Linux #Sysadmin #Hardware #Terminal #Diagnostics
Основные команды kubectl
для отладки в Kuberneteskubectl get events --field-selector type=Warning --all-namespaces
Выводит предупреждения по всему кластеру, например, ошибки при выделении IP-адресов подам.kubectl get nodes -o wide --label-columns http://topology.kubernetes.io/zone
Проверяет статус узлов и проблемы, связанные с конкретными зонами.kubectl blame pod $POD
Отслеживает изменения манифеста пода и их источники.kubectl lineage pod $POD
Показывает зависимости ресурса и его создателей.kubectl get endpointslices -o wide
Сопоставляет сервисы с IP-адресами подов; если список пуст — проверь готовность подов и метки.
👉 DevOps Portal
Шпаргалка по Netcat
Netcat (nc) — это мощный инструмент для работы с TCP/UDP: от диагностики до передачи файлов и обратных шеллов
👉 DevOps Portal
Docker vs Podman – Знай различия
🔹 Docker = требует демон
🔹 Podman = без демона и без root-доступа
Оба запускают контейнеры, но Podman обходится без фонового сервиса и хорошо интегрируется с systemd.
Те же команды, больше безопасности.
Заметка: Docker тоже может запускать контейнеры без root-доступа, но для этого требуется дополнительная настройка и конфигурация.
👉 DevOps Portal
Большинство пользователей Linux знакомы с командой cp
для копирования файлов. Однако немногие знают о её встроенной поддержке версионности.
Эта функция может быть особенно полезна для системных администраторов и разработчиков, которым необходимо поддерживать несколько версий конфигурационных файлов или исходного кода.
Понимание версионности в cp
Команда cp
предлагает два ключевых параметра для поддержки версионности:
1. --backup
: создаёт резервную копию файла назначения перед его перезаписью.
2. --suffix
: задаёт пользовательский суффикс для резервной копии.
Простое резервное копирование
Чтобы создать простую резервную копию:
$ cp --backup=numbered /путь/к/исходному/файлу /путь/к/папке/назначения/
~
) и увеличивающимся номером (например, файл.~1~
, файл.~2~
и т.д.).$ cp --backup=numbered --suffix=.bak /путь/к/исходному/файлу /путь/к/папке/назначения/
.bak
и увеличивающимся номером (например, файл.bak.1
, файл.bak.2
и т.д.)./etc/ssh/sshd_config
) для управления правилами доступа. Вот как можно вести версионированные резервные копии:$ cp --backup=numbered /etc/ssh/sshd_config /data/backup/
sshd_config.~1~
, sshd_config.~2~
и т.д.$ cp --backup=numbered --suffix=.bak /etc/ssh/sshd_config /data/backup/
sshd_config.bak.1
, sshd_config.bak.2
и т.д.Объяснение Сетевого Взаимодействия в Kubernetes (eng)
Узнайте, как работает сетевая модель Kubernetes (K8s) с использованием Pod'ов, CNI-плагинов и Service'ов. Изучите взаимодействие между Pod'ами, IP-адресацию и сетевые политики. А также создайте свой первый Pod с нуля.
Смотреть на YouTube
👉 DevOps Portal
Совет по Linux для DevOps-инженеров
Как получить публичный IP-адрес сервера с помощью команды?
Вы можете использовать curl
и общедоступные сервисы для получения публичного IP-адреса, как показано на изображении.
Для AWS и GCP всегда используйте соответствующий сервис метаданных для получения публичного IP-адреса.
Примечание: пожалуйста, не используйте общедоступные сервисы в реальных проектах или в продуктивной среде. Всегда консультируйтесь с командой по информационной безопасности по поводу возможных вариантов.
👉 DevOps Portal
Почему ["npm", "start"]
— плохой выбор для инструкции CMD в Dockerfile 👇
Несмотря на то, что эта команда используется почти в каждом Dockerfile, включая некоторые «рекомендованные» Dockerfile, сгенерированные такими инструментами, как create-react-app
, использование ["npm", "start"]
в CMD приводит к появлению лишней оболочки в дереве процессов контейнера. Это, в частности, может вызывать проблемы с распространением сигналов (signal propagation), что, в свою очередь, нарушает корректное завершение работы контейнеризированного приложения.
Я нашел практическое задание, иллюстрирующее эту проблему:
https://labs.iximiuz.com/challenges/graceful-termination-for-nodejs-container
Попробуйте его пройти, если хотите быстро научиться распознавать или избегать эту скрытую проблему в продакшене
👉 DevOps Portal
Паттерны проброса портов в Kubernetes
Вы находитесь внутри dev-кластера, доступ к сети ограничен, и только что задеплоенный сервис ведёт себя некорректно.
Нет ни LoadBalancer'а, ни ingress-контроллера, а открыть порт — не вариант, потому что сетевая команда либо медлит, либо отказывает.
В этом случае вас выручает kubectl port-forward
.
Здесь представлена упрощённая схема для наглядного понимания.
👉 DevOps Portal