O Compute Engine fornece imagens públicas com o Windows Server que podem ser usadas para criar instâncias. Para instruções sobre como criar uma instância do Windows Server com o SQL Server pré-instalado, consulte Como criar instâncias do SQL Server.
Para mais informações sobre as instâncias do Windows Server e os aplicativos do Windows que você pode executar no Compute Engine, consulte Windows no Compute Engine.
Preços
As imagens do Windows Server são premium, e usá-las resulta em taxas adicionais.
As VMs do Windows Server não estão incluídas no Google Cloud nível sem custo financeiro.
Antes de começar
- Como ativar o faturamento do projeto.
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar
códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine selecionando uma das seguintes opções:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o console Google Cloud para acessar serviços Google Cloud e APIs, não é necessário configurar a autenticação.
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
- Defina uma região e uma zona padrão.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
Go
Para usar os exemplos de Go nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para usar os exemplos do Java nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para usar os exemplos do Node.js nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para usar os exemplos do Python nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para CLI gcloud.
Instale a CLI do Google Cloud.
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Criar uma instância do Windows Server
Para criar uma instância com o Windows Server, especifique a família de imagens para a versão específica do Windows de que você precisa. O Compute Engine oferece várias versões do Windows Server, a maioria delas disponível como imagens de VM protegida. As imagens de VMs protegidas oferecem recursos de segurança como firmware compatível com UEFI, inicialização segura e inicialização medida e segura de vTPM. Para uma lista das famílias de imagens disponíveis, consulte imagens públicas.
Se você precisar de mais de duas sessões de computador remoto simultâneas, será necessário comprar licenças de acesso ao cliente (CALs, na sigla em inglês) da sessão de área de trabalho remota (RDS, na sigla em inglês). Para mais informações, consulte Licenciar sua implantação do RDS com licenças de acesso para cliente (CALs).
Trabalhar com o Microsoft Active Directory
Se você planeja usar o Microsoft Active Directory (AD) com a nova instância, o nome dela não pode ter mais de 15 caracteres para atender às restrições de comprimento máximo de nome do sistema.
O AD usa os nomes do NetBIOS de máquinas, que são geradas como o nome da instância
truncado para 15 caracteres. Como resultado, você pode encontrar o seguinte erro
ao tentar fazer login como um usuário de domínio:
The Security Database on the Server does not have a Computer Account for this Workstation Trust Relationship.
Criar uma instância do Windows Server que usa um IP externo para ser ativada
Esta seção descreve como criar uma instância do Windows Server que tenha um endereço IP externo. É preciso configurar sua rede VPC para permitir acesso a kms.windows.googlecloud.com.
Console
Para criar uma VM básica do Windows:
No console do Google Cloud , acesse a página Criar uma instância.
Em Disco de inicialização, selecione Alterar e faça o seguinte:
- Na guia Imagens públicas, escolha um sistema operacional Windows Server.
- Clique em Selecionar.
Para criar a VM, clique em Criar.
Para criar uma instância de VM protegida do Windows, faça o seguinte:
No console do Google Cloud , acesse a página Criar uma instância.
Em Disco de inicialização, selecione Alterar e faça o seguinte:
- Na guia Imagens públicas, escolha um sistema operacional Windows Server.
- Para salvar a configuração do disco de inicialização, clique em Selecionar.
Se quiser mudar as configurações de VM protegida da VM, expanda a seção Opções avançadas. Em seguida, faça o seguinte:
- Expanda a seção Segurança.
- Se você quiser desativar a inicialização segura, desmarque a caixa de seleção Ativar inicialização segura. A inicialização segura ajuda a proteger as instâncias de VM contra malware e rootkits nos níveis de inicialização e kernel. Para mais informações, consulte Inicialização segura.
Se quiser desativar o módulo da plataforma virtual confiável (vTPM, na sigla em inglês), desmarque a caixa de seleção Ativar vTPM. O vTPM permite a Inicialização medida, que valida a integridade da VM antes e durante a inicialização. Para mais informações, consulte Módulo da plataforma virtual confiável (vTPM).
Se você quiser desativar o monitoramento de integridade, desmarque a caixa de seleção Ativar monitoramento de integridade. O monitoramento de integridade permite monitorar a integridade da inicialização das VMs protegidas usando o Cloud Monitoring. Para mais informações, consulte Monitoramento de integridade.
Para criar a VM, clique em Criar.
gcloud
Use o
comando
compute images list
para ver uma lista de imagens disponíveis do Windows Server:
gcloud compute images list --project windows-cloud --no-standard-images
Para determinar se uma imagem é compatível com recursos de VM protegida, execute o seguinte comando e verifique se há UEFI_COMPATIBLE na saída:
gcloud compute images describe IMAGE_NAME --project windows-cloud
Substitua IMAGE_NAME pelo nome da imagem a ser verificada
para compatibilidade com recursos da VM protegida.
Use o
comando compute instances create
para criar uma nova instância e especificar a família de imagens de uma das
imagens públicas do Windows Server.
gcloud compute instances create INSTANCE_NAME \
--image-project windows-cloud \
--image-family IMAGE_FAMILY \
--machine-type MACHINE_TYPE \
--boot-disk-size BOOT_DISK_SIZE \
--boot-disk-type BOOT_DISK_TYPE
Substitua:
INSTANCE_NAME: um nome para a nova instância.IMAGE_FAMILY: uma das famílias de imagens públicas do Windows Server;MACHINE_TYPE: um dos tipos de máquina disponíveis;BOOT_DISK_SIZE: o tamanho do disco de inicialização em GiB. Discos maiores têm maior capacidade de processamento.BOOT_DISK_TYPE: o tipo do disco de inicialização da instância, por exemplo,hyperdisk-balancedoupd-ssd.
Se for escolhida uma imagem compatível com a VM protegida, é possível alterar as configurações de VM protegida da instância usando uma das sinalizações a seguir:
--no-shielded-secure-boot: desativar a Inicialização segura. A inicialização segura ajuda a proteger as instâncias de VM contra malware e rootkits nos níveis de inicialização e kernel. Para mais informações, consulte Inicialização segura.--no-shielded-vtpm: desativar o módulo da plataforma virtual confiável (vTPM, na sigla em inglês). O vTPM permite a Inicialização medida, que valida a integridade da VM antes e durante a inicialização. Para mais informações, consulte Módulo da plataforma virtual confiável (vTPM).--no-shielded-integrity-monitoring: desativa o monitoramento de integridade. O monitoramento de integridade permite monitorar a integridade da inicialização das instâncias de VM protegidas usando o Cloud Monitoring. Para mais informações, consulte Monitoramento de integridade.
O exemplo a seguir cria uma instância de VM protegida do Windows 2022 com a inicialização segura desativada:
gcloud compute instances create my-instance \
--image-family windows-2022 --image-project windows-cloud \
--no-shielded-secure-boot
Go
Java
Node.js
Python
REST
Para criar uma instância com a API, inclua a
propriedade initializeParams
na solicitação de criação da instância e especifique uma imagem do Windows. Por exemplo, o corpo da solicitação pode ter a seguinte aparência:
instance = {
"name": "INSTANCE_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [{
"boot": "true",
"type": "PERSISTENT",
"initializeParams": {
"diskName": "DISK_NAME",
"sourceImage": "https://www.googleapis.com/compute/v1/projects/windows-cloud/global/images/family/IMAGE_FAMILY",
"diskSizeGb": "BOOT_DISK_SIZE",
"diskType": "BOOT_DISK_TYPE",
}
}],
"networkInterfaces": [{
"accessConfigs": [{
"type": "ONE_TO_ONE_NAT",
"name": "External NAT"
}],
"network": "global/networks/default"
}],
"serviceAccounts": [{
"email": DEFAULT_SERVICE_EMAIL,
"scopes": DEFAULT_SCOPES
}]
}Substitua os seguintes marcadores por valores válidos:
INSTANCE_NAME: o nome da nova instância.IMAGE_FAMILY: uma das famílias de imagens públicas do Windows Server ou do SQL Server;ZONE: a zona desta instância.MACHINE_TYPE: um dos tipos de máquina disponíveis.BOOT_DISK_SIZE: o tamanho do disco de inicialização em GiB. Discos maiores têm maior capacidade de processamento.BOOT_DISK_TYPE: o tipo do disco de inicialização da instância, por exemplo,hyperdisk-balancedoupd-ssd.
Se você tiver escolhido uma imagem compatível com VM protegida, será possível alterar as configurações da VM protegida da instância usando os itens do corpo da solicitação booleana a seguir:
enableSecureBoot: ativar ou desativar a Inicialização segura. A inicialização segura ajuda a proteger as instâncias de VM contra malware e rootkits nos níveis de inicialização e kernel. Para mais informações, consulte Inicialização segura.enableVtpm: ativar ou desativar o módulo da plataforma virtual confiável (vTPM, na sigla em inglês). O vTPM permite a Inicialização medida, que valida a integridade da VM antes e durante a inicialização. Para mais informações, consulte Módulo da plataforma virtual confiável (vTPM).enableIntegrityMonitoring: ativar ou desativar o monitoramento de integridade. O monitoramento de integridade permite monitorar e verificar a integridade da inicialização do ambiente de execução das instâncias de VM protegidas usando os relatórios do Cloud Monitoring. Para mais informações, consulte Monitoramento de integridade.
Para mais informações sobre como criar uma instância, leia a documentação do método instances.insert().
Depois de criar a instância do Windows ou do SQL Server, defina a senha inicial dela para se conectar a ela pelo RDP.
Além disso, é possível mesclar a VM a um domínio do Microsoft AD gerenciado durante ou após a criação da VM. Para mais informações, consulte Associar uma VM do Windows automaticamente a um domínio.
Criar uma instância do Windows Server que usa um endereço IP interno para ser ativada
Antes de criar uma instância do Windows Server que tenha apenas um endereço IP interno, é preciso verificar ou configurar rotas e regras de firewall na sua rede VPC para permitir acesso a kms.windows.googlecloud.com. Além disso, você precisa ativar o Acesso privado do Google para sub-redes em sua rede VPC que contenham instâncias do Windows apenas com endereços IP internos.
gcloud
Ao criar uma nova instância usando a CLI gcloud, use a flag --no-address para garantir que não seja atribuído um endereço IP externo a ela:
gcloud compute instances create INSTANCE_NAME --network NETWORK_NAME \ --subnet SUBNET_NAME \ --no-address \ --zone ZONE \ --image-project windows-cloud \ --image-family IMAGE_FAMILY \ --machine-type MACHINE_TYPE \ --boot-disk-size BOOT_DISK_SIZE \ --boot-disk-type BOOT_DISK_TYPE
Substitua os seguintes marcadores por valores válidos:
INSTANCE_NAME: um nome para a nova instância.SUBNET_NAME: o nome da sub-rede na rede VPC que a instância vai usar. A sub-rede precisa estar na mesma região que a zona escolhida para a instância.IMAGE_FAMILY: uma das famílias de imagens públicas para imagens do Windows Server.MACHINE_TYPE: um dos tipos de máquina disponíveis.BOOT_DISK_SIZE: o tamanho do disco de inicialização em GiB. Discos maiores têm maior capacidade de processamento.BOOT_DISK_TYPE: o tipo do disco de inicialização da instância. Por exemplo,hyperdisk-balancedoupd-ssd.
Go
Java
Node.js
Python
Como essa instância não tem um endereço IP externo, não é possível se conectar diretamente a ela pela Internet. É possível se conectar a partir de outra rede conectada à sua rede VPC usando o Cloud Interconnect ou o Cloud VPN. Outra possibilidade é se conectar a uma instância bastion por meio do RDP e se conectar à instância que tem apenas um endereço IP interno.
Além disso, é possível mesclar a VM a um domínio do Microsoft AD gerenciado durante ou após a criação da VM. Para mais informações, consulte Associar uma VM do Windows automaticamente a um domínio.
Configurar o acesso a kms.windows.googlecloud.com
Para ativação e renovação do Windows, sua rede VPC precisa atender aos requisitos a seguir de roteamento e regras de firewall.
Requisitos de roteamento
As instâncias do Windows precisam ser capazes de alcançar kms.windows.googlecloud.com (35.190.247.13 ou 2001:4860:4802:32::86) por meio de uma rota que tenha o gateway de Internet padrão como próximo salto. Não é possível ativar instâncias do Windows usando um gateway NAT
baseado em instância ou o Cloud NAT porque kms.windows.googlecloud.com rejeita
solicitações de ativação de endereços IP que não são confirmados como
instâncias do Compute Engine.
É possível usar a rota padrão em sua
rede VPC para rotear o tráfego diretamente para
kms.windows.googlecloud.com. Se você remover essa rota ou se planeja fazer isso no futuro, crie uma rota estática personalizada com o destino 35.190.247.13 ou 2001:4860:4802:32::86 e o próximo salto definido como gateway de Internet padrão:
Somente IPv4
gcloud compute routes create mskms-ipv4-route-ipv4-network \
--destination-range=35.190.247.13/32 \
--network=ipv4-network \
--next-hop-gateway=default-internet-gateway
Pilha dupla
gcloud compute routes create mskms-ipv4-route-ipv4-network \
--destination-range=35.190.247.13/32 \
--network=ipv4-network \
--next-hop-gateway=default-internet-gateway
gcloud compute routes create mskms-ipv6-route-ipv6-network \
--destination-range=2001:4860:4802:32::86/128 \
--network=ipv6-network \
--next-hop-gateway=default-internet-gateway
Somente IPv4
gcloud compute routes create mskms-ipv6-route-ipv6-network \
--destination-range=2001:4860:4802:32::86/128 \
--network=ipv6-network \
--next-hop-gateway=default-internet-gateway
Substitua ipv4-network ou ipv6-network pelo nome
da sua rede VPC.
A rota padrão ou uma rota estática personalizada permite que instâncias com endereços IP externo alcancem kms.windows.googlecloud.com. Se você tiver instâncias do Windows sem endereços IP externos ou usar o Cloud NAT, também será preciso
ativar o Acesso privado do Google
para que instâncias apenas com endereços IP internos possam enviar tráfego ao endereço IP externo para kms.windows.googlecloud.com (35.190.247.13 ou
2001:4860:4802:32::86).
Requisitos de regra de firewall
A regra de firewall
de permissão de saída implícita permite que as instâncias façam solicitações e recebam respostas estabelecidas. A menos que você tenha criado regras de firewall personalizadas que negam a saída, suas instâncias do Windows podem se comunicar com kms.windows.googlecloud.com.
Se você personalizar as regras de firewall, uma boa prática é criar uma regra de permissão de saída de alta prioridade que permita explicitamente a comunicação com 35.190.247.13 ou 2001:4860:4802:32::86.
Dessa forma, ao modificar as regras do firewall, você não desativará acidentalmente a ativação do Windows.
Os seguintes exemplos de gcloud criam a regra de permissão de saída recomendada com a prioridade mais alta:
Somente IPv4
gcloud compute firewall-rules create mskms-ipv4-firewall-rule-ipv4-network \
--direction=EGRESS \
--network=ipv4-network \
--action=/proxy/https/docs.cloud.google.com/compute/docs/instances/windows/ALLOW \
--rules=tcp:1688 \
--destination-ranges=35.190.247.13/32 \
--priority=0
Pilha dupla
gcloud compute firewall-rules create mskms-ipv4-firewall-rule-ipv4-network \
--direction=EGRESS \
--network=ipv4-network \
--action=/proxy/https/docs.cloud.google.com/compute/docs/instances/windows/ALLOW \
--rules=tcp:1688 \
--destination-ranges=35.190.247.13/32 \
--priority=0
gcloud compute firewall-rules create mskms-ipv6-firewall-rule-ipv6-network \
--direction=EGRESS \
--network=ipv6-network \
--action=/proxy/https/docs.cloud.google.com/compute/docs/instances/windows/ALLOW \
--rules=tcp:1688 \
--destination-ranges=2001:4860:4802:32::86/128 \
--priority=0
Somente IPv4
gcloud compute firewall-rules create mskms-ipv6-firewall-rule-ipv6-network \
--direction=EGRESS \
--network=ipv6-network \
--action=/proxy/https/docs.cloud.google.com/compute/docs/instances/windows/ALLOW \
--rules=tcp:1688 \
--destination-ranges=2001:4860:4802:32::86/128 \
--priority=0
Substitua ipv4-network ou ipv6-network pelo nome
da sua rede VPC.
Como verificar se uma instância foi iniciada
As instâncias do Windows têm um tempo de inicialização mais longo por causa do processo sysprep. O console do Google Cloud pode mostrar que a instância está em execução mesmo que o processo do sysprep ainda não esteja completo. Para confirmar se ela foi inicializada e está pronta para ser usada, verifique a saída da porta serial com o seguinte comando:
gcloud compute instances get-serial-port-output INSTANCE_NAME
Substitua INSTANCE_NAME pelo nome da instância que
você quer verificar.
...[snip]... Running schtasks with arguments /run /tn GCEStartup --> SUCCESS: Attempted to run the scheduled task "GCEStartup". ------------------------------------------------------------- Instance setup finished. INSTANCE_NAME is ready to use. -------------------------------------------------------------
Como ativar e desativar recursos de instância do Windows
Se você tiver instâncias do Windows com versões de imagem v20170509 e posteriores ou
com a versão do agente 4.1.0 e posterior, poderá definir a configuração da instância
em um arquivo de configuração ou em
metadados personalizados do projeto ou da instância.
O arquivo de configuração está no formato INI e está localizado no seguinte caminho:
C:\Program Files\Google\Compute Engine\instance_configs.cfg
O sistema substitui as definições de configuração na seguinte ordem de prioridade, da prioridade mais alta à mais baixa:
- parâmetros de configuração que você definiu no arquivo de configuração
- parâmetros de configuração definidos nos metadados personalizados da instância
- Parâmetros de configuração definidos nos metadados personalizados do projeto
Por exemplo, se for possível ativar o recurso accountManager em um arquivo de configuração, sua instância ignorará os parâmetros que você definiu em metadados personalizados para desativar esse recurso.
Uma vantagem de definir esses parâmetros no arquivo de configuração é que as configurações permanecem quando você cria uma imagem personalizada para uma instância do Windows Server. Metadados personalizados de nível de instância não persistem após o fim da vida útil da instância.
Desative diferentes recursos da instância do Windows usando os exemplos a seguir.
Desative o administrador da conta
Desativar o gerente de contas também desativa a redefinição de senhas com a Google Cloud CLI ou o console Google Cloud :
Arquivo de configuração:
[accountManager] disable=trueNos metadados personalizados, defina
disable-account-managercomotrue.
Desative o administrador de endereços
Entrada do arquivo de configuração:
[addressManager] disable=trueNos metadados personalizados, defina
disable-address-managercomotrue.
Clustering de failover do Windows Server
Ative o agente do cluster de failover do Windows Server:
Entrada do arquivo de configuração:
[wsfc] enable=trueNos metadados personalizados, defina
enable-wsfccomotrue.
Como usar vários balanceadores de carga internos
Especifique o endereço IP da instância de balanceamento de carga interno para o cluster de failover. Esta é uma configuração avançada que não precisa ser configurada para um cluster de failover dedicado.
Geralmente, uma instância de balanceamento de carga interno é usada para direcionar o tráfego de rede para uma instância de VM de cada vez. Quando uma segunda instância de balanceamento de carga interno que usa as instâncias de VM de clustering de failover é adicionada como parte do back-end de um site com balanceamento de carga, você tem dois endereços IP de balanceamento de carga interno. Se o clustering de failover usar 10.0.0.10 e o balanceador de carga do site usar 10.0.0.11, será preciso especificar o endereço IP do balanceador de carga usado para o clustering de failover. Isso desambigua o endereço que está sendo usado para o cluster.
Entrada do arquivo de configuração:
[wsfc] addresses=10.0.0.10Nos metadados personalizados, defina
wsfc-addrscomo10.0.0.10.
Como alterar a porta do agente de clustering
Defina a porta do agente de clustering de failover. A porta padrão é 59998.
Só é preciso especificar a porta quando quiser usar uma diferente:
Entrada do arquivo de configuração:
[wsfc] port=12345Nos metadados personalizados, defina
wsfc-agent-portcomo o número da porta.
Notas sobre a versão da imagem
Imagens mais antigas não usam um arquivo de configuração e só têm um subconjunto de recursos.
As versões de imagem entre a v20160112 e a v20170509 ou a versão de agente do Windows entre 3.2.1.0 e 4.0.0 exigem que você use os seguintes valores de metadados personalizados:
- Defina
disable-account-managercomotruenos metadados da instância para desativar o gerenciador de contas. - Defina
disable-address-managercomotruenos metadados da instância para desativar o administrador de endereços.
A seguir
- Gerar credenciais para VMs do Windows
- Adicionar um disco permanente
- Conectar-se a VMs do Windows usando o RDP
- Conectar-se a VMs do Windows usando SSH
- Conectar-se às VMs do Windows usando o PowerShell.