loose_code | Unsorted

Telegram-канал loose_code - DevOps Portal | Linux

11687

Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Связь: @devmangx № 5581790357

Subscribe to a channel

DevOps Portal | Linux

«Штурвал 2.10»: встречайте поддержку Yandex Cloud и настоящую мультитенантность

10 июня в 17:00 мск встречаемся на обзорном вебинаре по релизу Kubernetes-платформы «Штурвал 2.10». Ребята из «Лаборатории Числитель» расскажут про два самых интересных обновления:

▪️Поддержку провайдера Yandex Cloud — как управлять кластерами в этом облаке так же, как у себя в инфраструктуре.

▪️Появление тенантов — как централизованно управлять доступами на понятных для бизнеса абстракциях, например, таких как «департамент», «система» и «окружение».

Вебинар будет интересен DevOps-инженерам, разработчикам, сотрудникам служб эксплуатации, специалистам по информационной безопасности, руководителям и всем, кто заинтересован в контейнеризации.

✔️ Регистрация

Читать полностью…

DevOps Portal | Linux

Все используют балансировщик нагрузки, но немногие понимают алгоритмы балансировки

Вот несколько популярных:

🔹Round Robin — распределяет входящие запросы по серверам по очереди в фиксированном циклическом порядке.

🔹IP Hash — использует хеш-функцию от IP-адреса клиента, чтобы стабильно направлять его на один и тот же сервер.

🔹Least Connections — перенаправляет новые запросы на сервер с наименьшим количеством активных соединений.

🔹Weighted Round Robin — распределяет запросы с учётом веса (веса или производительности) каждого сервера, передавая больше трафика более мощным узлам.

🔹Least Response Time — направляет запросы на сервер с наименьшей средней задержкой или временем отклика.

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

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Запустите собственный ИИ в стиле ChatGPT локально с помощью Docker Compose

Устали от ограничений по количеству запросов? Разверните self-hosted open-source LLM, такой как Ollama с Open WebUI, всего лишь с использованием Docker Compose.

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Многообещающее начало отпуска

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

👨‍💻 Эти каналы реально помогают в изучении программирования и IT

Не веришь? Проверь сам:

👩‍💻 Easy GitHub — лучшие репозитории с гитхаба для практики и освоения IT.

🔠 Easy InfoSec — ИБ, хакинг, OSINT, анонимность, пентест и многое другое.

🖥 Easy Python — лёгкое изучение самого универсального языка в мире.

🌐 Easy WebDev — всё про Frontend, Backend и сопутствующие технологии.

🖥 Easy Coder — а здесь вообще про всё, что нужно знать для работы в IT.

🖱 Просто выбери нужное и получай топовые материалы каждый день!

Читать полностью…

DevOps Portal | Linux

Принес годноту – Labex. Более 1000 интерактивных лабораторий и туториалов по DevOps, Linux, инфобезу, Python и многому другому

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

Забираем абсолютно бесплатно здесь

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Вопросы для собеседования DevOps

Нашёл годный ресурс с вопросами и ответами по ключевым темам:

🔹Core DevOps Concepts
🔹K8s
🔹CI/CD
🔹Мониторинг и логгирование
🔹SRE и куча других

Из минусов — вопросов пока маловато и местами поверхностно. Но как стартовый чеклист или разминка перед интервью — пойдет

https://interview.devopscommunity.in/

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Изучаете, как вручную размещать Pod'ы в Kubernetes?

На платформе iximiuz Labs доступно задание, которое охватывает node selectors, правила affinity и taints.

Полезно, когда вам нужно контролировать размещение Pod'ов — например, для запуска рабочих нагрузок на узлах с GPU, изоляции сред или распределения трафика.

Если вы хотите освоить эти техники, это задание — отличный способ попрактиковаться.

Попробуйте здесь:
https://labs.iximiuz.com/challenges/kubernetes-pod-advanced-scheduling-3b631fdf

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

🚀 Почему пользователи платят $30 за простой конвертер картинок? Давайте разберемся.

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

Как он это сделал:
1️⃣ Анализ спроса: через поисковые запросы он увидел, что много людей ищут конвертацию «HEIC to JPG».
2️⃣ Фокус на главном: удалил всё лишнее, оставив только функцию конвертации в один клик.
3️⃣ Скорость внедрения: за 30 дней сделал запуск без перфекционизма.

Посты про конвертер (ч.1, ч.2)

Что из этого получилось:
— Доход $500 в месяц с тенденцией роста.
— Более $10K заработано на конвертере.
— $0 на рекламу, всего $40 в месяц на сервер.

