DevOps на минималках
2.85K subscribers
111 photos
63 videos
89 links
Все самое полезное для девопсера в одном канале.

1. Библиотека книг и статей по теме DevOps.
2. Задачи и тесты по DevOps для тренировки и обучения.
3. Вопросы с собеседований по DevOps и ответы на них.

по рекламе: @jannytg
Download Telegram
Как в Kubernetes устроена работа с хранилищами?

У Kubernetes есть volumes, например, нативный emtyDir. Часть из них stateless, то есть они живут, пока жив под. Судьба у данных, которые туда попадают, аналогичная.

Для statefull-приложений используются постоянные хранилища, Persistent Volumes (PV). Persistent Volumes (PV) — это единицы хранения, которые были выделены кластеру Kubernetes его администратором. Это могут быть локальные диски, СХД, внешние дисковые полки. Они никак не зависят от жизненного цикла подов.

Persistent Volume Claim (PVC) — это запрос на выделение PV определенных характеристик: типа хранилища, объема, типа доступа (чтение и/или запись). Для описания подробных характеристик доступных PV используются Storage Classes.

В динамике это все выглядит следующим образом: под отправляет PVC, а PVC уже обращается к PV и передает ее поду.

Схема выделения PV подам на картинке ниже


#kb #собес
3
Docker простыми словами - канал шпаргалка для тех, кто использует Docker в работе программиста, тестировщика или на любой другой позиции.

Первый канал по Docker. Поискав в телеграме каналы по docker и не найдя ничего, я решил обьединить контент в одном месте.

По содержанию в канале:
- вопросы с собеседований
- команды докера
- книги
- тесты для проверки ваших знаний
- обучающие видео
- чат для обсуждения

Подписывайтесь, комментируйте и предлагайте свой контент в нашем новом сообществе: @justdocker
7 бесплатных ресурсов, чтобы прокачаться в Linux и DevOps 👇

1) Bash → blog.sysxplore.com
2) Linux → linuxopsys.com
3) AWS → explore.skillbuilder.aws
4) Azure → learn.microsoft.com
5) DevOps → edx.org/learn/devops
6) Docker → docker-curriculum.com
7) Kubernetes → kubernetes.io

Фундамент DevOps = Linux + Shell + облака + контейнеры + оркестрация.
Начни с базиса — дальше всё соберётся.

#linux #devops #cloud #docker #kubernetes
4
🐋 Docker-совет: используйте `HEALTHCHECK` не только для статуса, но и как скрытый «авто-рестарт триггер» для сложных сервисов.

Фишка:
HEALTHCHECK может выполнять скрипт, который проверяет не только, жив ли процесс, но и корректно ли работает ваш сервис (доступ к БД, состояние очередей, ответ API, время отклика и т.п.).

Если HEALTHCHECK начинает возвращать EXIT 1, Docker помечает контейнер как unhealthy.
А если контейнер запущен через --restart=always или в оркестраторе - он автоматически пересоздаётся как при аварии.

Пример:
HEALTHCHECK может «ловить» зависшие соединения, мёртвые воркеры или блокировки, которые сам процесс не считает фатальными — но которые ломают приложение.

Мини-пример:

HEALTHCHECK --interval=30s --timeout=5s
CMD curl -f http://localhost:8080/health || exit 1


Зачем это нужно:
- Автоматически перезапускает контейнер при внутренних зависаниях, а не только при краше.
- Позволяет держать сервисы «самоочищающимися».
- Часто заменяет костыльные cron-перезапуски.

Обычно HEALTHCHECK используют просто «чтобы было», но при правильной настройке это мощный инструмент самовосстановления.
2🔥1
Топ 7 книг по Linux.
Скачивайте и читайте.

Хакинг на Linux
Автор: Колисниченко Д. Н.

Kali Linux Penetration Testing Bible
Автор: Gus Khawaja

Efficient Linux at the Command Line
Автор: Daniel J. Barrett

Penetration Testing with Kali Linux 2.0

Mastering Kali Linux for Advanced Penetration Testing
Автор: Vijay Kumar Velu

Linux Bible from Scratch
Автор: Christopher Negus

How Linux Works
Автор: Brian Ward

#linux #подборка
👎2
🔧 Разминка для DevOps-инженера

Без подвохов: шесть простых слов, знакомых каждому, кто хоть немного работает с CI/CD и автоматизацией.

1. Инструмент для автоматизации сборки и деплоя.

2. Инфраструктура как код от HashiCorp.

3. Система контроля версий.

4. Автоматизация настройки серверов через YAML.

5. Менеджер пакетов для macOS.

6. Операционная система, основа для большинства серверов.

💬 Пишите ответы под спойлер в комментарии 👇

DevOps на минималка
Please open Telegram to view this post
VIEW IN TELEGRAM
Operations Anti-patterns,
DevOps Solutions

Автор:
Jeffery D. Smith
Год издания:
2020

#devops #en

Скачать книгу
2
Kubernetes в продакшене: от CI/CD до безопасности и отказоустойчивости

