loose_code | Unsorted

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

12156

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

Subscribe to a channel

DevOps Portal | Linux

Быстрый совет по Linux

Устанавливай значение по умолчанию, если переменная не задана или пуста, вот так:

echo "Username: ${USERNAME:-Guest}"


Если переменная USERNAME не определена, будет выведено Guest.

👉 DevOps Portal

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

DevOps Portal | Linux

Совет дня по Linux

Нужно разобраться с логами в формате .gz?

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

🔹zcat

🔹zless

🔹zgrep

🔹zdiff

и другие утилиты из семейства z*, которые работают напрямую с сжатыми файлами

👉 DevOps Portal

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

DevOps Portal | Linux

Configure and customize Kubernetes Monitoring easier with Alloy Operator

В helm chart Kubernetes Monitoring появилась возможность динамической настройки сбора данных телеметрии с помощью Alloy Operator.

В этой стать в блоге Grafana
рассказано об этом подробнее

👉 DevOps Portal

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

DevOps Portal | Linux

Производительность Linux

Нашел в сети отличную инфографику: Linux observability tools, Linux static performance analysis tools, Linux benchmarking tools, Linux tuning tools, и Linux sar.

В хорошем качестве здесь

👉 DevOps Portal

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

DevOps Portal | Linux

Отличные новости: разыгрываем 3 книги для изучения Linux.

10 победителей этого конкурса получат по 3 книги в бумажной версии, которые будут полезны как начинающим, так и опытным специалистам:

- Linux. От новичка к профессионалу.
- Командная строка Linux.
- Linux глазами хакера.

Итоги подведём 12 июля в 18:30 случайным образом при помощи бота. Доставка для победителей бесплатная в зоне действия СДЭК.

Для участия нужно:

1. Быть подписанным на наш канал: Infosec.
2. Подписаться на канал наших друзей: Мир Linux.
3. Нажать на кнопку «Участвовать»;
4. Ждать результат.

Бот может немного подвиснуть — не переживайте! В таком случае просто нажмите еще раз на кнопку «Участвовать».

#Конкурс

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

DevOps Portal | Linux

Крутой инструмент для сбора информации о доменах — Domain Digger

Вводишь домен — получаешь кучу инфы: DNS, WHOIS, SSL, субдомены и всё, что нужно

Работает быстро, без кэширования, можно выбирать разные DNS-серверы для точных данных

Попробовать можно здесь

👉 DevOps Portal

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

DevOps Portal | Linux

Когда польскому девопсу выдали корпоративный компьютер с windows без прав администратора

👉 DevOps Portal

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

DevOps Portal | Linux

8 стратегий деплоя в Kubernetes и как они работают

🔹Деплой с полным пересозданием

🔹Поэтапный деплой

🔹Деплой по схеме "синяя/зелёная" среда

🔹Канареечный деплой

🔹Деплой с A/B-тестированием

🔹Теневой деплой

🔹Управляемый деплой по принципу "по возможности"

🔹Медленный градуальный деплой

https://www.groundcover.com/blog/kubernetes-deployment-strategies

👉 DevOps Portal

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

DevOps Portal | Linux

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

👉 DevOps Portal

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

DevOps Portal | Linux

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

Yandex Infrastructure проводит квиз, который знакомит с тем, как устроена внутрянка компании. Легкий и нескучный формат, чтобы пройти и заодно понять, как работают продукты и технологии, которые помогают разрабатывать, деплоить и эксплуатировать все основные сервисы Яндекса.

🎁 И да — среди всех участников разыгрываются 10 призов: фирменный рюкзак и кастомная настолка.

📌 Участвовать просто: проходим квиз, заполняем форму и подписываемся на канал Yandex Infrastructure.

Сроки проведения конкурса с 26.06.2025г. по 07.07.2025г.

Информация об организаторе, условиях розыгрыша, призах и порядке их получения — по ссылке.

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

DevOps Portal | Linux

Kubernetes 101: Деплой Pod'а с образом контейнера из приватного реестра

