Como criar uma nuvem privada do VMware Engine
Uma nuvem privada é uma pilha VMware isolada que consiste em hosts ESXi, vCenter, vSAN, NSX e HCX. Você gerencia nuvens privadas pelo Google Cloud console. Ao criar uma nuvem privada, você recebe um cluster do vSphere e todas as VMs de gerenciamento criadas nesse cluster.
O VMware Engine implanta componentes de gerenciamento na rede que você selecionou para sub-redes vSphere/vSAN. O intervalo de endereços IP internos é dividido em sub-redes diferentes durante a implantação.
Antes de começar
Antes de realizar as tarefas nesta página, siga as etapas de pré-requisito a seguir.
- Aloque um intervalo de endereços IP exclusivo para sub-redes vSphere/vSAN da nuvem particular que você quer criar.
- Prefixo mínimo do intervalo CIDR: /24
- Prefixo máximo do intervalo CIDR: /20
- Se você quiser resolução de endereço global usando o Cloud DNS, então ative a API Cloud DNS e conclua a configuração do Cloud DNS antes de criar sua nuvem privada.
O espaço de endereço de sub-rede vSphere/vSAN não pode se sobrepor a nenhuma rede que se comunicará com a nuvem privada, como redes locais e Google Cloud redes de nuvem privada virtual (VPC). Para mais informações sobre sub-redes vSphere ou vSAN, consulte VLANs e sub-redes no VMware Engine.
Google Cloud CLI e requisitos da API
Para usar a ferramenta de linha de comando gcloud ou a API para gerenciar os recursos do VMware Engine, recomendamos configurar as ferramentas conforme descrito abaixo.
gcloud
Defina o ID do projeto padrão:
gcloud config set project PROJECT_ID
Defina uma região e uma zona padrão.
gcloud config set compute/region REGION
gcloud config set compute/zone ZONE
Para mais informações sobre a ferramenta gcloud vmware,
consulte os documentos de referência do SDK Cloud.
API
Os exemplos de API neste conjunto de documentação usam a ferramenta de linha de comando cURL para consultar a API. Um token de acesso válido é necessário como parte da solicitação cURL. Há muitas maneiras de conseguir um token de acesso válido. As etapas a seguir usam a ferramenta gcloud para gerar um token de acesso:
Faça login em Google Cloud:
gcloud auth login
Gere o token de acesso e exporte para TOKEN:
export TOKEN=`gcloud auth print-access-token`
Verifique se o TOKEN está definido corretamente:
echo $TOKEN
Use agora o token de autorização nas solicitações para a API. Exemplo:
curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations
Python
Os exemplos de código Python nesta documentação usam a biblioteca do VMware Engine para se comunicar com a API. Para usar essa abordagem, a biblioteca precisa estar instalada e o Application Default Credentials precisa estar configurado.
Faça o download e instale a biblioteca Python:
pip install google-cloud-vmwareengine
Configure as informações do ADC executando esse comando no shell:
gcloud auth application-default login
Ou use um arquivo de chave da conta de serviço:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
Para mais informações sobre a biblioteca, acesse a página de referência ou veja exemplos de código no GitHub.
Criar uma nuvem privada padrão
Console
Para criar uma nuvem privada padrão usando o Google Cloud console, siga estas etapas:
No Google Cloud console, acesse a página Nuvens privadas.
Clique em Selecionar um projeto e selecione a organização, a pasta ou o projeto em que você quer criar a nuvem privada.
Clique em Criar.
Insira um nome para a nuvem privada.
Selecione Nuvem privada padrão para o tipo de nuvem privada.
Selecione o local em que você quer que a nuvem privada seja implantada.
Insira um nome para o cluster principal.
Selecione o tipo de nó para o cluster principal.
Selecione o número de nós da nuvem privada. Para cargas de trabalho de produção, crie sua nuvem privada com pelo menos três nós. O VMware Engine exclui nuvens privadas que contêm apenas um nó após 60 dias.
Opcional: clique no botão Personalizar núcleos se você quiser reduzir o número de núcleos disponíveis para cada nó no cluster de gerenciamento. Para mais detalhes, consulte Contagens de núcleo personalizados.
Insira um intervalo CIDR para a rede de gerenciamento de VMware. Para informações sobre restrições nesse intervalo, consulte a Antes de começar seção.
Clique em Revisar e criar.
Revise as configurações. Para alterar as configurações, clique em Voltar.
Clique em Criar para começar a provisionar a nuvem privada.
A lista a seguir descreve cada campo durante a criação da nuvem privada em mais detalhes:
- Nome: identificador exclusivo permanente da nuvem privada.
- Descrição: informações adicionais visíveis na página de detalhes da nuvem privada.
- Região: região geográfica onde a VMware hospeda a nuvem privada.
- Zona: um subconjunto de uma região fisicamente isolada de outras zonas na mesma região. Uma zona é um único domínio de falha dentro de uma região.
- Nome do cluster principal:nome do cluster inicial do vSphere na nuvem privada. Os dispositivos de gerenciamento da VMware da sua nuvem privada são executados nesse cluster.
- Tipo de nó: configuração de hardware dos nós no cluster principal.
- Nós: número de nós no cluster principal.
- Intervalo de endereços IP de gerenciamento: intervalo de endereços IP usado para vCenter Server, NSX Manager, hosts ESXi e outras partes da infraestrutura da nuvem privada. Esse intervalo não é usado para VMs de carga de trabalho e não pode se sobrepor a nenhuma parte da rede VPC ou a qualquer outra rede à qual você pretende conectar a nuvem privada.
- Rede do VMware Engine:recurso de rede que processa conexões de nuvem privada de acordo com uma política de rede. Você e os recursos conectados a essa rede do VMware Engine podem acessar a nuvem privada no dentro Google Cloud.
gcloud
Para criar uma nuvem privada padrão usando a Google Cloud CLI, siga estas etapas:
Opcional: execute o comando
gcloud vmware locations listpara listar as regiões e zonas disponíveis no projeto:gcloud vmware locations list \ --project=PROJECT_IDSubstitua:
PROJECT_ID: o ID do projeto desta solicitação;
Crie uma rede para sua nuvem privada executando o
gcloud vmware networks createcomando:gcloud vmware networks create NETWORK_NAME \ --location=global \ --type=STANDARD \ --description="DESCRIPTION"Substitua:
NETWORK_NAME: o nome da rede do VMware Engine;DESCRIPTION: uma descrição para essa rede do VMware Engine.
A solicitação retorna um ID de operação.
Verifique o status da operação executando o
gcloud vmware operations describecomando: Quando a operação retornar comoDONE, verifique a resposta para ver se a operação foi bem-sucedida.gcloud vmware operations describe OPERATION_ID \ --location=globalSubstitua:
OPERATION_ID: o ID da etapa anterior.
Crie uma nuvem privada de três nós executando o
gcloud vmware private-clouds createcomando:gcloud vmware private-clouds create PRIVATE_CLOUD_ID \ --location=ZONE \ --cluster=CLUSTER_ID \ --node-type-config=type=NODE_TYPE,count=NODE_COUNT \ --management-range=`IP_ADDRESS` \ --vmware-engine-network=NETWORK_NAME
Substitua:
PRIVATE_CLOUD_ID: o nome da nuvem privada;ZONE: a zona da nuvem privada;CLUSTER_ID: o nome do novo cluster nesta nuvem privada;NODE_TYPE: o tipo de nó. Para mais informações, consulte Tipos de nó.NODE_COUNT: a contagem de nós. Especifique um valor de três ou mais.IP_ADDRESS: o endereço IP, por exemplo,192.168.0.0/24, para esta solicitação;NETWORK_NAME: o nome da rede para esta nuvem.
A solicitação retorna um ID que pode ser usado para verificar o progresso da operação.
Verifique o status da operação executando o
gcloud vmware operations describecomando: Quando a operação retornar comoDONE, verifique a resposta para ver se a operação foi bem-sucedida.gcloud vmware operations describe OPERATION_ID \ --location=ZONESubstitua:
OPERATION_ID: o ID da etapa anterior.ZONE: a zona da nuvem privada.
Conecte a rede do VMware Engine à sua VPC usando o peering de conexões de VPC.
Recupere as credenciais do vCenter e do NSX executando os
gcloud vmware private-clouds vcenter credentials describee osgcloud vmware private-clouds nsx credentials describecomandos, respectivamente.gcloud vmware private-clouds vcenter credentials describe \ --private-cloud=PRIVATE_CLOUD_ID \ --location=ZONEgcloud vmware private-clouds nsx credentials describe \ --private-cloud=PRIVATE_CLOUD_ID \ --location=ZONESubstitua:
PRIVATE_CLOUD_ID: o ID da nuvem privada.ZONE: a zona da nuvem privada
API
Para criar uma nuvem privada padrão usando a API VMware Engine, siga estas etapas:
Crie uma rede do VMware Engine fazendo uma solicitação
POST:curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/vmwareEngineNetworks?vmwareEngineNetworkId=NETWORK_NAME -d '{"type": "standard"}'Substitua:
TOKEN: o token de autorização da solicitaçãoPROJECT_ID: o projeto para esta solicitação;NETWORK_NAME: o nome da rede da nuvem privada.
A solicitação retorna um ID que pode ser usado para verificar o progresso da operação.
Verifique o status da operação fazendo uma solicitação
GET. Quando a operação retornar comoDONE, verifique a resposta para ver se a operação foi bem-sucedida.curl -X GET -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/operations/OPERATION_ID
Substitua
OPERATION_IDpelo ID da etapa anterior.Crie uma nuvem privada de três nós fazendo uma solicitação
POST:curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds?privateCloudId=PRIVATE_CLOUD_ID -d "{ "networkConfig":{ "vmwareEngineNetwork":"projects/PROJECT_ID/locations/global/vmwareEngineNetworks/NETWORK_NAME", "managementCidr":"10.241.0.0/22" }, "managementCluster":{ "clusterId": "CLUSTER_ID", "nodeTypeConfigs": { "standard-72": { "nodeCount": NODE_COUNT } } } }"Substitua:
TOKEN: o token de autorização da solicitação.PROJECT_ID: o ID do projeto desta solicitaçãoZONE: a zona da nuvem privadaPRIVATE_CLOUD_ID: o ID da nuvem privada.NETWORK_NAME: o nome da rede da nuvem privada;CLUSTER_ID: o ID do novo cluster nesta nuvem privada.NODE_COUNT: a contagem de nós. Especifique um valor de três ou mais.
A solicitação retorna um ID que pode ser usado para verificar o progresso da operação.
Verifique o status da operação fazendo uma solicitação
GET. Quando a operação retornar comoDONE, verifique a resposta para ver se a operação foi bem-sucedida.curl -X GET -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/operations/OPERATION_ID
Substitua:
PROJECT_ID: o ID do projeto desta solicitaçãoZONE: a zona da nuvem privada;OPERATION_ID: o ID da etapa anterior.
Conecte a rede do VMware Engine à sua VPC usando o peering de conexões de VPC.
Recupere as credenciais do vCenter e do NSX fazendo solicitações
GET:curl -X GET -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID:showVcenterCredentials"
curl -X GET -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID:showNsxCredentials"
Substitua:
PROJECT_ID: o ID do projeto desta solicitaçãoZONE: a zona da nuvem privadaPRIVATE_CLOUD_ID: o ID da nuvem privada.
Python
Criar uma rede legada
Criar uma nuvem privada de três nós.
A função
create_private_cloudretorna um objeto de operações que pode ser usado para verificar o progresso da operação.Verifique o status da operação. Busca informações atuais sobre uma operação.
Use o método de membro
.result()do objeto de operação para aguardar a conclusão.Conecte a rede do VMware Engine à sua VPC usando o peering de conexões de VPC.
Recupere as credenciais do vCenter e do NSX.
À medida que o VMware Engine cria sua nova nuvem privada, ele implanta um número de componentes do VMware e divide o intervalo de endereços IP fornecido em sub-redes. A criação da nuvem privada pode levar de 30 minutos a 2 horas. Depois que o provisionamento for concluído, você receberá um e-mail.
A seguir
- Receber credenciais de login para dispositivos de gerenciamento.
- Gerenciar recursos e atividades de nuvem privada.