[Документация Yandex Cloud](../../index.md) > [Yandex Cloud Stackland](../index.md) > Концепции > Ресурсная модель

# Ресурсная модель

В Stackland используется иерархическая модель организации ресурсов. Модель позволяет группировать ресурсы, управлять доступом и квотировать потребление на разных уровнях.

## Иерархия ресурсов {#hierarchy}

### Кластер {#cluster}

Кластер — корневая сущность Stackland. На уровне кластера управляются:

* Узлы кластера (`StacklandHostConfig`).
* Конфигурация платформы (`PlatformConfig`).
* Компоненты (`ComponentInstallation`).
* Кластерные роли и привязки ролей (`ClusterRole`, `ClusterRoleBinding`).
* Федерации с внешними провайдерами идентификации.

Подробнее об изменении состава узлов кластера см. в разделе [Масштабирование кластера](cluster-scaling.md).

### Проект {#project}

Проект — логическая группировка пространств имен для команды или приложения. На уровне проекта управляются:

* Пространства имен проекта.
* Роли и привязки ролей проекта (`ProjectRole`, `ProjectRoleBinding`).
* Квоты на ресурсы проекта.
* IAM-привязки доступа (`ProjectAccessBinding`).

Подробнее см. в разделе [Проекты](projects.md).

### Пространство имен {#namespace}

Пространство имен — стандартная единица изоляции ресурсов в Kubernetes. В пространстве имен размещаются:

* Рабочие нагрузки (Pod, Deployment, StatefulSet).
* Сервисы (Service, Ingress).
* Ресурсы платформенных сервисов (кластеры PostgreSQL, Apache Kafka®, бакеты Object Storage).
* Роли и привязки ролей (`Role`, `RoleBinding`).
* Привязки доступа (`AccessBinding`).

## Сервисы с собственной ресурсной моделью {#custom-resource-model}

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

## Управление доступом {#access-management}

Доступ можно выдавать на любом уровне иерархии:

* На уровне кластера — через `ClusterRoleBinding` или `ClusterAccessBinding`. Доступ распространяется на все ресурсы кластера.
* На уровне проекта — через `ProjectRoleBinding` или `ProjectAccessBinding`. Доступ распространяется на все пространства имен проекта.
* На уровне пространства имен — через `RoleBinding` или `AccessBinding`. Доступ ограничен конкретным пространством имен.

Подробнее см. в разделе [Управление доступом](../access-management.md).

## Квотирование {#quotas}

Квоты можно устанавливать на двух уровнях:

* На уровне проекта — ограничивает суммарное потребление ресурсов всеми пространствами имен проекта. Задается администратором кластера.
* На уровне пространства имен — стандартный механизм Kubernetes `ResourceQuota`. Задается администратором проекта.

Подробнее см. в разделе [Установить квоты проекта](../operations/projects/namespace-quotas.md).