Quando cria uma instância de máquina virtual (VM), o Google Cloud cria um Google Cloud nome DNS interno a partir do nome da VM. A menos que especifique um nome de anfitrião personalizado, Google Cloud usa o nome DNS interno criado automaticamente como o nome de anfitrião que fornece à VM.
Pode criar uma VM com um nome de anfitrião personalizado especificando qualquer nome de DNS totalmente qualificado. Os nomes de anfitriões personalizados são úteis para manter convenções ou para suportar requisitos de aplicações que esperam um nome de anfitrião específico.
Mesmo quando especifica um nome do anfitrião personalizado, Google Cloud cria o nome DNS interno do Compute Engine. Pode estabelecer ligação à sua VM através deste registo de DNS interno criado automaticamente. O registo DNS interno resolve-se para o nome DNS interno e não para o nome do anfitrião personalizado. Com nomes de anfitriões personalizados, continua a ter de criar um registo DNS correspondente na zona adequada, por exemplo, através do Cloud DNS.
Antes de começar
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
Terraform
Para usar os exemplos do Terraform nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
Go
Para usar os Go exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
Java
Para usar os Java exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
Node.js
Para usar os Node.js exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
Python
Para usar os Python exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Funções necessárias
Para receber as autorizações de que precisa para criar uma VM com um nome de anfitrião personalizado, peça ao seu administrador para lhe conceder a função IAM Administrador de instâncias do Compute (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.Esta função predefinida contém as autorizações necessárias para criar uma VM com um nome de anfitrião personalizado. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
As seguintes autorizações são necessárias para criar uma VM com um nome de anfitrião personalizado:
-
compute.instances.create
no projeto -
Para usar uma imagem personalizada para criar a VM:
compute.images.useReadOnly
na imagem -
Para usar um instantâneo para criar a VM:
compute.snapshots.useReadOnly
no instantâneo -
Para usar um modelo de instância para criar a VM:
compute.instanceTemplates.useReadOnly
no modelo de instância -
Para especificar uma sub-rede para a sua VM:
compute.subnetworks.use
no projeto ou na sub-rede escolhida -
Para especificar um endereço IP estático para a VM:
compute.addresses.use
no projeto -
Para atribuir um endereço IP externo à VM quando usar uma rede VPC:
compute.subnetworks.useExternalIp
no projeto ou na sub-rede escolhida -
Para atribuir uma rede antiga à VM:
compute.networks.use
no projeto -
Para atribuir um endereço IP externo à VM quando usar uma rede antiga:
compute.networks.useExternalIp
no projeto -
Para definir os metadados da instância de VM para a VM:
compute.instances.setMetadata
no projeto -
Para definir etiquetas para a VM:
compute.instances.setTags
na VM -
Para definir etiquetas para a VM:
compute.instances.setLabels
na VM -
Para definir uma conta de serviço para a VM usar:
compute.instances.setServiceAccount
na VM -
Para criar um novo disco para a VM:
compute.disks.create
no projeto -
Para anexar um disco existente no modo de leitura ou leitura/escrita:
compute.disks.use
no disco -
Para anexar um disco existente no modo de leitura:
compute.disks.useReadOnly
no disco
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Limitações
Tem de configurar manualmente o registo DNS para o nome de anfitrião personalizado. Os nomes de anfitrião personalizados não são resolvidos pelos registos criados automaticamente fornecidos pelo DNS interno do Compute Engine. Pode usar qualquer uma das seguintes opções para alojar o registo DNS do nome do anfitrião personalizado:
Qualquer outro servidor de nomes DNS público
Não pode alterar um nome de anfitrião personalizado depois de criar a VM.
Sistemas operativos compatíveis
Os nomes de anfitriões personalizados são definidos no ambiente convidado através de scripts de hooks que se integram com o software de rede convidado. Os sistemas operativos Linux que não têm um script para integrar com o software de rede de convidados podem não ter o nome de anfitrião correto.
Para ver a lista completa de versões de sistemas operativos que suportam nomes de anfitriões personalizados, consulte o suporte do ambiente convidado em Detalhes do sistema operativo.
Convenção de nomenclatura
Os nomes de anfitrião personalizados têm de estar em conformidade com os requisitos da RFC 1035 para nomes de anfitrião válidos. Para cumprir estes requisitos, os nomes de anfitrião personalizados têm de cumprir as seguintes especificações de formato:
- O nome de anfitrião contém, pelo menos, duas etiquetas descritas da seguinte forma:
- Cada etiqueta contém expressões regulares que incluem apenas estes carateres:
[a-z]([-a-z0-9]*[a-z0-9])?
. - As etiquetas são concatenadas com um ponto.
- Cada etiqueta tem entre 1 e 63 carateres.
- Cada etiqueta contém expressões regulares que incluem apenas estes carateres:
- O nome do anfitrião não excede os 253 carateres.
Não é válido: contém uma única etiqueta
my-host1234
Válido: contém três etiquetas concatenadas com pontos
my-host1234.example.com
Crie uma VM com um nome de anfitrião personalizado
Consola
Na Google Cloud consola, aceda à página Criar uma instância.
Especifique um Nome para a VM. Para mais informações, consulte o artigo Convenção de nomenclatura de recursos.
Expanda a secção Opções avançadas e, de seguida, faça o seguinte:
- Expanda a secção Rede.
- No campo Nome do anfitrião, especifique o nome do anfitrião personalizado.
Faça personalizações adicionais da VM, conforme necessário.
Para criar e iniciar a VM, clique em Criar.
Passo seguinte: configure os seus registos DNS. Para mais informações, consulte o artigo Gerir registos.
gcloud
Usando a CLI Google Cloud, siga as instruções para criar uma instância a partir de uma imagem ou uma captura de ecrã, adicione a flag
--hostname
e use o comandogcloud compute instances create
da seguinte forma:gcloud compute instances create VM_NAME \ --hostname=HOST_NAME
Substitua o seguinte:
VM_NAME
: o nome da VMHOST_NAME
: o nome do anfitrião do domínio totalmente qualificado que quer atribuir
Por exemplo, para criar uma VM
myinstance
com o nome do anfitrião personalizadotest.example.com
, execute o seguinte comando:gcloud compute instances create myinstance \ --hostname=test.example.com
Passo seguinte: configure os seus registos DNS. Para mais informações, consulte o artigo Gerir registos.
Terraform
Pode usar um recurso do Terraform para criar uma instância com um nome de anfitrião personalizado usando o argumento
Para gerar o código do Terraform, pode usar o componente Código equivalente na Google Cloud consola.hostname
.- Na Google Cloud consola, aceda à página Instâncias de VM.
- Clique em Criar instância.
- Especifique os parâmetros pretendidos.
- Na parte superior ou inferior da página, clique em Código equivalente e, de seguida, clique no separador Terraform para ver o código Terraform.
Passo seguinte: configure os seus registos DNS. Para mais informações, consulte o artigo Gerir registos.
Go
Java
Node.js
Python
REST
Siga as instruções da API para criar uma instância a partir de uma imagem ou de uma captura de ecrã e especifique o campo
hostname
no corpo do pedido.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "hostname": "HOST_NAME", ... }
Substitua o seguinte:
Valide o nome de anfitrião personalizado
Para VMs Linux, pode validar o nome do anfitrião executando o comando
hostname -f
na VM.Também pode validar o nome de anfitrião personalizado através da Google Cloud consola ou da CLI do Google Cloud.
Consola
Para ver o nome do anfitrião personalizado da sua VM, aceda à página Instâncias de VM.
Clique no nome da instância para abrir a página Detalhes da instância de VM.
Reveja a secção Nome do anfitrião. O campo Nome do anfitrião só é visível se tiver sido definido um nome do anfitrião personalizado.
gcloud
Para ver o nome de anfitrião personalizado da sua VM com
gcloud compute
, use o subcomandoinstances describe
com uma flag--format
para filtrar o resultado. SubstituaVM_NAME
pelo nome da VM.gcloud compute instances describe VM_NAME \ --format='get(hostname)'
Por exemplo, para ver o nome do anfitrião personalizado de uma VM denominada
myinstance
, execute o seguinte comando.gcloud compute instances describe myinstance \ --format='get(hostname)'
O resultado pode ser semelhante ao seguinte:
test.example.com
Se não estiver definido um nome de anfitrião personalizado, o resultado deste comando fica em branco.
O que se segue?
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-09-19 UTC.
-