创建具有自定义主机名的虚拟机实例

创建虚拟机实例时,Google Cloud Platform (GCP) 会根据实例名称创建内部 DNS 名称。除非您指定自定义主机名,否则 GCP 会使用自动创建的内部 DNS 名称作为其提供给虚拟机的主机名。

您可以通过指定任何全限定 DNS 名称来创建具有自定义主机名的虚拟机。自定义主机名有助于维持命名惯例或支持希望采用特定主机名的应用的要求。

限制

  • 您必须手动配置自定义主机名的 DNS 记录。Compute Engine 内部 DNS 提供的自动创建的记录不解析自定义主机名。您可以使用以下任一方法托管自定义主机名的 DNS 记录:

  • 创建虚拟机后,就无法更改自定义主机名。

  • 即使在指定自定义主机名时,GCP 仍会创建 Compute Engine 内部 DNS 名称。您仍然可以使用此自动创建的 DNS 记录联系您的虚拟机。

要求

主机名必须符合 RFC 1035 要求才能成为有效主机名。要满足此要求,主机名必须包含一系列与正则表达式 [a-z]([-a-z0-9]*[a-z0-9])? 匹配的标签,各个标签用点连接起来。每个标签的长度为 1-63 个字符,整个序列不得超过 253 个字符。

准备工作

Console

  1. 转到“创建实例”页面

    转到“创建实例”页面

  2. 展开管理、安全、磁盘、网络、单独租用部分。
  3. 网络标签的主机名下方,设置自定义主机名。
  4. 继续完成实例创建过程的剩余部分。

gcloud

按照同一说明通过映像快照创建实例,添加 --hostname=[HOST_NAME] 标志记并使用 gcloud compute instances create 命令:

gcloud compute instances create [INSTANCE_NAME] \
    --hostname=[HOST_NAME]

其中:

  • [INSTANCE_NAME] 是实例的名称。
  • [HOST_NAME] 是您要分配的全限定域名主机名。

举例来说,如要通过自定义主机名 test.example.com 创建名为 myinstance 的实例,您可以运行以下命令:

gcloud compute instances create myinstance \
    --hostname=test.example.com

API

按照 API 说明通过映像快照创建实例,并在请求正文中指定 hostname 字段。

POST https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances

{
 "name": "[INSTANCE_NAME]",
 "hostname": "[HOST_NAME]",
 ...
}

其中:

  • [INSTANCE_NAME] 是实例的名称。
  • [HOST_NAME] 是您要分配的全限定域名主机名。
  • [ZONE] 是您想要在其中创建实例的地区
此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Compute Engine 文档