Выводы:
— Люди платят за удобство, даже если есть бесплатные аналоги.
— Продукт функционирует автоматически с минимальной поддержкой.
— Быстрая и экономичная проверка идеи может быть успешной.

Результаты из комьюнити билдеров:
— Более 400 запусков по этой методике.
— Некоторые продукты уже набрали от 50К до 100К+ пользователей.

Присоединяйтесь к @its_capitan — следите за процессом разработки, продвижения и узнайте, сколько можно заработать на таких микро-продуктах.

Читать полностью…

DevOps Portal | Linux

Амбициозные проекты, удалёнка и рост в сфере DevOps — звучит как работа мечты! Отправляйте резюме до 8 июня и присоединяйтесь к команде YADRO! 🧑‍💻

Как получить оффер за 3 дня? Подробности на карточках выше — листайте!

Оставляйте заявку — мы ждём именно вас!

Читать полностью…

DevOps Portal | Linux

Двухминутная настройка. Повышение производительности Kubernetes.

Добавление параметров externalTrafficPolicy: Local и sessionAffinity: ClientIP улучшает производительность за счёт снижения задержек и обеспечения привязки клиентских сессий к одному и тому же pod’у.

Внимание: это может увеличить нагрузку на отдельные узлы, но взамен повышается отклик и сохраняется сессия, что критично для пользовательского опыта в высоконагруженных приложениях.

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Многие считают, что балансировщики нагрузки нужны лишь для распределения сетевого трафика.

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

Вот несколько примеров

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Что такое трансляция сетевых адресов (NAT)?

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Удалённый доступ к Docker-демону с другой машины

Иногда может потребоваться выполнять команды Docker с отдельной машины, на которой установлен только Docker CLI, но не полный движок Docker. Например, Docker работает на вашем домашнем сервере, а вы хотите управлять им с ноутбука или рабочей машины разработчика.

Чтобы это стало возможным, вы можете открыть Docker-демон по протоколу TCP, обновив файл daemon.json на сервере

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Совет дня по Linux

Большинство людей используют echo для вывода информации

Но в многих случаях его также можно использовать, чтобы избежать ошибок

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

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Краткий совет по Linux

Вы можете вывести все возможные варианты автодополнения в терминал, нажав ESC + * после ввода начальных символов

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

SPRINT OFFER для DevOps Engineer по направлениям Infrastructure и CI/CD 😊
Как получить оффер в YADRO за 3 дня 🔥

С какими задачами предстоит работать?

На позиции Infrastructure Engineer:

🚀 Настройка и внедрение систем мониторинга и Observability для продуктов, определение ключевых метрик совместно с командами разработки
🚀 Участие в создании устойчивой инфраструктуры и её дальнейшей поддержке для обеспечения высокого качества сборки продуктов
🚀 Описание инфраструктуры и сервисов как код и автоматизация процессов с использованием Ansible

На позиции: CI/CD
💡 Автоматизация процесса выпуска ПО с использованием Gitlab CI
💡 Внедрение Observability для текущих продуктов, определение ключевых метрик совместно с разработкой
💡 Выстраивание DevSecOps процессов вместе с командами ИБ

Кого мы ждём в команду YADRO?

Разработчиков с опытом работы с основными DevOps-инструментами от 1 года и с желанием развиваться в этом направлении.

💙Отправляйте резюме до 8 июня! Все подробности — по ссылке.

Читать полностью…

DevOps Portal | Linux

Kubernetes The Hard Way

Автор этого гайда работал над ним около двух лет, осуществил тысячи перезапусков и пересобрал сотни кластеров — всё это вылилось в один боевой гайд. Kubernetes вручную, от и до, без kubeadm и прочих поблажек.

— полный пошаговый гайд по сборке Kuberentes.
— удобные alias’ы, функции и обёртки
— десятки скриптов, которые реально работают в бою
— важные моменты, о которых молчат в туториалах

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

Изучаем здесь

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Совет дня по Linux

Используйте расширение скобок с mkdir -p, чтобы создать несколько вложенных каталогов за один раз

Эта однострочная команда

$ mkdir -p projects/{frontend,backend}/{src,test,docs}


мгновенно создаст 6 каталогов

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Конвейеры CI/CD для Kubernetes — 8 лучших практик и инструментов

Узнайте о лучших практиках и методах управления CI/CD-конвейерами с использованием Kubernetes. Эти стратегии помогут вам автоматизировать развёртывания напрямую в ваши продуктивные кластеры.

https://spacelift.io/blog/kubernetes-ci-cd

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Реверс-инжиниринг 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


