Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Router
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Managed Service for YDB
    • SpeechKit
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • Container Registry
    • Managed Service for Prometheus®
    • Message Queue
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Cloud Apps
    • Yandex AI Studio
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Yandex Cloud Video
    • Stackland
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • DataSphere
    • Vision OCR
    • Translate
    • Cloud Registry
    • SmartCaptcha
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Managed Service for GitLab
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • IoT Core
    • Serverless Containers
    • Cloud Notification Service
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
  • Кейсы
  • Документация
  • Блог
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Cloud Stackland
  • Что нового
  • Установка
    • Все руководства
    • Установить Stackland на Yandex BareMetal
    • Установка Stackland на Yandex BareMetal через PXE
    • Установка Stackland на виртуальные машины в Yandex Cloud
    • Настройка внешнего доступа к поду в кластере
    • Проверка подписи собственных образов
    • Все инструкции
    • Проекты
    • Ресурсная модель
    • Масштабирование кластера
    • Лицензирование
  • Управление доступом
  • Правила тарификации
  • Диагностика и устранение неполадок
    • Все рецепты
      • Проектирование модели доступов
      • Подготовка проекта и пространств имен команды
      • Настройка прав в IAM
      • Настройка квот

В этой статье:

  • Как работают квоты в Stackland
  • Поддерживаемые типы квот
  • Создание квоты на уровне проекта
  • Проверка использования квот
  • Шаг 1. Проверьте текущее использование квот
  • Шаг 2. Создайте под с запросом ресурсов
  • Шаг 3. Проверьте изменение использования квот
  • Шаг 4. Создайте второй под с превышением квот
  • Что делать при достижении лимита
  • Итоги
  1. Сборник рецептов администратора Stackland
  2. Запуск команды разработки в инсталляцию
  3. Настройка квот

Настройка квот

Статья создана
Yandex Cloud
Открыть в Markdown
  • Как работают квоты в Stackland
    • Поддерживаемые типы квот
  • Создание квоты на уровне проекта
  • Проверка использования квот
    • Шаг 1. Проверьте текущее использование квот
    • Шаг 2. Создайте под с запросом ресурсов
    • Шаг 3. Проверьте изменение использования квот
    • Шаг 4. Создайте второй под с превышением квот
  • Что делать при достижении лимита
  • Итоги

Этот рецепт покажет, как контролировать использование CPU, памяти и других ресурсов на уровне проекта.

Вы узнаете:

  • как работают квоты в Stackland;

  • как настроить квоту на уровне проекта через ресурс Project;

  • как проверить использование квот;

  • что делать при превышении квот.

Как работают квоты в StacklandКак работают квоты в Stackland

В Stackland квоты настраиваются на уровне проекта через ресурс Project. Квота ограничивает суммарное потребление ресурсов всеми пространствами имен, входящими в проект.

Поддерживаемые типы квотПоддерживаемые типы квот

Ресурс

Описание

requests.cpu

Суммарный запрос CPU для всех подов во всех пространствах имен проекта

requests.memory

Суммарный запрос памяти для всех подов

limits.cpu

Суммарный лимит CPU для всех подов

limits.memory

Суммарный лимит памяти для всех подов

requests.storage

Суммарный объем хранилища для всех PVC

count/pods

Максимальное количество подов в проекте

count/persistentvolumeclaims

Максимальное количество PVC в проекте

secrets

Максимальное количество секретов в проекте

requests.nvidia.com/gpu

Суммарное количество GPU для всех подов

storage.stackland.yandex.cloud/buckets-count

Максимальное количество бакетов Object Storage, которое можно создать

storage.stackland.yandex.cloud/volume-size

Максимальный суммарный объем данных, который можно хранить во всех бакетах Object Storage

Создание квоты на уровне проектаСоздание квоты на уровне проекта

Примечание

Квоты для проекта можно задавать как через CLI, так и через консоль управления.

Консоль управления
CLI
  1. В консоли управления перейдите на страницу Проекты.

  2. Нажмите на ··· (три точки) напротив проекта team-alpha. Если вы не создавали этот проект, обратитесь к рецепту Подготовка проекта и пространств имен команды.

    Отображение проекта в консоли управления

  3. Выберите Редактировать.

  4. В блоке Квоты укажите тип ресурса и значения квоты. Для примера используйте значения:

    • limits.cpu — 4

    • limits.memory — 4 Gi

    • pods — 1

    • requests.cpu — 2

    • requests.memory — 2 Gi

    • secrets — 1

  5. Нажмите Сохранить.

Страница редактирования проекта в консоли управления

Шаг 1. Добавьте квоты в проект

  1. Отредактируйте ресурс Project:

    kubectl edit project team-alpha
    
  2. Добавьте секцию spec.quotas, если она отсутствует:

    apiVersion: stackland.yandex.cloud/v1alpha1
    kind: Project
    metadata:
      name: team-alpha
    spec:
      description: "Проект команды Alpha"
      quotas:
        requests.cpu: "2"
        limits.cpu: "4"
        requests.memory: "2Gi"
        limits.memory: "4Gi"
        secrets: "1"
        pods: "1"
    

