РАЗРАБОТКА

Kubernetes v1.36 добавляет редактируемые ресурсы подов для приостановленных заданий

Kubernetes v1.36 улучшает управление заданиями — теперь можно редактировать ресурсы даже при их приостановке.

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

Kubernetes v1.36 внедряет возможность редактирования ресурсов подов для приостановленных заданий, улучшая управление нагрузками. Эта функция, ранее находившаяся в альфа-версии в v1.35, теперь доступна в бета-версии, позволяя администраторам кластеров изменять запросы и лимиты ресурсов, таких как CPU и GPU, когда задания приостановлены.

Как это работает

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

Ранее, если управляющий очередь, например Kueue, считал, что нужно изменить ресурсы приостановленного задания, единственным вариантом было удаление задания и его пересоздание, что влекло за собой потерю метаданных и истории выполнения. Теперь, благодаря новой функции, можно быстро обновить ресурсы без необходимости создания задания заново.

Кейс использования

Рассмотрим ситуацию, когда задание по обучению модели машинного обучения запрашивало 4 GPU, но управляющий кластером определил, что доступно только 2. Благодаря обновлению, теперь можно изменить ресурсы следующим образом, что позволяет заданию успешно продолжить выполнение:

apiVersion: batch/v1
kind: Job
metadata:
  name: training-job-example-abcd123
  labels:
    app.kubernetes.io/name: trainer
spec:
  suspend: true
  template:
    metadata:
      annotations:
        kubernetes.io/description: "ML training, ID abcd123"
    spec:
      containers:
      - name: trainer
        image: example-registry.example.com/training:2026-04-23T150405.678
        resources:
          requests:
            cpu: "4"
            memory: "16Gi"
            example-hardware-vendor.com/gpu: "2"
          limits:
            cpu: "4"
            memory: "16Gi"
            example-hardware-vendor.com/gpu: "2"
      restartPolicy: Never

Когда ресурсы обновляются, управляющий снова активирует задание, устанавливая spec.suspend в false, и новые поды создаются с изменёнными ресурсными спецификациями.

Значение для разработчиков

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

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

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