Ещё есть полезный инструмент — dive. Он позволяет посмотреть, что именно лежит в слоях Docker-образа. Можно запускать как через контейнер, так и через бинарь. Удобно, если нужно отладить, что именно пошло не так в сборке.

alias dive="sudo docker run -ti --rm  -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive"


Пример:
dive nginx:latest


Если хочешь прикрутить его в CI/CD пайплайн — просто добавь:
CI=true dive $IMAGE


👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

🧠 Как узнать ВСЁ о железе и системе в 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

Читать полностью…

DevOps Portal | Linux

Основные команды kubectl для отладки в Kubernetes

kubectl 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

Читать полностью…

DevOps Portal | Linux

Шпаргалка по Netcat

Netcat (nc) — это мощный инструмент для работы с TCP/UDP: от диагностики до передачи файлов и обратных шеллов

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Docker vs Podman – Знай различия

🔹 Docker = требует демон

🔹 Podman = без демона и без root-доступа

Оба запускают контейнеры, но Podman обходится без фонового сервиса и хорошо интегрируется с systemd.

Те же команды, больше безопасности.

Заметка: Docker тоже может запускать контейнеры без root-доступа, но для этого требуется дополнительная настройка и конфигурация.

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Большинство пользователей Linux знакомы с командой cp для копирования файлов. Однако немногие знают о её встроенной поддержке версионности.

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

Понимание версионности в
cp

Команда cp предлагает два ключевых параметра для поддержки версионности:

1. --backup: создаёт резервную копию файла назначения перед его перезаписью.

2. --suffix: задаёт пользовательский суффикс для резервной копии.

Простое резервное копирование

Чтобы создать простую резервную копию:

$ cp --backup=numbered /путь/к/исходному/файлу /путь/к/папке/назначения/


Эта команда создаёт резервную копию с суффиксом по умолчанию (~) и увеличивающимся номером (например, файл.~1~, файл.~2~ и т.д.).

Резервная копия с пользовательским суффиксом

Для более наглядных резервных копий:

$ cp --backup=numbered --suffix=.bak /путь/к/исходному/файлу /путь/к/папке/назначения/

Это создаёт резервные копии с суффиксом .bak и увеличивающимся номером (например, файл.bak.1, файл.bak.2 и т.д.).

Практический пример: резервное копирование конфигурации SSH

Предположим, вы часто обновляете файл конфигурации SSH (/etc/ssh/sshd_config) для управления правилами доступа. Вот как можно вести версионированные резервные копии:

1. Создание резервной копии с нумерацией:
$ cp --backup=numbered /etc/ssh/sshd_config /data/backup/

Это создаёт файлы вида sshd_config.~1~, sshd_config.~2~ и т.д.

2. Создание резервной копии с пользовательским суффиксом:
$ cp --backup=numbered --suffix=.bak /etc/ssh/sshd_config /data/backup/

Это создаёт файлы вида sshd_config.bak.1, sshd_config.bak.2 и т.д.

Преимущества

🔹Сохраняется история изменений файлов

🔹Предотвращается случайная перезапись важных данных

🔹Предлагается простая система версионности без необходимости использовать сложные системы контроля версий

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Объяснение Сетевого Взаимодействия в Kubernetes (eng)

Узнайте, как работает сетевая модель Kubernetes (K8s) с использованием Pod'ов, CNI-плагинов и Service'ов. Изучите взаимодействие между Pod'ами, IP-адресацию и сетевые политики. А также создайте свой первый Pod с нуля.

Смотреть на YouTube

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Совет по Linux для DevOps-инженеров

Как получить публичный IP-адрес сервера с помощью команды?

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

Для AWS и GCP всегда используйте соответствующий сервис метаданных для получения публичного IP-адреса.

Примечание: пожалуйста, не используйте общедоступные сервисы в реальных проектах или в продуктивной среде. Всегда консультируйтесь с командой по информационной безопасности по поводу возможных вариантов.

👉 DevOps Portal

Читать полностью…

DevOps Portal | Linux

Почему ["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

Читать полностью…

DevOps Portal | Linux

Паттерны проброса портов в Kubernetes

Вы находитесь внутри dev-кластера, доступ к сети ограничен, и только что задеплоенный сервис ведёт себя некорректно.

Нет ни LoadBalancer'а, ни ingress-контроллера, а открыть порт — не вариант, потому что сетевая команда либо медлит, либо отказывает.

В этом случае вас выручает kubectl port-forward.

Здесь представлена упрощённая схема для наглядного понимания.

👉 DevOps Portal

Читать полностью…
Subscribe to a channel