gdu*_*ont 6 google-cloud-platform gcloud gcp
我在GCP中有很少的实例,出于管理目的,我需要在SSH中简要连接并启动一些命令.这些实例在"正常"模式下没有外部IP,但是对于这些简短的维护,我想分配临时IP,进行维护然后删除它们.
可以在Web界面上轻松完成此操作(编辑实例更改NIC配置以添加临时NAT IP)但我想避免这种情况,因为我有几个实例...我在gcloud文档中遗漏了什么?
经过一段时间(太长时间)探索gcloud文档的深层部分后发现它.
在专门为实例分配静态外部IP地址的部分中(静态部分中的是),它在一个小注释中说:
"如果您打算使用短暂的外部IP地址,则可以跳过此步骤,计算引擎将随机分配一个短暂的外部IP地址."
https://cloud.google.com/compute/docs/ip-addresses/reserve-static-external-ip-address#ipassign
因此,"关键"一词是为您的实例添加一个accessConfig,如:
gcloud compute instances add-access-config [INSTANCE_NAME] \
--access-config-name "[ACCESS_CONFIG_NAME]"
Run Code Online (Sandbox Code Playgroud)
在这个例子中有一个"--address [IP_ADDRESS]"选项来分配静态外部IP,但正如笔记所说它是可选的.坦率地说不容易找到.
借助 Google Cloud SDK,您可以使用如下工作流程:
设置一些变量;
instance=instance-1
zone=asia-northeast2-a
Run Code Online (Sandbox Code Playgroud)
为实例设置一个外部临时 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
Run Code Online (Sandbox Code Playgroud)
对应的 Cloud SDK 文档链接是instance/describe、instance/add-access-config、ssh和instances/delete-access-config。
| 归档时间: |
|
| 查看次数: |
3003 次 |
| 最近记录: |