Google Compute Engine: как делать запросы извне? - PullRequest
0 голосов
/ 26 июня 2018

Я совершенно новичок в Google Cloud и Google Compute Engine. У меня есть экземпляр виртуальной машины, настроенный в GCE, и я хотел бы делать запросы к нему.

Внутри этого экземпляра у меня есть базовый работающий Nginx (о котором я также, по общему признанию, очень ограничен) со следующей конфигурацией:

http {
  server {
    listen 80 default_server;
    return 200 hello;
  }
}

Если я получаю к нему доступ изнутри экземпляра через облачную консоль Google, например с помощью curl, он работает, но я не знаю, как получить к нему доступ извне.

В списке экземпляров виртуальной машины Compute Engine к экземпляру привязан внешний IP-адрес (например, 35.204.94.110), но запросы http://35.204.94.110:80 не получают ответа.

Как я могу сделать это для доступа к экземпляру извне?

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Похоже, у вас нет доступа http. Проверьте правила брандмауэра и добавьте метку default-allow-http к своему экземпляру GCE.

0 голосов
/ 26 июня 2018

Я бы удостоверился, что доступ HTTP включен на экземпляре виртуальной машины. При создании экземпляра виртуальной машины есть два флажка:

  • Разрешить HTTP-трафик
  • Разрешить HTTPS-трафик

Если флажок «Разрешить HTTP-трафик» снят, то это объясняет поведение. Зайдите в консоль и нажмите на уязвимый экземпляр виртуальной машины, а затем прокрутите вниз, пока не увидите, установлен ли флажок «Разрешить HTTP-трафик». Если нет, нажмите кнопку «Изменить», установите флажок, чтобы разрешить HTTP-трафик, а затем сохраните изменения. Теперь вы сможете загружать страницу извне.

Я сам проверил это, просто установив и включив nginx на экземпляре виртуальной машины. Если я отключу «Разрешить HTTP-трафик», страница не будет загружена. Когда он включен, я могу успешно загрузить веб-страницу nginx по умолчанию.

...