Шаг 2. Проверьте применение квот

Для проверки квот воспользуйтесь командой describe:

kubectl describe project team-alpha

В выводе вы увидите заданные ранее квоты:

...
Spec:
  Description:   Проект команды Alpha
  Display Name:  Team Alpha
  Quotas:
    limits.cpu:       4
    limits.memory:    4Gi
    Pods:             1
    requests.cpu:     2
    requests.memory:  2Gi
    Secrets:          1
...

Проверка использования квотПроверка использования квот

Создайте объекты в кластере, чтобы увидеть, как меняется использование ресурсов в квотах.

Шаг 1. Проверьте текущее использование квотШаг 1. Проверьте текущее использование квот

Перед созданием нагрузки посмотрите текущее состояние:

kubectl describe project team-alpha | grep -A 20 Usage

Если ранее вы не создавали ресурсов в пространстве имен, то увидите нулевое использование всех ресурсов.

Шаг 2. Создайте под с запросом ресурсовШаг 2. Создайте под с запросом ресурсов

Создайте файл test-pod.yaml:

apiVersion: v1
kind: Pod
metadata:
  name: test-pod-1
  namespace: team-alpha-dev
spec:
  containers:
  - name: nginx
    image: nginx:latest
    resources:
      requests:
        cpu: "500m"
        memory: "256Mi"
      limits:
        cpu: "1000m"
        memory: "512Mi"

Примените манифест:

kubectl apply -f test-pod.yaml

Шаг 3. Проверьте изменение использования квотШаг 3. Проверьте изменение использования квот

Использование квот можно посмотреть с помощью describe:

kubectl describe project team-alpha | grep -A 20 Usage

Теперь в status.usage должны появиться значения:

  Usage:
    count/persistentvolumeclaims:  0
    count/pods:                    1
    limits.cpu:                    1
    limits.ephemeral-storage:      0
    limits.memory:                 512Mi
    requests.cpu:                  500m
    requests.ephemeral-storage:    0
    requests.memory:               256Mi
    requests.storage:              0
    Secrets:                       0

Также расход квот можно посмотреть в консоли управления — в разделе Основное в соответствующем проекте.

Отображение используемых квот на странице проекта в консоли управления

Шаг 4. Создайте второй под с превышением квотШаг 4. Создайте второй под с превышением квот

Создайте второй под с превышением квот по CPU, но уже в другом пространстве имен — team-alpha-dev.

Создайте файл test-pod-2.yaml:

apiVersion: v1
kind: Pod
metadata:
  name: test-pod-2
  namespace: team-alpha-dev
spec:
  containers:
  - name: nginx
    image: nginx:latest
    resources:
      requests:
        cpu: "2000m"
        memory: "256Mi"
      limits:
        cpu: "3000m"
        memory: "512Mi"
kubectl apply -f test-pod-2.yaml

При создании вы получите ошибку, которая сообщит, лимит какой квоты исчерпан и насколько:

Error from server (Forbidden): error when creating "test-pod-2.yaml": admission webhook "validate-v1-pod-quota.stackland.yandex.cloud" denied the request: quota exceeded: requests.cpu (requested: 2, available: 1500m, limit: 2)

Текст ошибки указывает, что вы достигли предела по квоте requests.cpu и что запрашивается 2 CPU (или 2000m), а доступно только 1500m при максимальной квоте в 2 CPU (2000m). Доступно 1500m, поскольку на создание test-pod-1 вы потратили 500m из квоты (2000m).

Что делать при достижении лимитаЧто делать при достижении лимита

Когда лимит квоты достигнут, новые ресурсы создать нельзя. Дальше расскажем о способах решения этой проблемы.

Примечание

Речь пойдет о квотах на CPU и память.

  • Оптимизация. Уменьшите requests и limits в манифестах приложений, если это возможно.

  • Удаление ресурсов. Удалите ресурсы, которые не используются.

  • HPA. Включите HPA (Horizontal Pod Autoscaler) для автоматического масштабирования. Сервисы, которые не испытывают значительной нагрузки, будут развернуты в меньшем количестве экземпляров, что освободит ресурсы для других рабочих нагрузок.

  • Увеличение квот, если это возможно.

  • Перераспределение ресурсов. По возможности перенесите рабочие нагрузки в другие проекты.

ИтогиИтоги

Вы настроили квоты для проекта team-alpha. Что важно запомнить:

  • Квота на уровне проекта ограничивает суммарное потребление ресурсов всеми пространствами имен проекта.

  • Проверить использование квот можно через describe или консоль управления.

  • При попытке создать ресурс с превышением квоты вы получите ошибку quota exceeded.

  • В случае превышения квот попробуйте уменьшить requests и limits в манифестах приложений, удалить неиспользуемые ресурсы, включить HPA, перераспределить ресурсы или увеличить квоты.

Была ли статья полезна?

Предыдущая
Настройка прав в IAM
Следующая
Внедрение политик безопасности и аудит конфигураций
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»