Определить идентификатор проекта Google Cloud из контейнера в кластере Kubernetes, размещенном в Google

Определите идентификатор проекта Google Cloud из контейнера в кластере Kubernetes, размещенном в Google.

При подключении к BigTable; Мне нужно предоставить идентификатор проекта Google. Есть ли способ обнаружить это автоматически из K8s?




Ответы (3)


В Python вы можете найти идентификатор проекта следующим образом:

import google.auth
_, PROJECT_ID = google.auth.default()

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

person b4hand    schedule 02.03.2019

Вы можете использовать службу метаданных. Пример:

curl -H "Metadata-Flavor: Google" -w '\n' http://metadata.google.internal/computeMetadata/v1/project/numeric-project-id

Это будет работать с любой виртуальной машиной, работающей на Google Compute Engine или Container Engine.

См. https://cloud.google.com/compute/docs/storing-retrieving-metadata:

Google Compute Engine определяет набор записей метаданных по умолчанию, которые предоставляют информацию о вашем экземпляре или проекте. Метаданные по умолчанию всегда определяются и устанавливаются сервером.

...

numeric-project-id Числовой идентификатор проекта экземпляра, который не совпадает с именем проекта, отображаемым в консоли Google Cloud Platform. Это значение отличается от значения записи метаданных идентификатора проекта.

project-id ID проекта.

person Janos Lenart    schedule 04.09.2017