Как читать из хранилища с виртуальной машины GCE без внешнего IP? - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь прочитать файл в хранилище из виртуальной машины GCE с помощью команды gsutil cp.Виртуальная машина GCE использует настраиваемую учетную запись хранения, для которой требуются разрешения IAM и политики доступа к файлу в области хранения.Мое наблюдение таково:

  1. Когда с виртуальной машиной связан эфемерный внешний IP-адрес, команда gsutil cp работает нормально и файл успешно копируется.
  2. Однако, если естьвнешний IP-адрес не назначен, команда gsutil cp не работает.

В случае 2 команда gsutil cp выдает следующий вывод:

gsutil cp gs://<mybucket-name>/<myfile> .
INFO 0304 13:02:18.377339 retry_util.py] Retrying request, attempt #1...
INFO 0304 13:03:20.684459 retry_util.py] Retrying request, attempt #2...
INFO 0304 13:04:25.247341 retry_util.py] Retrying request, attempt #3...
INFO 0304 13:05:34.869920 retry_util.py] Retrying request, attempt #4...
INFO 0304 13:06:52.144510 retry_util.py] Retrying request, attempt #5...

Может кто-нибудь подсказать, чтосделать из этого и ожидается ли это поведение?Как правильно читать содержимое в области хранения из виртуальной машины GCE, для которой не назначен внешний IP-адрес?

1 Ответ

0 голосов
/ 04 марта 2019

Чего не хватает для вашего экземпляра виртуальной машины без внешнего IP-адреса, чтобы он мог получить доступ к облачному хранилищу, так это для включения Личный доступ Google для подсети вашего экземпляра виртуальной машины.

Какуказано в документации для Параметры частного доступа для служб :

Экземпляры виртуальных машин, которые имеют только внутренние IP-адреса (без внешних IP-адресов), могут использовать Частный доступ к Google.Они могут достигать внешних IP-адресов API и сервисов Google.

Вы включаете Частный доступ к Google в подсети по подсетям;это настройка для подсетей в сети VPC.Чтобы включить подсеть для частного доступа Google и просмотреть требования, см. Настройка частного доступа Google

Вам просто необходимо:

  1. Перейти кКонсоль -> Сеть VPC
  2. Выберите подсеть вашего экземпляра виртуальной машины (например, по умолчанию -> us-central1)
  3. Изменить и выберите Частный доступ к Google -> Вкл.Затем сохраните.

Также убедитесь, что ваша виртуальная машина имеет доступ к API Cloud Storage.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...