Нашёл для вас новый практический челендж. Загрузка приватных образов — одна из самых базовых, но в то же время фундаментальных возможностей любого контейнерного рантайма, и это то, что должен знать каждый.

Попрактиковаться можно здесь: https://labs.iximiuz.com/challenges/kubernetes-pull-private-image

👉 DevOps Portal

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

DevOps Portal | Linux

Быстрый совет по Linux

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

$ tree -L 2 /etc


Эта команда выводит файлы и подкаталоги в каталоге /etc на глубину 2 уровня.

Отлично подходит для быстрого изучения структуры конфигурационных файлов

👉 DevOps Portal

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

DevOps Portal | Linux

Cвежий туториал по сетевому взаимодействию в Kubernetes

Сетевая подсистема Kubernetes — один из ключевых и наиболее сложных аспектов при работе с контейнеризированными нагрузками в продакшене. Именно она обеспечивает взаимодействие между различными компонентами системы Kubernetes — такими как контейнеры и сервисы.

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

https://www.freecodecamp.org/news/kubernetes-networking-tutorial-for-developers/

👉 DevOps Portal

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

DevOps Portal | Linux

Быстрый совет по Linux

Нужен безопасный и уникальный временный файл или каталог в скриптах? Используй:

$ mktemp


Команда создаст временный файл с уникальным именем в каталоге /tmp

Для создания временного каталога добавь опцию -d.

👉 DevOps Portal

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

DevOps Portal | Linux

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

Установить можно через krew:

kubectl krew install node-resource


или со страницы проекта: https://github.com/ahmetb/kubectl-node_resource/

👉 DevOps Portal

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

DevOps Portal | Linux

Почему у разных ресурсов Kubernetes разные значения apiVersion?

Kubernetes API организованы в группы (API groups)

Существует два типа API-групп:

🔹Core-группа → Без названия группы, просто apiVersion: v1

🔹Именованные группы → Например, apps, batch, networking.k8s.io и др.

Например, можно задаться вопросом — почему Service относится к core API?

🔹Такие ресурсы, как Service, Pod, Namespace, Secret и т.п., были частью оригинальной спецификации Kubernetes.

🔹Это базовые строительные блоки (primitive objects).

🔹Поэтому они находятся в core-группе (apiVersion: v1).

А почему, например, ReplicaSet — в API-группе apps?

🔹ReplicaSet — это контроллер, а не примитивный объект.

🔹Он появился позже как часть более продвинутой системы управления нагрузкой (вместе с Deployment, StatefulSet и др.).

🔹Поэтому он размещён в именованной группе — apps.

Зачем вообще нужны API-группы?

- Kubernetes логически и модульно организует ресурсы.

- Такое разделение позволяет:

🔹Версионировать функциональность независимо

🔹Развивать контроллеры, не затрагивая стабильность core-части

🔹Поддерживать обратную совместимость

🔹Core-ресурсы стабильны и зрелы (v1)

- Новые фичи проходят стадии:

🔹v1alpha1 (ранний этап)

🔹v1beta1 (предварительный релиз)

🔹v1 (стабильный релиз)

Примеры:

🔹batch/v1 → CronJob

🔹autoscaling/v2 → HPA

Надеюсь, теперь стало понятнее, зачем Kubernetes использует разные API-группы для разных типов ресурсов

👉 DevOps Portal

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

DevOps Portal | Linux

Создание качественных контейнерных образов — это не ракетостроение

Применяя всего два подхода, можно сократить размер образа и количество CVE на 50–80%:

🔹Использование multi-stage сборки

🔹Выбор базового образа подходящего размера

Учиться можно на практике: https://labs.iximiuz.com/skill-paths/build-container-images

👉 DevOps Portal

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

DevOps Portal | Linux

Чтобы вывести список всех Docker-образов на системе (включая скрытые слои), выполните команду docker images -a. Когда будете готовы снести их все, передайте вывод в docker rmi, используя флаг -q, чтобы получить только ID образов:

