Linux хранит состояния отслеживаемых соединений в таблице conntrack. Она используется в том числе при NAT для Kubernetes Services. Если таблица переполняется, новые соединения могут терять пакеты.
Симптомы: периодические тайм-ауты, сбои DNS и ошибки API при нормальных показателях приложений.
Как проверить на проблемном узле:
# Текущее число записей и лимит
sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max
# Сообщения ядра
sudo journalctl -k | grep -i conntrack
Характерная запись:
nf_conntrack: table full, dropping packet
Что делать:
• Увеличить лимит с учётом доступной памяти. Универсального значения для всех узлов нет.
• Проверить настройки
conntrack.maxPerCore и conntrack.min в kube-proxy: он может управлять лимитом. Одного изменения через sysctl недостаточно для устойчивой настройки.• Сократить создание новых соединений: использовать пулы, HTTP keep-alive, проверить лавину повторных запросов.
• Пересматривать тайм-ауты по состояниям соединений после диагностики. Слишком короткие значения могут нарушить работу долгоживущих подключений.
Следите за заполнением таблицы на каждом узле. Свободные ресурсы соседних нод не спасают таблицу перегруженной.
https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
🐳 Docker-образ с 3,17 ГБ до 354 МБ - почти в 9 раз меньше
Такая оптимизация обычно достигается не одной магией, а несколькими простыми приёмами:
- multi-stage build
-
- удаление build-зависимостей после сборки
- очистка
-
- установка только production-зависимостей
- объединение команд
Пример:
Что это даёт:
- быстрее pull/push
- быстрее CI/CD
- меньше места в registry
- быстрее запуск новых pod
- меньше потенциальная attack surface
Перед оптимизацией полезно посмотреть, что реально раздувает образ:
и отдельно проверить слои через
Большой Docker image почти всегда стоит сначала разобрать по слоям — часто там лежат гигабайты build-tools, cache и файлов, которые в runtime вообще не нужны.
Такая оптимизация обычно достигается не одной магией, а несколькими простыми приёмами:
- multi-stage build
-
python:slim / distroless вместо тяжёлого base image- удаление build-зависимостей после сборки
- очистка
apt / pip cache-
.dockerignore для лишних файлов- установка только production-зависимостей
- объединение команд
RUN, чтобы не тащить мусор в слоиПример:
3.17 GB → 354 MBЧто это даёт:
- быстрее pull/push
- быстрее CI/CD
- меньше места в registry
- быстрее запуск новых pod
- меньше потенциальная attack surface
Перед оптимизацией полезно посмотреть, что реально раздувает образ:
docker history <image>и отдельно проверить слои через
dive.Большой Docker image почти всегда стоит сначала разобрать по слоям — часто там лежат гигабайты build-tools, cache и файлов, которые в runtime вообще не нужны.
🔥12❤6👍3💯2🥴1
Есть серьезный разговор…
об ИТ-инфраструктуре и требованиях к ней в современных условиях
Как активное внедрение ИИ изменило подход к выбору железа, с чего начать при выборе приватного облака и как создать отказоустойчивое решение под свои задачи. Обо всем этом и не только — на бесплатной конференции Selectel ТехноДень 8 октября.
Топ-менеджеры, ИТ-директора и инженеры топовых технологических компаний соберутся на одной площадке и обсудят ИТ-тренды, инфраструктуру, ИИ, данные и информационную безопасность. Вас ждут 20 экспертных докладов, 20 интерактивных стендов, живое общение и живая запись подкаста Вселенная Плюс на главной сцене конференции.
Присоединяйтесь к Selectel ТехноДень, чтобы лично задать вопросы экспертам рынка и обменяться опытом. Количество мест ограничено, регистрируйтесь уже сейчас →
Реклама. АО "Селектел". erid:2W5zFGsAMi1
об ИТ-инфраструктуре и требованиях к ней в современных условиях
Как активное внедрение ИИ изменило подход к выбору железа, с чего начать при выборе приватного облака и как создать отказоустойчивое решение под свои задачи. Обо всем этом и не только — на бесплатной конференции Selectel ТехноДень 8 октября.
Топ-менеджеры, ИТ-директора и инженеры топовых технологических компаний соберутся на одной площадке и обсудят ИТ-тренды, инфраструктуру, ИИ, данные и информационную безопасность. Вас ждут 20 экспертных докладов, 20 интерактивных стендов, живое общение и живая запись подкаста Вселенная Плюс на главной сцене конференции.
Присоединяйтесь к Selectel ТехноДень, чтобы лично задать вопросы экспертам рынка и обменяться опытом. Количество мест ограничено, регистрируйтесь уже сейчас →
Реклама. АО "Селектел". erid:2W5zFGsAMi1
Kubernetes NodeLocal DNSCache: ускоряем DNS-запросы 🚀
Без NodeLocal DNSCache DNS-запрос от Pod проходит через:
В нагруженных кластерах это увеличивает задержки и создаёт дополнительную нагрузку на таблицу
NodeLocal DNSCache запускает локальный DNS-кеш на каждой ноде как
Если запись уже есть в кеше, Pod получает ответ прямо с текущей ноды. При промахе запрос передаётся в CoreDNS.
Преимущества
- быстрее обрабатываются повторные DNS-запросы;
- снижается нагрузка на CoreDNS;
- уменьшается межнодовый DNS-трафик;
- обходятся
- сокращается количество UDP-записей в
- доступны DNS-метрики отдельно для каждой ноды.
NodeLocal DNSCache стабилен с Kubernetes 1.18, но обычно его нужно включать отдельно и развернуть
🔗 Официальная документация Kubernetes: https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/
Без NodeLocal DNSCache DNS-запрос от Pod проходит через:
Service IP → kube-proxy → DNAT → conntrack → CoreDNSВ нагруженных кластерах это увеличивает задержки и создаёт дополнительную нагрузку на таблицу
conntrack.NodeLocal DNSCache запускает локальный DNS-кеш на каждой ноде как
DaemonSet:Pod → локальный DNS-кеш → CoreDNSЕсли запись уже есть в кеше, Pod получает ответ прямо с текущей ноды. При промахе запрос передаётся в CoreDNS.
Преимущества
- быстрее обрабатываются повторные DNS-запросы;
- снижается нагрузка на CoreDNS;
- уменьшается межнодовый DNS-трафик;
- обходятся
kube-proxy и DNAT;- сокращается количество UDP-записей в
conntrack;- доступны DNS-метрики отдельно для каждой ноды.
NodeLocal DNSCache стабилен с Kubernetes 1.18, но обычно его нужно включать отдельно и развернуть
node-local-dns как DaemonSet.🔗 Официальная документация Kubernetes: https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Прокачай терминал Linux: 7 утилит, которые экономят время
Описание: Что установить на Linux для удобной разработки? Быстрый поиск по коду, переходы между проектами, наглядный Git и сохранение рабочих сессий - 7 полезных инструментов с примерами.
#Linux #Терминал #Программирование #DevOps #НастройкаLinux
Описание: Что установить на Linux для удобной разработки? Быстрый поиск по коду, переходы между проектами, наглядный Git и сохранение рабочих сессий - 7 полезных инструментов с примерами.
#Linux #Терминал #Программирование #DevOps #НастройкаLinux
😁3❤2🌚1
Gateway API vs Ingress Controller в Kubernetes
Главное различие в архитектуре управления трафиком.
Ingress задаёт правила маршрутизации, а Ingress Controller обычно одновременно:
- следит за конфигурацией;
- обновляет правила;
- сам проксирует трафик.
С Gateway API логика похожа: вы описываете
Например, в NGINX Gateway Fabric control plane и data plane разделены:
- Control plane: контроллер читает Gateway API-ресурсы и формирует конфигурацию.
- Data plane: отдельный NGINX pod принимает и маршрутизирует трафик.
- Между ними конфигурация передаётся через gRPC.
В итоге Gateway API даёт более гибкую и расширяемую модель маршрутизации, особенно для сложной инфраструктуры и нескольких команд.
Коротко: Ingress проще и привычнее. Gateway API предлагает более современную архитектуру с чётким разделением управления и обработки трафика.
Главное различие в архитектуре управления трафиком.
Ingress задаёт правила маршрутизации, а Ingress Controller обычно одновременно:
- следит за конфигурацией;
- обновляет правила;
- сам проксирует трафик.
С Gateway API логика похожа: вы описываете
Gateway, HTTPRoute, GRPCRoute, а контроллер превращает их в рабочую конфигурацию.Например, в NGINX Gateway Fabric control plane и data plane разделены:
- Control plane: контроллер читает Gateway API-ресурсы и формирует конфигурацию.
- Data plane: отдельный NGINX pod принимает и маршрутизирует трафик.
- Между ними конфигурация передаётся через gRPC.
В итоге Gateway API даёт более гибкую и расширяемую модель маршрутизации, особенно для сложной инфраструктуры и нескольких команд.
Коротко: Ingress проще и привычнее. Gateway API предлагает более современную архитектуру с чётким разделением управления и обработки трафика.
❤6👍2
🤖 ИИ-агенты теперь могут самостоятельно работать с задачами в GitLab
Обычно разработчик общается с ИИ в отдельном чате, а потом переносит результат в рабочий процесс. В SourceCraft появился другой сценарий: агент получает задачу прямо в обсуждении GitLab и работает под собственной учетной записью.
Например, ему можно поручить написание кода или проверку безопасности. Готовый результат агент возвращает на ревью. А если по ходу работы не хватает данных или требуется согласование, он сам обращается к команде.
При этом взаимодействовать с агентами можно не только через GitLab, но и из VS Code, командной строки, мессенджеров или веб-интерфейса. Компании также смогут подключать собственных агентов, в том числе созданных в Yandex AI Studio.
Получается, что ИИ участвует не только в написании кода, но и в самом процессе разработки: от получения задачи и уточнения деталей до передачи результата на проверку.
Обычно разработчик общается с ИИ в отдельном чате, а потом переносит результат в рабочий процесс. В SourceCraft появился другой сценарий: агент получает задачу прямо в обсуждении GitLab и работает под собственной учетной записью.
Например, ему можно поручить написание кода или проверку безопасности. Готовый результат агент возвращает на ревью. А если по ходу работы не хватает данных или требуется согласование, он сам обращается к команде.
При этом взаимодействовать с агентами можно не только через GitLab, но и из VS Code, командной строки, мессенджеров или веб-интерфейса. Компании также смогут подключать собственных агентов, в том числе созданных в Yandex AI Studio.
Получается, что ИИ участвует не только в написании кода, но и в самом процессе разработки: от получения задачи и уточнения деталей до передачи результата на проверку.
🔥4❤2🥰1🤯1
⚡️ В Kubernetes соединения случайно обрываются под нагрузкой? Проверьте conntrack.
Если таблица отслеживания соединений на ноде заполнена, это может проявляться таймаутами, сбоями DNS и ошибками запросов. Сначала сравните число записей с лимитом:
В кластере, который создаётся через kubeadm, лимит можно задать в отдельном документе
Документация Kubernetes - https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/
Если таблица отслеживания соединений на ноде заполнена, это может проявляться таймаутами, сбоями DNS и ошибками запросов. Сначала сравните число записей с лимитом:
sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max
В кластере, который создаётся через kubeadm, лимит можно задать в отдельном документе
KubeProxyConfiguration внутри конфигурационного YAML:
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
conntrack:
maxPerCore: 65536
min: 131072
maxPerCore задаёт лимит на ядро, min — нижнюю границу для ноды. Примерные значения нужно подбирать под число ядер и нагрузку: увеличение лимита помогает только после проверки, что проблема действительно в переполнении таблицы. Конфигурация kube-proxy, переданная в kubeadm init, применяется ко всем его экземплярам в кластере.Документация Kubernetes - https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/
👍6👏1😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Снёс коммиты? Как вернуть код после git reset -hard
Одна команда - и три коммита исчезли из истории ветки. Субару уже готов начинать заново, но Эмилия знает способ вернуться.
Показываем, как восстановить коммиты после git reset --hard: найти нужный хеш через git reflog, проверить изменения и создать спасательную ветку.
Способ работает, пока объекты коммитов сохранились. Незакоммиченные правки reflog не восстанавливает.
#Git #Программирование #ReZero #GitReflog
Одна команда - и три коммита исчезли из истории ветки. Субару уже готов начинать заново, но Эмилия знает способ вернуться.
Показываем, как восстановить коммиты после git reset --hard: найти нужный хеш через git reflog, проверить изменения и создать спасательную ветку.
Способ работает, пока объекты коммитов сохранились. Незакоммиченные правки reflog не восстанавливает.
#Git #Программирование #ReZero #GitReflog
🥴8🤣2❤1
Как строить инфраструктуру, когда часть сервисов — on-prem, а часть — в cloud
Гибридная инфраструктура имеет много преимуществ - это и распределение нагрузки между контурами под различные задачи. и оптимизация затрат, когда мощности нужны в моменте, а закупать и поддерживать свои серверы не выгодно.
Yandex Cloud активно развивает это направление, и предоставляет полный набор инструментов для создания и поддержки полноценного гибрида.
Во-первых, сети. Тут есть Cloud Interconnect для связности ресурсов в разных контурах. А VPC Private Endpoint позволяет безопасно объединять ресурсы в облаке без выхода в интернет - в том числе с облачным хранилищем, или платформой AI Studio.
Во-вторых, дополнительные мощности, которые можно быстро получить в моменте. Тут представлен сервис по аренде серверов, который получил свое логичное развитие в виде BareMetal Extend - это уже преднастроенная инфраструктура с развернутой виртуализацией и Kubernetes. То есть можно получить готовую среду.изолированную от облака, и сразу приступить к разработке.
Ну и в-третьих, обновление сервиса, который позволяет разработки Yandex Cloud перенести в закрытый контур. Речь про Stackland, в который интегрировано еще больше PaaS-сервисов. Теперь платформа позволяет в закрытом контуре создать полноценную платформу данных.
Гибридная инфраструктура имеет много преимуществ - это и распределение нагрузки между контурами под различные задачи. и оптимизация затрат, когда мощности нужны в моменте, а закупать и поддерживать свои серверы не выгодно.
Yandex Cloud активно развивает это направление, и предоставляет полный набор инструментов для создания и поддержки полноценного гибрида.
Во-первых, сети. Тут есть Cloud Interconnect для связности ресурсов в разных контурах. А VPC Private Endpoint позволяет безопасно объединять ресурсы в облаке без выхода в интернет - в том числе с облачным хранилищем, или платформой AI Studio.
Во-вторых, дополнительные мощности, которые можно быстро получить в моменте. Тут представлен сервис по аренде серверов, который получил свое логичное развитие в виде BareMetal Extend - это уже преднастроенная инфраструктура с развернутой виртуализацией и Kubernetes. То есть можно получить готовую среду.изолированную от облака, и сразу приступить к разработке.
Ну и в-третьих, обновление сервиса, который позволяет разработки Yandex Cloud перенести в закрытый контур. Речь про Stackland, в который интегрировано еще больше PaaS-сервисов. Теперь платформа позволяет в закрытом контуре создать полноценную платформу данных.
❤1
Forwarded from Machinelearning
Модель в среде Claude Science рассчитала шестичастичную амплитуду рассеяния в планарной четырёхкратно суперсимметричной теории Янга–Миллса на уровне девяти петель.
Амплитуды рассеяния показывают, насколько вероятна та или иная реакция при столкновении частиц, и по ним теорию сверяют с данными Большого адронного коллайдера.
Целиком их не посчитать, поэтому физики обрывают расчёт на определённом числе петель, т.к каждая следующая приближает к реальному ответу, но так его утяжеляет, что большинство амплитуд доведены лишь до двух петель, а некоторые до трёх.
Суперсимметричный вариант теории Янга–Миллса реальный мир не описывает, это полигон, где специалисты по амплитудам оттачивают методы, потому что считать в нём парадоксально проще.
Задачу запустили штатные физики Anthropic Лиам Фицпатрик и Сиддхарт Мишра-Шарма в ответ на вызов бывшего физика и научного журналиста Мэтта фон Хиппеля - он предлагал ИИ-компаниям решить одну из крупных открытых задач его прежней области с вычислительными ресурсами академического уровня.
Результат проверил Лэнс Диксон из Стэнфорда и SLAC, соавтор предыдущего рекорда в восемь петель.
Восьмипетлевой результат Диксон и Энди Лю получили в 2023 году окольным путём, через родственную величину, форм-фактор.
Claude пришёл к девяти петлям двумя способами - исходным гексагональным бутстрапом и через форм-фактор. Исследователи дали модели постановку задачи и дальше вмешивались редко, в духе:
«... я иду спать, продолжай, пока не скажу остановиться, и присылай отчёт каждые 4–6 часов».
Код бутстрапа Claude сам написал на Python с SymPy и неделю считал на 96 процессорах.
Диксон проверил результат, пересчитав из амплитуды девятипетлевой форм-фактор, к которому его команда шла пару лет, и назвал работу настоящим триумфом для языковой модели, выполнившей все шаги сложного алгоритма.
Параллельно к тому же результату шла группа Сун Хэ из Китайской академии наук с GPT-6 и когда китайцы связалась с фон Хиппелем через несколько дней после Anthropic, большая часть расчёта у них уже была готова.
Фон Хиппель допускает, что задача просто удобна для ИИ, но считает, что технология действительно стала лучше:
«В марте 2026 года ИИ выполнял физические проекты как студент - это были небольшие задачи, много опеки и ошибок. Здесь же настоящий расчёт на переднем крае науки, из тех, за которые обычно берутся ведущие специалисты по амплитудам», – пишет он.
Результат выложен на сайте Мишры-Шармы. Рецензирования не было, а полную функцию, по признанию авторов, посчитали один раз, независимо перепроверили только её упрощённую часть, символ.
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4👌1🌚1