我正在寻找GCP中的自动化解决方案,以查询每个月具有特定标签的所有项目上的所有实例;例如,"test"
我希望结果按项目(ID或名称)分组
有办法吗?
欢迎!
如果你能描述一下你所做的尝试,你的问题会更好。
LABEL_KEY="test"
PROJECTS=$(gcloud projects list --format="value(projectId)")
for PROJECT in ${PROJECTS}
do
gcloud compute instances list
--project=${PROJECT}
--filter=labels=${LABEL_KEY}
--format="value(name)"
done
上述方法的问题在于,如果在项目中未启用Compute Engine服务,则会提示您启用它(并且您可能不希望这样做)。
因此,您可以检查每个${PROJECT}
的启用服务列表,通过compute.googleapis.com
过滤,然后,如果它不在列表中,传递该项目:
SERVICE="compute.googleapis.com"
gcloud services list
--project=${PROJECT}
--filter="name.scope(services)=${SERVICE}"
--format="value(name)"