Подготовка и права

Подготовьте отдельный сервисный аккаунт, выдайте права на правильных уровнях и заранее решите, как Oopps.ai будет получать доступ к Kubernetes API.

Перед началом

Сохраните Cloud ID и Folder ID

В Yandex Cloud Console откройте нужное облако и каталог. Скопируйте идентификаторы, а не отображаемые названия. Folder ID обязателен; Cloud ID помогает billing-диагностике и охвату ресурсов.

yc config get cloud-id
yc config get folder-id

Создайте отдельный сервисный аккаунт

Откройте Identity and Access Management → Сервисные аккаунты → Создать. Используйте понятное имя, например oopps-reader. Не используйте личный OAuth-токен сотрудника как постоянную production-интеграцию.

yc iam service-account create \
  --name oopps-reader \
  --description "Oopps.ai cloud inventory and audit"

Выдайте права чтения в каталоге

Для inventory и обнаружения кластеров назначьте сервисному аккаунту роли на уровне каталога:

  • viewer — базовое чтение ресурсов каталога;
  • compute.viewer — чтение Compute Cloud inventory;
  • k8s.cluster-api.viewer — чтение Managed Kubernetes через cloud API.
yc resource-manager folder add-access-binding \
  --id <FOLDER_ID> --role viewer --service-account-id <SA_ID>
yc resource-manager folder add-access-binding \
  --id <FOLDER_ID> --role compute.viewer --service-account-id <SA_ID>
yc resource-manager folder add-access-binding \
  --id <FOLDER_ID> --role k8s.cluster-api.viewer --service-account-id <SA_ID>

Выдайте billing-доступ отдельно

Откройте Cloud Center → Billing → нужный платёжный аккаунт → Управление доступом. Назначьте тому же сервисному аккаунту billing.accounts.viewer именно на платёжном аккаунте и сохраните его Billing Account ID.

Другой уровень ресурса

Роль на каталоге не даёт доступ к Billing API. И наоборот, billing.accounts.viewer не даёт доступ к VM или Kubernetes. Эти назначения проверяются независимо.

Выберите доступ к Kubernetes API

Права cloud API позволяют обнаружить кластер, но не гарантируют чтение nodes, pods и других Kubernetes-ресурсов.

МодельДоступКогда использовать
Прямой SaaS-аудитk8s.cluster-api.cluster-admin на каталоге может потребоваться для получения полного доступа через IAM-токен. Backend сообщает об этом при Forbidden.Допустим внешний доступ к API master и роль согласована службой безопасности.
In-cluster агентHelm chart создаёт собственный Kubernetes ServiceAccount с уровнем monitor или apply.Нельзя передавать внешний kubeconfig или нужен исходящий-only трафик.

Для чтения текущей загрузки установите metrics-server и проверьте kubectl top pods -A. Исторические ряды Prometheus подключаются отдельным backend-потоком.

Проверка до создания коннектора

# Проверить, что выбран правильный каталог
yc resource-manager folder get <FOLDER_ID>

# Проверить видимость кластеров
yc managed-kubernetes cluster list --folder-id <FOLDER_ID>

# Внутри кластера проверить metrics-server
kubectl top nodes
kubectl top pods -A

Следующий шаг