РАЗРАБОТКА

Kubernetes v1.37 внедряет RangeStream для снижения потребления памяти

В новой версии Kubernetes v1.37 появился RangeStream, который снижает потребление памяти при чтении больших коллекций из etcd.

✍️ Редакция iTech News | 24.08.2025 | ⏱ 2 мин | Источник: Kubernetes Blog
🐛

Kubernetes в версии 1.37 представил новую функцию RangeStream, которая поможет значительно сократить потребление памяти API-сервера при чтении больших коллекций из etcd. Это важно для разработчиков, работающих с масштабируемыми решениями, где оптимизация ресурсов напрямую влияет на производительность системы.

Что такое RangeStream и как он работает

RangeStream — это новая функция, которая была добавлена в beta-версию Kubernetes 1.37 и включена в etcd версии 3.7. При чтении больших данных, API-сервер использует оперативную память для хранения полного состояния ресурсов. Это дорогостоящий процесс, особенно при работе с объектами, такими как Pods, которые могут занимать значительное количество памяти.

Данная функция разбивает данные на пакеты и производит потоковую передачу, что позволяет адаптировать размер чанков к возвращаемым значениям. Это означает, что теперь при работе с большими коллекциями память освобождается по мере обработки данных, а не удерживается до полной их загрузки. В результате затраты на память становятся предсказуемыми, что минимизирует риск возникновения ошибок, связанных с нехваткой памяти (OOM).

Требования для использования RangeStream

Чтобы воспользоваться новым функционалом, необходимо обновить Kubernetes до версии 1.37 и etcd до версии 3.7 или выше. Для активации функции RangeStream на kube-apiserver потребуется установить соответствующий флаг. Если система использует более старую версию etcd, будет задействован обычный пагинированный метод чтения, что может снизить эффективность работы с данными.

Практическое значение новшества для разработчиков

Для команд разработчиков это обновление является шагом вперёд в улучшении производительности при работе с контейнеризованными приложениями. Оптимизация работы с памятью и ускорение обработки запросов могут значительно улучшить пользовательский опыт, а также снизить затраты на инфраструктуру в облаках. Разработчикам стоит обратить внимание на это обновление, чтобы планировать свои архитектурные решения с учётом новых возможностей Kubernetes.

Следующим шагом после релиза будет сбор обратной связи пользователей, ставящих RangeStream на практику в своих конфигурациях.

Поделиться: Telegram X LinkedIn