使用 python api 列出特定 gke 集群的防火墙?

List firewall for specific gke cluster using python api?

我试图在 Project 下列出特定 GKE 集群的防火墙。 (比如说,如果我的集群名称是项目“myproject”下的“democluster_1”)。如何列出特定于“democluster_1”的防火墙?

我用这个 python API 来列出项目“myproject”下的所有防火墙。我需要知道如何为特定集群列出它..? https://cloud.google.com/compute/docs/reference/rest/v1/firewalls/list

我在 python-API 中探索了 filter 参数,但我不清楚如何使用此参数。您能否举例说明如何为特定 GKE 集群过滤防火墙。或者有没有其他方法可以列出来..?

提前致谢。

我不熟悉 Python,但如果您想按照 GKE documentation.

使用 gcloud CLI 列出它们

$ gcloud compute firewall-rules list

在我的项目中,我有大约 46 条防火墙规则:

$ gcloud compute firewall-rules list | wc -l

To show all fields of the firewall, please show in JSON format: --format=json
To show all fields in table format, please see the examples in --help.

46

如果你想获得特定于你的集群的防火墙规则,你需要使用类似的东西:

$ gcloud compute firewall-rules list --project <project-name> --filter="name~gke-<your-cluster-name>-[0-9a-z]*"

在我的例子中,只为这个名为 cluster.

的测试集群指定了 3 条规则
$ gcloud compute firewall-rules list --project <myproject> --filter="name~gke-cluster-[0-9a-z]*"

NAME                      NETWORK  DIRECTION  PRIORITY  ALLOW                         DENY  DISABLED
gke-cluster-XXX-all  default  INGRESS    1000      tcp,udp,XXX                         False
gke-cluster-XXX-ssh  default  INGRESS    1000      tcp:XX                              False
gke-cluster-XXX-vms  default  INGRESS    1000      icmp,tcp:1-XXXXX,udp:1-XXXXX        False