Курс по Kubernetes: автоматизируйте инфраструктуру и подготовьтесь к CKA/CKAD

➡️ ПРОЙТИ ТЕСТ: https://clck.ru/3SGcDG

Курс «Инфраструктурная платформа на основе Kubernetes» научит проектировать и запускать платформы для цифровых продуктов: IaC, механизмы K8s, экосистему инструментов и эксплуатацию кластеров. Программа от Express 42 ориентирована на практику и подходит техлидам, архитекторам ПО, разработчикам, DevOps и администраторам.

📌Практическое обучение проводится в прямом эфире — вебинары не являются предзаписанными.

🎁 Закрываем набор до 8.03.2026 в группу февраля со скидкой 🔤 . Подробности у менеджера.
Бонус — курс в записи на выбор:
- Elastic/OpenSearch Advanced
- Углубленное изучение языка Java
- GitOps

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Что выведет этот GitHub Actions workflow?

name: Test Job

on:
workflow_dispatch:

jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Set var
run: echo "RESULT=ok" >> $GITHUB_ENV

- name: Check var
run: |
if [ "$RESULT" == "ok" ]; then
echo "Success";
else
echo "Fail";
fi

👾 — Success
👍 — Fail
🥰 — Ошибка выполнения скрипта
— Переменная не найдена, но пайплайн не упадет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1👾1
👩‍💻 ИИ-ассистенты уже умеют писать код, предлагать исправления и ускорять разработку.

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

На открытом уроке:
разберём, почему красивые демонстрации не всегда работают в production-задачах и как перейти от случайного использования ИИ к системному подходу
поговорим о типичных ошибках при работе с ИИ-ассистентами, разберём практики, которые помогают получать предсказуемый результат
покажем, как использовать шаблоны и подходы, применимые в реальной разработке
разберём живую демонстрацию на open-source проекте

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

🗓 Открытый урок пройдёт 16 июня в 20:00 МСК в преддверии старта курса «ИИ для разработчиков».

Подробности и регистрация: https://clck.ru/3Twfd3

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍1
✏️ Шпаргалка по звёздочкам

Нашли для вас полезную шпаргалку по составлению cron-выражений.

💾 Сохраняйте себе, чтобы не потерять

DevOps на минималка
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
😀 Крутая шпаргалка по командам Git на русском

echo "# название" >> README.md - создание файла README.md
git init - инициализация репозитория
git add README.md - добавления файла README.md в проект
git commit -m "first commit" - получает проиндексированный снимок состояния и выполняет его коммит в историю проекта
git remote add origin https://github.com/stanruss/название.git - команда, которой устанавливается подключение к удаленному серверу и git репозиторию, размещающемуся на нем.
git push -u origin master - кзменения отправляются на удаленный сервер

git log --oneline - посмотреть все коммиты.
git checkout . - восстановить все.
git checkout "код коммита" - вернуть до состояния этого коммита.
git checkout master - вернуться в ветку мастер.

Восстановить файлы на локальном компьютере:
git fetch --all
git reset --hard origin/master или git reset --hard origin/<название_ветки>

git add text.txt - Добавить файл в репозиторий
git rm text.txt - Удалить файл
git status - Текущее состояние репозитория (изменения, неразрешенные конфликты и тп)
git commit -a -m "Commit description" - Сделать коммит
git push origin - Замерджить все ветки локального репозитория на удаленный репозиторий
git push origin master - Аналогично предыдущему, но делается пуш только ветки master
git push origin HEAD - Запушить текущую ветку, не вводя целиком ее название
git pull origin - Замерджить все ветки с удаленного репозитория
git pull origin master - Аналогично предыдущему, но накатывается только ветка master
git pull origin HEAD - Накатить текущую ветку, не вводя ее длинное имя
git fetch origin - Скачать все ветки с origin, но не мерджить их в локальный репозиторий
git fetch origin master - Аналогично предыдущему, но только для одной заданной ветки
git checkout -b some_branch origin/some_branch - Начать работать с веткой some_branch (уже существующей)
git branch some_branch - Создать новый бранч (ответвится от текущего)
git checkout some_branch - Переключиться на другую ветку (из тех, с которыми уже работаем)
git branch # звездочкой отмечена текущая ветвь - Получаем список веток, с которыми работаем
git branch -a # | grep something - Просмотреть все существующие ветви
git merge some_branch - Замерджить some_branch в текущую ветку
git branch -d some_branch - Удалить бранч (после мерджа)
git branch -D some_branch - Просто удалить бранч (тупиковая ветвь)
git show d8578edf8458ce06fbc5bb76a58c5ca4a58c5ca4 - Изменения, сделанные в заданном коммите
git push origin :branch-name - Удалить бранч из репозитория на сервере
git reset --hard d8578edf8458ce06fbc5bb76a58c5ca4a58c5ca4 - Откатиться к конкретному коммиту и удалить последующие (хэш смотрим в «git log»)
git push -f - Залить на сервер измененные коммиты
git clean -f - Удаление untracked files

👉 DevOps на минималках
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1