Как я могу получить доступ к учетной записи службы из Python / API узла в функции GCP / экземпляре виртуальной машины? - PullRequest
0 голосов
/ 11 июля 2019

Как я могу пройти аутентификацию с учетной записью службы в функции VM / cloud при использовании клиентских библиотек API?

Например, для nodejs:

const k8s = require('@kubernetes/client-node');
const yaml = require('js-yaml');
const fs   = require('fs');

const kc = new k8s.KubeConfig();
kc.loadFromDefault();

const k8sApi = kc.makeApiClient(k8s.BatchV1Api);

Вместо kc.loadFromDefault();- что я должен использовать?Где на самом деле хранится учетная запись службы?


Согласно https://cloud.google.com/compute/docs/access/service-accounts:

Когда вы создаете экземпляр, отправляя запрос в API напрямую, без использования команды gcloud-инструмент линии или консоль Google Cloud Platform, учетная запись службы по умолчанию не включена с экземпляром.Однако вы по-прежнему можете включить учетную запись службы по умолчанию, явно указав ее как часть полезной нагрузки запроса.

Но как мне явно указать ее?Могу ли я указать его для использования учетной записи службы, связанной с контекстом виртуальной машины?Или я могу ТОЛЬКО указать это явно, используя файл json общей учетной записи службы?


chris@instance-1:~$ gcloud auth list
                  Credentialed Accounts
ACTIVE  ACCOUNT
*       577379697673-compute@developer.gserviceaccount.com

To set the active account, run:
    $ gcloud config set account `ACCOUNT`



To take a quick anonymous survey, run:
  $ gcloud alpha survey

Я имею в виду, как это происходит с gcloud?Как я могу достичь вышеуказанного с клиентскими API?

...