如何为GCE实例模板启用http流量?

时间:2015-07-20 06:02:48

标签: google-compute-engine

在Google Compute Engine中创建实例模板时,如何为从模板创建的实例启用http流量?

我当时认为提供一个http标签会起作用,但似乎没有这样做。

5 个答案:

答案 0 :(得分:8)

项目中的默认网络附带默认防火墙规则" default-allow-http"和" default-allow-https"允许端口80和443上的流量。这些规则将目标标记设置为" http-server"。设置实例模板时,您可以选中"允许HTTP流量"和"允许HTTPS流量"从您的开发人员控制台,通过这样做,默认防火墙规则将应用于通过此实例模板创建的新实例。

答案 1 :(得分:2)

以下内容应该在理论上有效,但在实践中,它并没有起作用。

一种可能的解决方案是为该项目中的所有实例启用http流量。为此,请在GCE命令行工具中运行:

layout

我不清楚为特定实例模板设置规则是可能的,但希望有人会纠正我。

答案 2 :(得分:1)

  

一个可能的解决方案是为该项目中的所有实例>启用http流量。为此,请在GCE命令行工具中运行:

     

gcloud compute firewall-rules创建FIREWALL_RULE - 允许tcp:80

我尝试你的命令,但它不起作用,因为命令需要实例的名称:

google130505_student@qwiklabs-gcp-286ef104ac93631b:~$ gcloud compute firewall-rules create FIREWALL_RULE --allow tcp:80
Creating firewall...failed.
ERROR: (gcloud.compute.firewall-rules.create) Could not fetch resource:
 - Invalid value for field 'resource.name': 'FIREWALL_RULE'. Must be a match of regex '(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)'
google130505_student@qwiklabs-gcp-286ef104ac93631b:~$ gcloud compute firewall-rules create gclab2 --allow tcp:80
Creating firewall.../Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-286ef104ac93631b/global/firewalls/gclab2].
Creating firewall...done.
NAME    NETWORK  DIRECTION  PRIORITY  ALLOW   DENY
gclab2  default  INGRESS    1000      tcp:80

所以正确的命令是:

gcloud compute firewall-rules create NAME_OF_YOUR_INSTANCE --allow tcp:80

答案 3 :(得分:1)

gcloud compute firewall-rules create FIREWALL_RULE --allow tcp:80,tcp:443 

此命令应该执行

答案 4 :(得分:0)

如果查询允许该虚拟机用作http或https服务器,那么我就成功使用了

cloud compute instances add-tags myvm1 --tags=http-server