kubectl-ai выступает как интеллектуальный интерфейс, преобразующий намерения пользователя в точные операции Kubernetes
GitHub: kubectl-ai
👉 DevOps Portal
GitHub: kubectl-ai
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯5❤1👍1🥱1🌚1
Сборка Docker-образов — от Zero до Hero 🐳
Подготовил подборку практических заданий: начинаем с написания самого первого Dockerfile и постепенно доходим до использования multi-stage сборок для создания более оптимизированных образов.
Приятной сборки!✌️
👉 DevOps Portal
Подготовил подборку практических заданий: начинаем с написания самого первого Dockerfile и постепенно доходим до использования multi-stage сборок для создания более оптимизированных образов.
Напишите свой первый Dockerfile
https://labs.iximiuz.com/challenges/docker-write-first-dockerfile
Напишите Dockerfile для простого веб-серверного приложения
https://labs.iximiuz.com/challenges/docker-write-simple-dockerfile
Напишите Dockerfile, исключающий dev-зависимости из production-образа
https://labs.iximiuz.com/challenges/docker-write-dockerfile-with-no-dev-dependencies
Напишите Dockerfile для приложения с системными зависимостями
https://labs.iximiuz.com/challenges/docker-write-dockerfile-with-system-dependencies
Сборка и компиляция приложений внутри Dockerfile
https://labs.iximiuz.com/challenges/docker-build-and-compile-in-dockerfile
Сборка и инспекция container image с помощью Docker
https://labs.iximiuz.com/challenges/docker-build-and-inspect-image
Оптимизация container-образов с использованием multi-stage сборок
https://labs.iximiuz.com/challenges/docker-build-and-compile-in-multi-stage-dockerfile
Приятной сборки!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤3👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16😁11👍1
Архитектура Kubernetes Kubelet – объяснение простыми словами
Эта схема показывает, что на самом деле происходит внутри Kubernetes Node.
Поток:
Ключевая идея:
Kubelet – это reconciliation-движок.
Он постоянно гарантирует:
Desired State = Actual State
Именно за счёт этого Kubernetes обеспечивает self-healing (самовосстановление кластера).
👉 DevOps Portal
Эта схема показывает, что на самом деле происходит внутри Kubernetes Node.
Поток:
1️⃣ API Server
→ Отправляет PodSpec (желаемое состояние)
2️⃣ Главный цикл Kubelet (Kubelet Main Loop)
→ Непрерывно сверяет и приводит в соответствие желаемое и фактическое состояние
3️⃣ Pod Workers (параллельно)
→ Независимо обрабатывают жизненный цикл каждого пода
4️⃣ Слой CRI
→ Kubelet → CRI → Container Runtime (containerd / CRI-O)
5️⃣ Image Manager
→ Пуллит образы и выполняет их garbage collection (очистку/удаление неиспользуемых)
6️⃣ Volume Manager
→ Монтирует / размонтирует тома
7️⃣ PLEG
→ Отслеживает изменения состояния контейнеров
8️⃣ Status Manager
→ Отправляет статус пода обратно в API Server
(IP, Phase, Conditions)
Ключевая идея:
Kubelet – это reconciliation-движок.
Он постоянно гарантирует:
Desired State = Actual State
Именно за счёт этого Kubernetes обеспечивает self-healing (самовосстановление кластера).
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍1
Если ты регулярно работаешь с Kubernetes, без
Есть всё базовое: переключение контекстов, scaling, rollout’ы, resource limits и типовые кейсы отладки (краш подов, недоступные сервисы). Удобная шпаргалка, когда нужен быстрый ответ прямо в кластере.
https://dev.to/code_cursor/kubernetes-cheat-sheet-essential-kubectl-commands-for-developers-43mn
👉 DevOps Portal
kubectl никуда. В статье – компактный референс по ключевым командам: поды, деплои, сервисы, секреты и дебаг.Есть всё базовое: переключение контекстов, scaling, rollout’ы, resource limits и типовые кейсы отладки (краш подов, недоступные сервисы). Удобная шпаргалка, когда нужен быстрый ответ прямо в кластере.
https://dev.to/code_cursor/kubernetes-cheat-sheet-essential-kubectl-commands-for-developers-43mn
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Terraform Actions – фича, которую нужно знать
Terraform отлично справляется с CRUD-операциями – созданием, чтением, обновлением и удалением инфраструктуры.
Но что насчёт всего, что происходит после того, как инфраструктура уже развернута?
Например, вызов Lambda-функции при необходимости.
До версии v1.14 приходилось использовать обходные решения – provisioner’ы (local-exec или remote-exec) либо внешние скрипты.
С появлением Actions в v1.14 теперь такие операции можно выполнять с помощью нативных action-блоков Terraform, встроенных непосредственно в провайдеры (например, AWS Provider).
В этой статье:
- что такое Terraform Actions и зачем их добавили
- типовые use case’ы и стандартный workflow
- практический пример, чтобы посмотреть, как это работает на практике
Читать здесь: https://newsletter.devopscube.com/p/terraform-actions-explained
Примечание: это новая фича, и поддержка со стороны провайдеров всё ещё постепенно появляется. Например, у AWS сейчас доступно только три actions.
👉 DevOps Portal
Terraform отлично справляется с CRUD-операциями – созданием, чтением, обновлением и удалением инфраструктуры.
Но что насчёт всего, что происходит после того, как инфраструктура уже развернута?
Например, вызов Lambda-функции при необходимости.
До версии v1.14 приходилось использовать обходные решения – provisioner’ы (local-exec или remote-exec) либо внешние скрипты.
С появлением Actions в v1.14 теперь такие операции можно выполнять с помощью нативных action-блоков Terraform, встроенных непосредственно в провайдеры (например, AWS Provider).
В этой статье:
- что такое Terraform Actions и зачем их добавили
- типовые use case’ы и стандартный workflow
- практический пример, чтобы посмотреть, как это работает на практике
Читать здесь: https://newsletter.devopscube.com/p/terraform-actions-explained
Примечание: это новая фича, и поддержка со стороны провайдеров всё ещё постепенно появляется. Например, у AWS сейчас доступно только три actions.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Как защититься от зараженных PDF и документов? 🤓
Если вы сомневаетесь в безопасности файла, обратите внимание на тулзу Dangerzone
Это утилита конвертирует неблагонадежные PDF, документы и изображения в безопасные PDF файлы, посредством пропуска через две песочницы
Dangerzone имеет как Windows версию, так и на Mac и Linux
👉 DevOps Portal
Если вы сомневаетесь в безопасности файла, обратите внимание на тулзу Dangerzone
Это утилита конвертирует неблагонадежные PDF, документы и изображения в безопасные PDF файлы, посредством пропуска через две песочницы
Dangerzone имеет как Windows версию, так и на Mac и Linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Совет по Linux
Vim умеет откатывать изменения по времени, а не только по шагам.
Вместо того чтобы жать u много раз, можно использовать:
Это откатит буфер к состоянию, в котором он был 2 минуты назад. Очень удобно после массовых правок.
Нужно вернуть часть изменений? Можно переместиться вперёд по времени:
Эта команда повторно применит правки, сделанные за последние 30 секунд. Можно представить дерево undo в Vim как временную шкалу, по которой можно перемещаться вперёд и назад.
Указывать время необязательно. Если его нет, Vim воспринимает число как количество шагов undo.
Например, чтобы откатить последние 3 изменения:
А затем вернуть одно изменение:
Если хочешь превратить свою сессию Vim в машину времени, включи:
Это сохранит историю undo на диск, и ты сможешь откатывать изменения даже после закрытия и повторного открытия файла.
👉 DevOps Portal
Vim умеет откатывать изменения по времени, а не только по шагам.
Вместо того чтобы жать u много раз, можно использовать:
:earlier 2m
Это откатит буфер к состоянию, в котором он был 2 минуты назад. Очень удобно после массовых правок.
Нужно вернуть часть изменений? Можно переместиться вперёд по времени:
:later 30s
Эта команда повторно применит правки, сделанные за последние 30 секунд. Можно представить дерево undo в Vim как временную шкалу, по которой можно перемещаться вперёд и назад.
Указывать время необязательно. Если его нет, Vim воспринимает число как количество шагов undo.
Например, чтобы откатить последние 3 изменения:
:earlier 3
А затем вернуть одно изменение:
:later 1
Если хочешь превратить свою сессию Vim в машину времени, включи:
:set undofile
Это сохранит историю undo на диск, и ты сможешь откатывать изменения даже после закрытия и повторного открытия файла.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16🔥5🤯1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍2🤔1
Документация iximiuz Labs продолжает улучшаться – добавили новый раздел о том, как пробрасывать наружу HTTP(S)-приложения, запущенные в playground’ах, а также кучу диаграмм, объясняющих локальный и удалённый port forwarding и доступ к playground’ам по SSH.
Внутри практические примеры!
https://labs.iximiuz.com/docs/playgrounds/expose-http-ports#introduction
👉 DevOps Portal
Внутри практические примеры!
https://labs.iximiuz.com/docs/playgrounds/expose-http-ports#introduction
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2
Почему важно менять версии Helm Chart?
Когда вы пакуете и публикуете Helm chart, именно версия чарта отслеживается репозиториями.
Не теги образов.
Не версия вашего приложения.
Если вы изменили шаблоны, но не увеличили версию чарта:
- Репозиторий будет считать это тем же самым релизом.
- Ваш CI/CD-пайплайн будет использовать закэшированные артефакты.
- Кластер не обнаружит изменений при выполнении
В итоге всё выглядит так, будто обновилось, но на самом деле ничего не изменилось.
Поле
Поэтому если вы просто обновили тег образа в
Всегда увеличивайте поле version в
Подробный блог:
https://devopscube.com/create-helm-chart/
👉 DevOps Portal
Когда вы пакуете и публикуете Helm chart, именно версия чарта отслеживается репозиториями.
Не теги образов.
Не версия вашего приложения.
Если вы изменили шаблоны, но не увеличили версию чарта:
- Репозиторий будет считать это тем же самым релизом.
- Ваш CI/CD-пайплайн будет использовать закэшированные артефакты.
- Кластер не обнаружит изменений при выполнении
upgrade.В итоге всё выглядит так, будто обновилось, но на самом деле ничего не изменилось.
Поле
appVersion — это всего лишь метаданные о версии вашего приложения. Оно не влияет на упаковку чарта и индексацию в репозитории.Поэтому если вы просто обновили тег образа в
values.yaml и забыли увеличить версию чарта, инструменты, которые на неё опираются, не распознают новый релиз.Всегда увеличивайте поле version в
Chart.yaml, когда меняете любой файл внутри чарта.Подробный блог:
https://devopscube.com/create-helm-chart/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3
Один из ключевых трюков, лежащих в основе Service Mesh — это прозрачный перехват трафика. Такой прокси, как Envoy, можно разместить на сетевом пути между двумя сервисами, даже не давая им понять, что он вообще существует.
eBPF — одна из тех "магических" технологий, с помощью которых можно реализовать такой прозрачный перехват трафика.
Узнайте, как реализовать перехват исходящего трафика, а заодно прокачать навыки программирования на eBPF, в свежем туториале Теодора Подобника:
https://labs.iximiuz.com/tutorials/ebpf-envoy-egress-dc77ccd7
👉 DevOps Portal
eBPF — одна из тех "магических" технологий, с помощью которых можно реализовать такой прозрачный перехват трафика.
Узнайте, как реализовать перехват исходящего трафика, а заодно прокачать навыки программирования на eBPF, в свежем туториале Теодора Подобника:
https://labs.iximiuz.com/tutorials/ebpf-envoy-egress-dc77ccd7
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Узнайте, как с помощью GPT и Claude построить полноценную мульти-средовую платформу Kubernetes.
От k3s до продакшн-кластеров, с использованием GitHub Actions, Traefik, Helm и PostgreSQL – полностью автоматизированная DevOps-архитектура, собранная с помощью AI.
Читайте тут
👉 DevOps Portal
От k3s до продакшн-кластеров, с использованием GitHub Actions, Traefik, Helm и PostgreSQL – полностью автоматизированная DevOps-архитектура, собранная с помощью AI.
Читайте тут
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🤯2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Уменьшил Docker-образ с 1.37 GB → 168 MB.
Всего лишь за счёт использования multi-stage сборок, slim-базовых образов и очистки неиспользуемых зависимостей.
Небольшие оптимизации = более быстрый CI/CD и более безопасные контейнеры👍
👉 DevOps Portal
Всего лишь за счёт использования multi-stage сборок, slim-базовых образов и очистки неиспользуемых зависимостей.
Небольшие оптимизации = более быстрый CI/CD и более безопасные контейнеры
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍2🤯1