Ao criar uma instância de máquina virtual (VM), Google Cloud cria um nome DNS interno a partir do nome da VM. A menos que você especifique um nome de host personalizado, Google Cloud usa o nome DNS interno criado automaticamente como o nome do host que fornece à VM.
Você pode criar uma VM com um nome de host personalizado especificando qualquer nome DNS totalmente qualificado. Nomes de host personalizados são úteis para manter convenções ou para suportar requisitos de aplicativos que esperam um nome de host específico.
Mesmo quando você especifica um nome de host personalizado, Google Cloud cria o nome DNS interno do Compute Engine. Você pode se conectar à sua VM usando este registro DNS interno criado automaticamente. O registro DNS interno é resolvido para o nome DNS interno e não para o nome do host personalizado. Com nomes de host personalizados, você ainda precisa criar um registro DNS correspondente na zona apropriada, por exemplo, usando o Cloud DNS.
Antes de começar
- Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar 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
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.
- Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.
- Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.
- Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.
- Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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, confirm that you have configured the gcloud CLI to use Workforce Identity Federation.
-
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 atribuir uma rede legada à VM:
compute.networks.use
no projeto - Para especificar um endereço IP estático para a VM:
compute.addresses.use
no projeto - Para atribuir um endereço IP externo à VM ao usar uma rede legada:
compute.networks.useExternalIp
no projeto - Para especificar uma sub-rede para sua VM:
compute.subnetworks.use
no projeto ou na sub-rede escolhida - Para atribuir um endereço IP externo à VM ao usar uma rede VPC:
compute.subnetworks.useExternalIp
no projeto ou na sub-rede escolhida - Para definir metadados de instância de VM para a VM:
compute.instances.setMetadata
no projeto - Para definir tags para a VM:
compute.instances.setTags
na VM - Para definir rótulos 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 somente leitura ou leitura-gravação:
compute.disks.use
no disco - Para anexar um disco existente no modo somente leitura:
compute.disks.useReadOnly
no disco Você deve configurar manualmente o registro DNS para seu nome de host personalizado. Os nomes de host personalizados não são resolvidos pelos registros criados automaticamente fornecidos pelo DNS interno do Compute Engine . Você pode usar qualquer um dos seguintes itens para hospedar o registro DNS do nome de host personalizado:
qualquer outro servidor de nomes DNS público
Você não pode alterar um nome de host personalizado depois de criar a VM.
- O nome do host contém pelo menos dois rótulos descritos a seguir:
- Cada rótulo contém expressões regulares que incluem apenas estes caracteres:
[az]([-a-z0-9]*[a-z0-9])?
. - Os rótulos são concatenados com um ponto.
- Cada rótulo tem de 1 a 63 caracteres.
- Cada rótulo contém expressões regulares que incluem apenas estes caracteres:
- O nome do host não excede 253 caracteres.
No console do Google Cloud, acesse a página Criar uma instância .
Especifique um nome para sua VM. Para obter mais informações, consulte Convenção de nomenclatura de recursos .
Expanda a seção Opções avançadas e faça o seguinte:
- Expanda a seção Rede .
- No campo Hostname , especifique o nome do host personalizado.
Faça personalizações adicionais de VM, conforme necessário.
Para criar e iniciar a VM, clique em Criar .
-
VM_NAME
: o nome da VM -
HOST_NAME
: o nome de host do domínio totalmente qualificado que você deseja atribuir - No console do Google Cloud, acesse a página de instâncias de VM .
- Clique em Criar instância .
- Especifique os parâmetros desejados.
- Na parte superior ou inferior da página, clique em Código equivalente e, em seguida, clique na guia Terraform para visualizar o código Terraform.
Para visualizar o nome do host personalizado da sua VM, acesse a página de instâncias de VM .
Clique no nome da instância para abrir a página de detalhes da instância de VM .
Revise a seção Nome do host . O campo Hostname estará visível somente se um nome de host personalizado estiver definido .
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a gcloud CLI e, em seguida, configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
Go
Para usar os exemplos Go desta página em um ambiente de desenvolvimento local, instale e inicialize o gcloud CLI e e configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
Java
Para usar os exemplos Java desta página em um ambiente de desenvolvimento local, instale e inicialize o gcloud CLI e e configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
Node.js
Para usar os exemplos Node.js desta página em um ambiente de desenvolvimento local, instale e inicialize o gcloud CLI e e configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
Python
Para usar os exemplos Python desta página em um ambiente de desenvolvimento local, instale e inicialize o gcloud CLI e e configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Funções obrigatórias
Para obter as permissões necessárias para criar VM com um nome de host personalizado, peça ao administrador para conceder a você a função do IAM Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .Esta função predefinida contém as permissões necessárias para criar VM com um nome de host personalizado. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias :
Permissões necessárias
As seguintes permissões são necessárias para criar VM com um nome de host personalizado:
Você também poderá obter essas permissões com funções personalizadas ou outras funções predefinidas .
Limitações
Sistemas operacionais suportados
Nomes de host personalizados são definidos no ambiente convidado usando scripts de gancho que se integram ao software de rede convidado. Os sistemas operacionais Linux que não possuem um script para integração com o software de rede convidada podem não ter o nome de host correto.
Para obter a lista completa de versões de sistemas operacionais que suportam nomes de host personalizados, verifique o suporte ao ambiente convidado em Detalhes do sistema operacional .
Convenção de nomenclatura
Os nomes de host personalizados devem estar em conformidade com os requisitos da RFC 1035 para nomes de host válidos. Para atender a esses requisitos, os nomes de host personalizados devem atender às seguintes especificações de formato:
Inválido : contém um único rótulo
my-host1234
Válido : contém três rótulos concatenados com pontos
my-host1234.example.com
Crie uma VM com um nome de host personalizado
Console
Próxima etapa: Configure seus registros DNS. Para obter mais informações, consulte Gerenciando registros .
gcloud
Usando a CLI do Google Cloud, siga as instruções para criar uma instância a partir de uma imagem ou snapshot , adicione a sinalização
--hostname
e use o comandogcloud compute instances create
da seguinte maneira:gcloud compute instances create VM_NAME \ --hostname=HOST_NAME
Substitua o seguinte:
Por exemplo, para criar uma VM
myinstance
com o nome de host personalizadotest.example.com
, execute o seguinte comando:gcloud compute instances create myinstance \ --hostname=test.example.com
Próxima etapa: Configure seus registros DNS. Para obter mais informações, consulte Gerenciando registros .
Terraforma
Você pode usar um recurso do Terraform para criar uma instância com um nome de host personalizado usando o argumento
Para gerar o código Terraform, você pode usar o componente Código equivalente no console do Google Cloud.hostname
.Próxima etapa: Configure seus registros DNS. Para obter mais informações, consulte Gerenciando registros .
Ir
Java
Node.js
Pitão
DESCANSAR
Siga as instruções da API para criar uma instância a partir de uma imagem ou snapshot e especifique o campo
hostname
no corpo da solicitação.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "hostname": "HOST_NAME", ... }
Substitua o seguinte:
Verifique o nome do host personalizado
Para VMs Linux, você pode verificar o nome do host executando o comando
hostname -f
na VM.Você também pode verificar o nome do host personalizado usando o console do Google Cloud ou a CLI do Google Cloud.
Console
gcloud
Para visualizar o nome do host personalizado da sua VM usando
gcloud compute
, use o subcomandoinstances describe
com uma sinalização--format
para filtrar a saída. SubstituaVM_NAME
pelo nome da VM.gcloud compute instances describe VM_NAME \ --format='get(hostname)'
Por exemplo, para visualizar o nome do host personalizado de uma VM chamada
myinstance
, execute o comando a seguir.gcloud compute instances describe myinstance \ --format='get(hostname)'
A saída pode ser semelhante à seguinte:
test.example.com
Se um nome de host personalizado não estiver definido, a saída deste comando ficará em branco.
O que vem a seguir
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-04-17 UTC.
-