После завершения поддержки ingress-nginx Kubernetes-сообщество рекомендует переходить на Gateway API. Его главная идея — разделить ответственность между платформенной командой и разработчиками.
Как это устроено:
В отличие от Ingress, где всё находится в одном ресурсе с большим количеством аннотаций, Gateway API делает конфигурацию более понятной, расширяемой и независимой от конкретного контроллера.
Какой контроллер выбрать:
Для большинства базовых Ingress-ресурсов можно воспользоваться официальным конвертером:
go install sigs.k8s.io/ingress2gateway@latest
ingress2gateway print --namespace default
Он преобразует существующие Ingress-ресурсы в Gateway API YAML. Аннотации, завязанные на конкретный Ingress Controller, придётся перенести вручную.
#арсенал_инженера #kubernetes #gatewayapi #ingress
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Нашли полезный open source-репозиторий, в котором собраны вопросы с реальных технических интервью, советы по прохождению HR-этапа, разбор популярных тем и ссылки на дополнительные материалы.
Внутри — вопросы по Linux, Docker, Kubernetes, CI/CD, Terraform, Ansible, Git, сетям и другим технологиям, с которыми DevOps-инженеры сталкиваются на собеседованиях.
Сохраняйте — пригодится перед следующим интервью
#задача_со_звёздочкой
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
Forwarded from Proglib.academy | IT-курсы
Самое интересное, что разница здесь не столько в модели
На живом демо покажем, как один и тот же запрос работает без агентной системы и с ней
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Во многом его ценность определяет опыт тех, кто его разрабатывает и ведёт.
Об этом как раз новый пост Proglib Academy
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Proglib.academy | IT-курсы
Курс «ИИ для разработчиков» ведут практики из ведущих российских IT-компаний
В ближайшее время познакомим вас с каждым преподавателем. Программа курса — по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
Размер образа часто можно сократить уже на первой строке Dockerfile.
Вместо:
FROM python:3.11
попробуйте:
FROM python:3.11-slim
Это обычно даёт:
python:3.11-alpine ещё компактнее, но использует musl libc. Из-за этого некоторые зависимости могут потребовать дополнительной настройки.
Для большинства Python-проектов slim — более практичный вариант по умолчанию, а alpine стоит выбирать осознанно.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Разберут, как превратить AI из инструмента для отдельных задач в часть инженерного процесса
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Forwarded from Proglib.academy | IT-курсы
Для человека это естественная часть работы. У Claude Code этого контекста по умолчанию нет — только задача и инструкции, которые ему дали.
Поэтому в большой команде недостаточно просто выбрать хорошую модель.❗️ Нужно ещё объяснить ей, как у вас устроена разработка: какие подходы приняты, что обязательно проверять и по каким правилам принимать решения.
GenAI Data Platform, и с этой проблемой сталкивался не раз
Покажет живое демо, разберём, как встроить AI в процесс разработки так, чтобы он реально помогал, а не добавлял ещё один повод для споров на ревью.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Если задача по cron ещё не завершилась, а уже стартовал следующий запуск, можно получить несколько одновременно работающих экземпляров скрипта. Это приводит к конфликтам, лишней нагрузке и непредсказуемому поведению.
Решить проблему поможет lckdo из пакета moreutils
sudo apt install moreutils
lckdo /tmp/my-script.lock /usr/local/bin/script.sh
Если предыдущий экземпляр ещё работает, новый запуск завершится сразу.
```
lckdo -w /tmp/my-script.lock /usr/local/bin/script.sh```
* * * * * lckdo /tmp/backup.lock /usr/local/bin/backup.sh
Теперь новый запуск начнётся только после завершения предыдущего.
#root_prompt
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Forwarded from Библиотека собеса по DevOps | вопросы с собеседований
Что такое финалайзеры (finalizers) и для чего они нужны?
Это уникальные ключи в манифесте объекта, которые определяют операции, необходимые для выполнения перед удалением объекта. Например, они используются для предотвращения удаления pvc и pv при активном PODе.
Библиотека собеса по DevOps
Библиотека собеса по DevOps
👍3
Ниже — бесплатный вебинар о том, как этого избежать 📍
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Forwarded from Proglib.academy | IT-курсы
Где-то есть тесты, где-то их забыли. Где-то агент следует архитектуре проекта, где-то предлагает решение, которое с ней не сочетается.
Завтра покажем, как передать AI инженерный контекст команды и не превратить его внедрение в ещё один источник хаоса.
Бесплатно. 60 минут доклада + 30 минут вопросов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
kubectl-neat — инструмент для очистки выводов команд kubectl get в k8s. Он удаляет избыточную информацию из YAML и JSON манифестов, оставляя только важные данные.
Как использовать:
kubectl get pod mypod -o yaml | kubectl neat
В результате вывод будет очищен от ненужных временных меток, идентификаторов и данных о статусах, что упрощает восприятие манифестов.
kubectl-neat помогает быстрее анализировать конфигурации и сокращает объем выводимой информации, делая её более читабельной.
#арсенал_инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩3👍1