我需要创建一个没有 VPC 的 Google Compute Engine 虚拟机实例。
对于我正在使用的App环境,我需要直接使用公共IP地址,例如DigitalOcean Droplet,所以如果我运行ifconfig
命令应该显示带有公共IP地址的界面。
我需要创建一个没有 VPC 的 Google Compute Engine 虚拟机实例。
对于我正在使用的App环境,我需要直接使用公共IP地址,例如DigitalOcean Droplet,所以如果我运行ifconfig
命令应该显示带有公共IP地址的界面。
每个 Compute Engine 实例至少属于一个 VPC 网络。鉴于GCP的软件定义网络架构,您描述的用例可能是不可能的。
如果虚拟机不属于某个 VPC,则无法在 GCP 中创建虚拟机。控制台 gui 不允许你这样做——你只需要至少有一个界面。
但是 - 有一个解决方法;
sudo
组:( adduser username; echo 'sudouser:userspass' | chpasswd; usermod -aG google-sudoers sudouser
)这样,您将拥有一个仅具有串行控制台访问权限的 VM - 但是我自己没有尝试过。
有一种方法可以做到(不是 vpc 部分,因为它不可能,但可以直接在 vm 上查看外部 IP)。步骤如下:
首先在 VPC 中启动虚拟机,同时在网络部分中将 IP-Forwarding 设置为开启。--> 在创建的时候做,一旦创建了虚拟机,你就不能这样做了。
在您的项目和 vpc 中保留一个外部 IP。
在 VPC 路由中,创建一个路由并为目标网络 xxxx/32(保留的公共 IP)--> 将下一跳指向 VM。
在 VM 中,创建一个 Sub 接口并使用 ip addr 直接分配公共 IP。
注意:这仅在您能够访问 VPC 时才有效,例如:通过公共 IP 访问虚拟机的 VPN。