GCP:为现有实例分配/删除临时IP

时间:2017-11-28 16:43:05

标签: google-cloud-platform gcloud gcp

我在GCP中只有很少的实例,出于管理目的,我需要简单地在SSH中连接并启动一些命令。这些实例在“正常”模式下没有外部IP,但是对于这些简短的维护,我想分配临时IP,进行维护然后删除它们。

可以在Web界面上轻松完成此操作(编辑实例更改NIC配置以添加临时NAT IP)但我想避免这种情况,因为我有几个实例...我在gcloud文档中遗漏了什么?< / p>

2 个答案:

答案 0 :(得分:5)

经过一段时间(太长时间)探索gcloud文档的深层部分后发现它。

在专门为实例分配静态外部IP地址的部分中(静态部分中的是),它在一个小注释中说:

&#34;如果您打算使用短暂的外部IP地址,可以跳过此步骤,计算引擎将随机分配一个短暂的外部IP地址。&#34;

https://cloud.google.com/compute/docs/ip-addresses/reserve-static-external-ip-address#ipassign

所以&#34;键&#34;单词是为您的实例添加accessConfig,如:

gcloud compute instances add-access-config [INSTANCE_NAME] \
--access-config-name "[ACCESS_CONFIG_NAME]" 

在这个例子中有一个&#34; - 地址[IP_ADDRESS]&#34;分配静态外部IP的选项,但正如笔记所说它是可选的。坦率地说不容易找到。

答案 1 :(得分:0)

使用Google Cloud SDK,您可以使用以下工作流程:

设置一些变量;

instance=instance-1
zone=asia-northeast2-a

设置实例的外部临时ipv4地址,向其发出维护命令,并取消设置其外部临时ipv4地址;

gcloud compute instances add-access-config $instance --zone=$zone

gcloud compute ssh $instance --zone=$zone --command="maintenance #..."

gcloud compute instances delete-access-config $instance --zone=$zone

相应的Cloud SDK文档链接为instances/describeinstances/add-access-configsshinstances/delete-access-config