如何创建具有多个端口的转发规则 google 云(计算)

How to create forwarding rule with multiple ports google cloud (compute)

我正在尝试在 google 云(计算)上设置基于网络的负载平衡服务。创建它的最后一步是添加转发规则。

我的服务需要转发多个端口,看documentation好像是可以的(除非我记错了)

--ports=[PORT | START_PORT-END_PORT],[[PORT | START_PORT-END_PORT],…]

我试过以下方法:

gcloud compute forwarding-rules create example-forwarding-rule \
    --region europe-west1 \
    --ports 80 443 3000-4000 6001 \
    --address example-address \
    --target-pool example-target-pool

我收到以下错误:

ERROR: (gcloud.compute.forwarding-rules.create) Invalid value for [--ports]: Must specify consecutive ports at this time.

我也尝试过添加空格:

gcloud compute forwarding-rules create example-forwarding-rule \
    --region europe-west1 \
    --ports 80 443 3000-4000 6001 \
    --address example-address \
    --target-pool example-target-pool

或者一起删除逗号:

gcloud compute forwarding-rules create example-forwarding-rule \
    --region europe-west1 \
    --ports 80 443 3000-4000 6001 \
    --address example-address \
    --target-pool example-target-pool

我得到以下两个错误:

ERROR: (gcloud.compute.forwarding-rules.create) unrecognized arguments

是否可以指定多个端口,如果可以,如何指定?

不幸的是,--ports 标志仅支持指定重叠或相邻范围,因此 gCloud SDK 可以将范围合并为一个连续范围。

参见 https://cloud.google.com/compute/docs/load-balancing/network/forwarding-rules 中的 ports 部分,其中有更清晰的解释。

[Optional] A single port or single contiguous port range, ranging from low to high, for which this forwarding rule matches.