Как начать работать с Yandex Cloud Quota Manager
Примечание
Сервис находится на стадии Preview.
При проектировании инфраструктуры в облаке важно учитывать квоты и лимиты. Сервис Cloud Quota Manager позволяет управлять квотами для всех ваших сервисов Yandex Cloud с помощью различных интерфейсов.
Квоты — ограничения на количество ресурсов, которые можно использовать в вашем облаке. Это организационные ограничения, которые можно изменять по мере необходимости. Квоты помогают избежать перерасхода и избыточного использования ресурсов, позволяя грамотно планировать бюджет и контролировать потребление.
В описании работы с квотами используются два термина:
-
Значение квоты (quota limit) — текущее ограничение на ресурс для облака или организации.
-
Потребление квоты (quota usage) — объем или величина фактически используемого ресурса.
Потенциально квоты можно увеличить до лимитов.
Лимиты — технические ограничения, обусловленные особенностями архитектуры Yandex Cloud, физическими характеристиками оборудования или внешними ограничениями.
Взаимосвязь квот и лимитов показана на схеме ниже.
В настоящий момент для работы с квотами доступны интерфейсы:
- Консоль
— получение информации и запрос на изменение квот. - CLI — получение информации о квотах.
- API — получение информации о квотах.
Позднее появится возможность создавать запрос на изменение квот через CLI и API.
Получить информацию о квотах
-
В консоли управления
выберите облако, в котором хотите посмотреть квоты. -
Выберите вкладку Квоты.
На странице отобразится список сервисов, которые используются в вашем облаке.
-
Раскройте раздел сервиса и посмотрите значения в столбце Использование:
-
Два числа —
потребление квоты / значение квоты
. Например,2 / 20
или1.203 / 5120 ГБ
. -
Одно число —
лимит
, изменить его нельзя.
-
-
Чтобы оценить потребление ресурсов, вверху справа в списке выберите:
- Активно используются — ресурсы, которые потребляют более половины установленной квоты.
- Почти израсходованы — ресурсы, которые почти израсходованы.
Настройте работу с CLI
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Для просмотра квот аккаунт должен иметь роль quota-manager.viewer
.
Посмотрите квоты
-
Посмотрите список сервисов, для которых есть квоты.
yc quota-manager quota-limit list-services --resource-type=<тип_ресурса>
Где
--resource-type
— тип ресурса:resource-manager.cloud
— облако;organization-manager.organization
— организация;billing.account
— платежный аккаунт.
Пример:
yc quota-manager quota-limit list-services --resource-type=resource-manager.cloud
Будет выведен список сервисов, которые находятся на уровне облака и для которых есть квоты.
-
Посмотрите список квот для определенного сервиса, а также значение и потребление всех квот.
yc quota-manager quota-limit list \ --service=<название_сервиса> \ --resource-type=<тип_ресурса> \ --resource-id=<идентификатор_ресурса>
Где:
--service
— название сервиса, полученное на предыдущем шаге. Также название сервиса можно посмотреть в справочнике YC CLI.--resource-id
— идентификатор ресурса: идентификатор облака, организации или платежного аккаунта.--resource-type
— тип ресурса:resource-manager.cloud
,organization-manager.organization
,billing.account
.
Пример:
yc quota-manager quota-limit list --service=iam --resource-type=resource-manager.cloud --resource-id=b1gflhy********
Будут выведены идентификаторы квот, которые есть в сервисе IAM в облаке
b1gflhy********
. А также значение и потребление этих квот. -
Посмотрите значение и потребление определенной квоты.
yc quota-manager quota-limit get \ --quota-id=<идентификатор_квоты> \ --resource-id <идентификатор_ресурса> \ --resource-type <тип_ресурса>
Где:
--quota-id
— идентификатор квоты, полученный на предыдущем шаге.--resource-id
— идентификатор ресурса (облака, организации или платежного аккаунта).--resource-type
— тип ресурса:resource-manager.cloud
,organization-manager.organization
,billing.account
.
Пример:
yc quota-manager quota-limit get --quota-id=iam.apiKeys.count --resource-id=b1gflhy******** --resource-type=resource-manager.cloud
Будут выведены значение и потребление квоты для количества API-ключей в облаке
b1gflhy********
:quota_id: iam.apiKeys.count limit: 1000 usage: 27
Где:
limit
— значение квоты;usage
— потребление квоты.
Настройте работу с API
-
Чтобы проверить работу с квотами через API, установите утилиты:
-
Создайте сервисный аккаунт с ролью
quota-manager.viewer
. -
Получите IAM-токен для созданного сервисного аккаунта.
Посмотрите квоты
-
Посмотрите список сервисов, для которых есть квоты.
Для этого воспользуйтесь методом REST API listServices для ресурса QuotaLimit или вызовом gRPC API QuotaLimitService/ListServices.
Чтобы проверить работу метода REST API, выполните запрос:
curl -X GET \ --header "Authorization: Bearer <IAM-токен>" \ "https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits/services?resourceType=<resourceType>"
Где:
<resourceType>
— тип ресурса:resource-manager.cloud
,organization-manager.organization
,billing.account
.<IAM-токен>
— IAM-токен для сервисного аккаунта или переменная окружения, в которой находится IAM-токен.
Пример запроса:
curl -X GET \ --header "Authorization: Bearer $IAM_TOKEN" \ 'https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits/services?resourceType=resource-manager.cloud'
-
Посмотрите список квот для определенного сервиса, а также значение и потребление всех квот.
Для этого воспользуйтесь методом REST API list для ресурса QuotaLimit или вызовом gRPC API QuotaLimitService/List.
Чтобы проверить работу метода REST API, выполните запрос:
curl -X GET \ --header "Authorization: Bearer <IAM-токен>" \ "https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits?service=<serviceName>&resource.id=<resourceId>&resource.type=<resourceType>"
Где:
<resourceId>
— идентификатор ресурса: облака, организации или платежного аккаунта.<resourceType>
— тип ресурса:resource-manager.cloud
,organization-manager.organization
,billing.account
.<serviceName>
— имя сервиса.<IAM-токен>
— IAM-токен для сервисного аккаунта или переменная окружения, в которой находится IAM-токен.
Пример запроса:
curl -X GET \ --header "Authorization: Bearer $IAM_TOKEN" \ 'https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits?service=iam&resource.id=b1gflhy********&resource.type=resource-manager.cloud'
-
Посмотрите значение и потребление определенной квоты.
Для этого воспользуйтесь методом REST API get для ресурса QuotaLimit или вызовом gRPC API QuotaLimitService/Get.
Чтобы проверить работу метода REST API, выполните запрос:
curl -X GET \ --header "Authorization: Bearer <IAM-токен>" \ "https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits/<quotaId>?resource.id=<resourceId>&resource.type=<resourceType>"
Где:
<quotaId>
— идентификатор квоты, полученный на предыдущем шаге.<resourceId>
— идентификатор ресурса (облака, организации или платежного аккаунта).<resourceType>
— тип ресурса:resource-manager.cloud
,organization-manager.organization
,billing.account
.<IAM-токен>
— IAM-токен для сервисного аккаунта или переменная окружения, в которой находится IAM-токен.
Пример запроса:
curl -X GET \ --header "Authorization: Bearer $IAM_TOKEN" \ 'https://quota-manager.api.cloud.yandex.net/quota-manager/v1/quotaLimits/iam.accessKeys.count?resource.id=b1gflhy********&resource.type=resource-manager.cloud'
Запросить увеличение квот
Сейчас запросить изменение квот можно через консоль управления
- Убедитесь, что ваша учетная запись
имеет рольquota-manager.requestOperator
или выше (editor
илиadmin
). - Запросите изменение квоты одним из способов:
- На странице квот
выберите ресурсы и нажмите Повысить. - Обратитесь в техническую поддержку
и опишите, какие потребляемые квоты нужно увеличить и на сколько.
- На странице квот