#google-cloud-platform #google-compute-engine #gcloud
# #google-облачная платформа #google-compute-engine #gcloud
Вопрос:
В разделе выставления счетов для одного из моих проектов указаны затраты на 12 часов работы Compute Engine — E2 Instance Core каждый день. Но в разделе Compute Engine нет экземпляров. На самом деле проект содержит только специальные ключи API Карт Google, которые нельзя передать.
Я также пытался отключить API Compute Engine. К сожалению, это приводит к следующей ошибке: вызов / опрос перехвата привел к сбою операции для обслуживания ‘compute.googleapis.com ‘: Не удалось отключить службу, так как она все еще использует ресурсы] с отказавшими службами [compute.googleapis.com ]
Есть идеи?
Ответ №1:
На основании сообщения об ошибке: ‘Не удалось отключить службу, так как она все еще использует ресурсы] с отказавшими службами [compute.googleapis.com ]’
Это означает, что в Compute Engine API есть ресурсы, поэтому вы можете либо запустить команду gcloud, чтобы перечислить текущие экземпляры, либо запустить команду gcloud для просмотра инвентаризации активов. Я предлагаю вам открыть свой проект GCP в окне Chrome incognito и использовать cloud shell.
Список экземпляров
gcloud compute instances list
Перечислите инвентаризацию активов
gcloud asset search-all-resources
ПРИМЕЧАНИЕ: API инвентаризации активов по умолчанию не включен, поэтому после выполнения команды вы получите это сообщение:
user@cloudshell:~ (project-id)$ gcloud asset search-all-resources
API [cloudasset.googleapis.com] not enabled on project [project-id].
Would you like to enable and retry (this will take a few minutes)?
(y/N)?
Пожалуйста, введите y, чтобы включить API и увидеть вывод команды.
Сказав это, когда вы увидите результаты на экране, вы сможете определить ресурсы в API Compute Engine и все его компоненты, например
---
additionalAttributes:
networkInterfaces:
- network: https://www.googleapis.com/compute/v1/projects/project-id/global/networks/default
networkIP: 1.18.0.5
assetType: compute.googleapis.com/Instance
displayName: linux-instance
location: us-central1-a
name: //compute.googleapis.com/projects/project-id/zones/us-central1-a/instances/linux-instance
project: projects/12345678910
---
additionalAttributes: {}
assetType: compute.googleapis.com/Disk
displayName: linux-instance
location: us-central1-a
name: //compute.googleapis.com/projects/project-id/zones/us-central1-a/disks/linux-instance
project: projects/12345678910
---
Как вы можете видеть, 2 приведенные выше строки описывают экземпляр «linux-instance» и его компоненты (диск и IP-адрес), все они находятся под API -> compute.googleapis.com
Если вам нужна дополнительная помощь, пожалуйста, отправьте вывод команды в текстовый файл и удалите конфиденциальную информацию, такую как: идентификатор проекта, внешние IP-адреса, внутренние IP-адреса, и поделитесь выводом со мной, чтобы я мог взглянуть на него.
Кроме того, вы можете очистить вывод команды так же, как это сделал я, заменив имя экземпляра, идентификатор проекта, номер проекта и IP-адрес поддельными данными.
Пожалуйста, имейте в виду, что, поскольку это проблема выставления счетов, команда GCP billing открыта для вас.
Ответ №2:
Любопытно.
Существуют некоторые сервисы, требующие ресурсов вычислительного движка, например, движка Kubernetes, но я подумал, что при использовании ресурсы всегда доступны.
Одним из способов выявить пользователя этого ресурса может быть перечисление служб проекта и поиск результата для службы, которая может использовать виртуальные машины:
gcloud services list --enabled --project=[[YOUR-PROJECT]]