docker images -a -q | xargs docker rmi


👉 DevOps Portal

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

DevOps Portal | Linux

Разверните базу данных PostgreSQL в Kubernetes с помощью CloudNativePG

Управление нагрузкой на базу данных в K8s — задача далеко не из простых, но с появлением хорошо поддерживаемых open-source операторов, таких как CloudNativePG, это становится гораздо более выполнимо

https://glasskube.dev/products/package-manager/guides/deploy-postgres-kubernetes/

👉 DevOps Portal

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

DevOps Portal | Linux

Linux Storage 101: Разделение диска на несколько разделов

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

Пример:
🔹ext4 — для системных данных и логов
🔹btrfs — для данных приложений

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

👉 DevOps Portal

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

DevOps Portal | Linux

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

Чаще всего под "процессами" подразумеваются процессы Linux, но не всегда. В случае с Apple Containers речь действительно идёт о процессах Linux.

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

https://iximiuz.com/en/posts/oci-containers/

👉 DevOps Portal

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

DevOps Portal | Linux

Совет дня по Linux

Если вы хотите определить, сколько времени занимает выполнение конкретной команды или скрипта, используйте команду time.

Синтаксис:

$ time <здесь_команда>


Пример:
$ time find / -perm -u=s -type f &>/dev/null


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

👉 DevOps Portal

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

DevOps Portal | Linux

Gemini CLI — опенсорс AI-агент для разработчиков от Google, который работает прямо в терминале

На борту — Gemini 2.5 Pro, контекст 1М токенов, 60 запросов/мин и 1000 в сутки — бесплатно (нужен только гугл-аккаунт)

Можно писать и дебажить код, автоматизировать задачи, ресерчить

При желании можно прикрутить любой MCP сервер. Например, генерировать прямо из терминала картинки (Imagen) или видео (Veo)

npm install -g @google/gemini-cli


Исходники на GitHub

👉 DevOps Portal

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

DevOps Portal | Linux

Репозиторий с подборкой проверенных ресурсов для изучения DevOps

https://github.com/Lets-DevOps/awesome-learning

👉 DevOps Portal

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

DevOps Portal | Linux

Ты, вероятно, уже знаешь, как задавать переменные окружения в Linux:

export my_var


Но знал ли ты, что с помощью той же команды export можно и удалить экспортированную переменную?

export -n my_var


👉 DevOps Portal

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

DevOps Portal | Linux

Kubernetes Best Practices I Wish I Had Known Before

Это руководство представляет собой сжатое изложение 16 проверенных на практике рекомендаций по работе с Kubernetes в продакшене — от настройки ресурсов, RBAC и probe’ов до CI/CD, namespace’ов, усиления безопасности контейнерных образов и GitOps

https://www.pulumi.com/blog/kubernetes-best-practices-i-wish-i-had-known-before/

👉 DevOps Portal

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

DevOps Portal | Linux

Linux Storage 101: Форматирование пустого диска

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

Супербазовая задача, но знать обязательно: https://labs.iximiuz.com/challenges/storage-simple-format

👉 DevOps Portal

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

DevOps Portal | Linux

А вы знали?

https://x.com/jacobmparis/status/1938270759765352724

👉 DevOps Portal

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

DevOps Portal | Linux

top хорош для мониторинга системы в Linux

Но ты можешь добраться до bottom 😜

И да, он написан на Rust

Это настраиваемый системный монитор для терминала, вдохновлённый gtop, gotop и htop.

Его можно использовать в Linux, macOS и даже Windows

https://github.com/ClementTsang/bottom

👉 DevOps Portal

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

DevOps Portal | Linux

Быстрый совет по Linux

Используй du -h, чтобы быстро посмотреть размер всех файлов и папок в текущей директории

$ du -h


Флаг -h выводит размеры в удобочитаемом формате (KB, MB, GB), чтобы было проще найти крупные файлы и каталоги.

👉 DevOps Portal

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