Como provisionar VMs em nós de locatário individual

Nesta página, descrevemos como provisionar instâncias de VM em nós de locatário individual. Os nós de locatário individual são servidores físicos dedicados à execução das VMs do projeto específico. Antes de provisionar VMs em nós de locatário individual, leia a visão geral dos nós de locatário individual.

O processo de provisionamento de VMs em nós de locatário individual inclui:

  1. Como criar um modelo de nó de locatário individual para especificar as propriedades do nó
  2. Como criar um grupo de nós de locatário individual a partir do modelo
  3. Como criar VMs para usar nós de locatário individual

Antes de começar

Como criar um modelo de nó de locatário individual

Antes de criar grupos de nós e provisionar VMs nesses grupos, crie um modelo de nó de locatário individual. Um modelo de nó é um recurso regional que define as propriedades do nó para grupos em nós criados a partir do modelo.

Console

  1. No Console do Google Cloud, acesse a página Nós de locatário individual.

    Acesse "nós de locatário individual"

  2. Clique em Modelos de nó.

  3. Clique em Criar um modelo de nó para começar a criar um modelo de nó.

  4. Especifique um Nome para o modelo de nó.

  5. Especifique uma Região. É possível usar o modelo de nó para criar grupos de nós em qualquer zona dessa região.

  6. Especifique o Tipo de nó para cada nó de locatário individual no grupo de nós que você criará com base nesse modelo de nó.

  7. Adicione rótulos de afinidade de nó. Os rótulos de afinidade permitem programar VMs usando locatário único. Os nós em grupos de nós criados a partir desse modelo usam apenas esses rótulos de afinidade. Não é possível adicionar rótulos de afinidade a um grupo de nós separadamente. Para mais informações, consulte Afinidade e antiafinidade de nós.

  8. Clique em Criar para concluir a criação do modelo de nó.

gcloud

  1. Use o comando compute sole-tenancy node-types list para ver uma lista de tipos de nós de locatário individual disponíveis em cada zona do Google Cloud.

    gcloud compute sole-tenancy node-types list
    
  2. Use o comando compute sole-tenancy node-templates create para criar um novo modelo de nó ao especificar o tipo de nó:

    gcloud compute sole-tenancy node-templates create template-name \
      --region=region \
      --node-type=node-type \
      --node-affinity-labels=affinity-labels \
      --server-binding=server-binding
    

    Substitua estes itens:

    • template-name: nome do novo modelo de nó.
    • region: região em que você usará esse modelo.

    • node-type: tipo de nó para o modelo. Por exemplo, selecione o tipo n2-node-80-640 para criar um nó com 80 vCPUs e 624 GB de memória.

    • affinity-labels: chaves e valores para rótulos de afinidade. Esses rótulos permitem programar instâncias de VM usando um locatário individual. Os nós em grupos de nós criados a partir desse modelo usam apenas esses rótulos de afinidade. Não é possível adicionar rótulos de afinidade a um grupo de nós separadamente. Para mais informações, consulte rótulos de afinidade de nó.

    • server-binding: permite controlar como o Google Cloud mapeia os nós para servidores físicos. Especifique restart-node-on-any-server ou omita a sinalização server-binding para permitir que o Google Cloud provisione qualquer servidor físico para atuar como um nó após um evento de manutenção de nó. Especifique restart-node-on-minimal-servers para forçar o Google Cloud a usar o mesmo servidor físico para o nó. Para mais informações, consulte --server-binding.

API

  1. Use o método compute.nodeTypes.list para ver uma lista de tipos de nó:

    GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/nodeTypes
    

    Substitua estes itens:

    • project-id: o ID do projeto.
    • zone: a zona do Google Cloud em que serão recuperados os tipos de nó disponíveis.
  2. Use o método compute.nodeTemplates.insert para criar um modelo de nó que usa um tipo de nó:

    POST https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/nodeTemplates
    
        {
         "name": "template-name",
         "nodeType": "node-type",
         "nodeAffinityLabels": {
             "key": "value",
             ....
         },
         "serverBinding":
         {
             "type": "server-binding"
         }
        }
    

    Substitua estes itens:

    • project-id: o ID do projeto.
    • region: a região do Google Cloud em que o modelo de nó será criado. É possível usar esse modelo para criar grupos de nós em qualquer zona dessa região.
    • template-name: o nome do modelo de nó a ser criado.

    • node-type: tipo de nó para o modelo. Por exemplo, selecione o tipo de nó n2-node-80-640 para criar um nó com 80 vCPUs e 640 GB de memória.

    • Use nodeAffinityLabels para especificar os pares key e value que definem rótulos de afinidade de nó. Esses rótulos permitem programar instâncias de VM usando um locatário individual. Os nós em grupos de nós criados a partir desse modelo usam apenas esses rótulos de afinidade. Não é possível adicionar rótulos de afinidade a um grupo de nós separadamente. Para mais informações, consulte rótulos de afinidade de nó.

    • server-binding: permite controlar como o Google Cloud mapeia nós para servidores físicos com esse parâmetro. Especifique restart-node-on-any-server ou omita o parâmetro serverBinding para permitir que o Google Cloud provisione qualquer servidor físico para atuar como um nó após um evento de manutenção de nó. Especifique restart-node-on-minimal-servers para forçar o Google Cloud a usar o mesmo servidor físico para o nó. Para mais informações, consulte --server-binding.

Como criar um grupo de nó de locatário individual

Depois de criar um modelo de nó, crie um grupo de nós com base nesse modelo. Ao criar um grupo de nós, você precisa especificar os seguintes valores, que se aplicam a cada nó no grupo:

  • Região: escolha a região que contém o modelo de nó a ser aplicado ao grupo de nós.

  • Zona: escolha a zona na região em que você quer criar o grupo de nós.

  • Modelo de nó: escolha o modelo de nó a partir do qual você quer criar o grupo de nós.

  • Número de nós: especifique o número de nós de locatário individual que serão criados no grupo de nós e use o escalonador automático de grupo de nós para gerenciar o tamanho dos grupos de nós. Dependendo do número de nós criados, talvez seja necessário solicitar uma cota adicional. Por exemplo, se você criar um grupo de nós de tamanho 2 e escolher n2-node-80-640 como o tipo de nó, precisará de uma cota de vCPU de pelo menos 160.

  • Política de manutenção: especifique a política de manutenção das VMs durante os eventos de manutenção do host. Escolha se as VMs no host serão migradas em tempo real para um novo servidor físico, migradas em tempo real dentro do pool de servidores físicos usados pelo grupo de nós ou encerradas e reiniciadas no mesmo servidor físico. Use a política de manutenção padrão, a menos que você tenha requisitos de afinidade de servidor físico. Por exemplo, se tiver licenças de software avaliadas por núcleo físico.

  • Grupos de nós com escalonamento automático: ative o escalonador automático do grupo de nós para que o número de nós no grupo seja aumentado ou diminuído automaticamente para atender suas necessidades.

Console

  1. No Console do Google Cloud, acesse a página Nós de locatário individual.

    Acessar "Nós de locatário individual"

  2. Clique em Criar grupo de nós para começar a criar um grupo de nós.

  3. Especifique um Nome para o grupo de nós.

  4. Especifique a Região do grupo de nós para exibir os modelos de nó disponíveis nessa região.

  5. Especifique a Zona na região em que você quer executar o grupo de nós.

  6. Especifique o modelo de nó que você quer usar. Você precisa ter um modelo de nó na região selecionada.

  7. Especifique o número de nós que quer executar no grupo. É possível alterar esse número manualmente mais tarde ou ativar o escalonador automático do grupo de nós. O escalonador automático do grupo de nós está atualmente na versão Beta.

  8. Especifique a política de manutenção:

    • Padrão: migra em tempo real a VM para um novo servidor físico.
    • Reiniciar no local: reinicia as VMs no mesmo servidor físico.
    • Migrar dentro do grupo de nós: migra a VM dentro do grupo de nós.
  9. Clique em Criar para concluir a criação do grupo de nós.

gcloud

Execute o comando a seguir para criar um grupo de nós com base em um modelo de nó criado anteriormente:

gcloud compute sole-tenancy node-groups create group-name \
  --zone=zone \
  --node-template=template-name \
  --target-size=target-size \
  --maintenance-policy=maintenance-policy \
  --autoscaler-mode=autoscaler-mode \
  --min-nodes=min-nodes \
  --max-nodes=max-nodes

Substitua:

  • group-name: nome do novo grupo de nós.
  • zone: a zona em que o grupo de nós será criado. Precisa ser a mesma região do modelo de nó em que você está baseando o grupo de nós.
  • template-name: nome do modelo de nó a ser usado para criar este grupo.
  • target-size: número de nós a serem criados no grupo;
  • maintenance-policy: política de manutenção para o grupo de nós. Precisa ser um dos seguintes:
    • default: as VMs são migradas em tempo real para um novo servidor físico.
    • migrate-within-node-group: as VMs são migradas em tempo real para outro nó no grupo de nós. Essa política está na versão Beta e precisa ser especificada usando o comando gcloud beta compute sole-tenancy node-groups create.
    • restart-in-place: as VMs são encerradas e reiniciadas no mesmo servidor físico após o evento de manutenção.
  • autoscaler-mode: política do escalonador automático para o grupo de nós. Precisa ser um dos seguintes:
    • off: desativa o escalonamento automático no grupo de nós.
    • on: ativa o escalonamento automático no grupo de nós.
    • only-scale-out: ativar apenas o escalonamento automático.
  • min-nodes: tamanho mínimo do grupo de nós. O padrão é 0 e precisa ser um valor inteiro menor ou igual a max- nodes.
  • max-nodes: o tamanho máximo do grupo de nós. Precisa ser menor ou igual a 100 e maior ou igual a min- nodes. Obrigatório, se autoscaler-mode não estiver definido como off.

API

Depois de criar o modelo, crie um grupo de nós. Use o método nodeGroups.insert para criar um grupo de nós:

POST https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/nodeGroups?initialNodeCount=target-size
{ "nodeTemplate": "regions/region/nodeTemplates/template-name", "name": "group-name", "maintenancePolicy": maintenance-policy, "autoscalingPolicy": { "mode": autoscaler-mode, "minNodes": min-nodes, "maxNodes": max-nodes }, }

Substitua:

  • project-id: ID do projeto.
  • zone: a zona em que o grupo de nós será criado. Precisa estar na mesma região do modelo de nó em que você está baseando o grupo de nós.
  • target-size: número de nós a serem criados no grupo;
  • region: região em que o modelo do nó que baseará este grupo está localizado.
  • template-name: nome do modelo de nó a ser usado para criar este grupo.
  • group-name: nome do novo grupo de nós.
  • maintenance-policy: política de manutenção para o grupo de nós. Precisa ser um dos seguintes:
    • DEFAULT: as VMs seguem o comportamento de manutenção tradicional durante eventos de manutenção do host e podem migrar em tempo real para um novo host, se a VM estiver configurada para migrar durante eventos de manutenção do host. As VMs não configuradas para migração durante eventos de manutenção do host serão encerradas.
    • MIGRATE_WITHIN_NODE_GROUP: as VMs são migradas em tempo real para outro nó no grupo de nós. Essa política está na versão Beta e precisa ser especificada com o comando gcloud beta compute sole-tenancy node-groups create.
    • RESTART_IN_PLACE: as VMs são encerradas e reiniciadas no mesmo servidor físico após o evento de manutenção.
  • autoscaler-mode: política do escalonador automático para o grupo de nós. Precisa ser um dos seguintes:
    • OFF: desativa o escalonamento automático no grupo de nós.
    • ON: ativa o escalonamento automático no grupo de nós.
    • ONLY_SCALE_OUT: ativar apenas o escalonamento automático.
  • max-nodes: o tamanho máximo do grupo de nós. Precisa ser menor ou igual a 100 e maior ou igual a min- nodes. Precisa ser especificado se autoscaler-mode não estiver definido como off.
  • min-nodes: tamanho mínimo do grupo de nós. O padrão é 0 e precisa ser um valor inteiro menor ou igual a max-nodes.

Como provisionar VMs individuais em um nó de locatário individual

Depois de criar um grupo de nós com base em um modelo de nó, provisione VMs individuais diretamente em um nó ou grupo de nós de locatário individual usando qualquer tipo de máquina predefinido ou personalizado com duas ou mais vCPUs. Quando você provisiona uma VM dessa maneira, o Compute Engine atribui automaticamente rótulos de afinidade com base no nó ou grupo de nós em que você provisiona a VM.

O procedimento abaixo descreve como provisionar uma VM individual em um grupo de nós.

Console

  • Como usar rótulos de afinidade de nó: siga o procedimento padrão para criar uma instância de VM usando o Console do Cloud para associar uma nova instância de VM a um nó de locatário individual usando rótulos de afinidade.

  • Como alternativa, crie uma instância de VM na página de detalhes do grupo de nós:

    1. No Console do Google Cloud, acesse a página Nós de locatário individual.

      Acessar "Nós de locatário individual"

    2. Clique em Grupos de nós.

    3. Clique no Nome do grupo de nós em que uma instância de VM será provisionada.

    4. Clique em criar instância para provisionar uma instância de VM nesse grupo de nós e observe os valores aplicados automaticamente pelo Compute Engine para região, zona, configuração da máquina, rótulos de afinidade de nó, manutenção no host e reinicialização automática e modifique os valores de acordo com os requisitos da carga de trabalho.

    5. Clique em Criar para concluir a criação dessa instância.

gcloud

Provisione uma VM com um tipo de máquina personalizado em um grupo de nós com o seguinte comando:

gcloud compute instances create vm-name \
  --zone=zone \
  --image-family=image-family \
  --image-project=image-project \
  --node-group=group-name \
  --custom-cpu=vcpus \
  --custom-memory=memory \
  --maintenance-policy=maintenance-policy \
  --restart-on-failure

Substitua:

  • vm-name: nome da nova VM;
  • zone: zona em que a nova VM será criada.
  • image-family: família de imagens que contém a imagem a ser usada para criar a VM.
  • image-project: projeto de imagem ao qual a família de imagens pertence.
  • group-name: nome do grupo de nós para provisionar a VM.
  • vcpus: número de vCPUs a serem usadas com essa VM.
  • memory: quantidade de memória em incrementos de 256 MB. Por exemplo, 5,25 GB ou 5376 MB.
  • maintenance-policy: especifica o comportamento das VMs durante a manutenção. Defina como um dos seguintes:
    • MIGRATE: VMs migradas para o novo host.
    • TERMINATE: VMs encerradas.
  • --restart-on-failure: parâmetro que indica se as VMs serão reiniciadas após o encerramento. Use --no-restart-on- failure para desativar.

API

Provisione uma VM com um tipo de máquina personalizado em um grupo de nós com a seguinte solicitação REST instances.insert:

POST https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instances
{ "machineType": "zones/zone/machineTypes/custom-vcpus-memory", "name": "vm-name", "scheduling": { "onHostMaintenance": maintenance-policy, "automaticRestart": restart-on-failure, "nodeAffinities": [ { "key": "compute.googleapis.com/node-group-name", "operator": "IN", "values": [ "group-name" ] } ] }, "networkInterfaces": [ { "network": "global/networks/network", "subnetwork": "regions/region/subnetworks/subnetwork" } ], "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/image-project/global/images/family/image-family" } } ] }

Substitua:

  • project-id: ID do projeto.
  • zone: zona em que a nova VM será criada.
  • vcpus: número de vCPUs a serem usadas com essa VM.
  • memory: quantidade de memória em incrementos de 256 MB. Por exemplo, 5,25 GB ou 5376 MB.
  • vm-name: nome da nova VM;
  • maintenance-policy: especifica o comportamento das VMs durante a manutenção. Defina como um dos seguintes:
    • MIGRATE: VMs migradas para o novo host.
    • TERMINATE: VMs encerradas.
  • restart-on-failure: parâmetro que indica se as VMs serão reiniciadas após o encerramento. O padrão é true.
  • group-name: nome do grupo de nós para provisionar a VM.
  • network: URL da rede para esta VM.
  • region: região que contém a sub-rede desta VM.
  • subnetwork: URL da sub-rede desta VM.
  • image-project: projeto de imagem ao qual a família de imagens pertence.
  • image-family: família de imagens que contém a imagem a ser usada para criar a VM.

Como provisionar várias VMs em um nó de locatário individual

Para provisionar várias VMs idênticas simultaneamente em um nó ou grupo de nós, use grupos de instâncias gerenciadas (MIGs, em inglês) e use um rótulo de afinidade para especificar em qual nó ou grupo de nós de locatário individual o grupo de instâncias será executado.

Para gerenciar automaticamente o tamanho de um grupo de instâncias gerenciadas, use o escalonador automático MIG. Já para gerenciar automaticamente o tamanho dos grupos de nós, use o escalonador automático de grupo de nós.

O comando a seguir mostra como criar um grupo de instâncias gerenciadas com um tipo de máquina personalizado.

gcloud

  1. Crie um modelo MIG dentro do grupo de nós usando o comando gcloud compute instance-templates create:

    gcloud compute instance-templates create instance-template \
    --image-family=image-family \
    --image-project=image-project \
    --node-group=group-name \
    --custom-cpu=vcpus \
    --custom-memory=memory
    

    Substitua:

    • instance-template: nome do novo modelo de instância.
    • image-family: família de imagens que contém a imagem a ser usada para criar a VM.
    • image-project: projeto de imagem ao qual a família de imagens pertence.
    • group-name: nome do grupo de nós para provisionar a VM.
    • vcpus: número de vCPUs a serem usadas com essa VM.
    • memory: quantidade de memória em incrementos de 256 MB. Por exemplo, 5,25 GB ou 5376 MB.
  2. Crie um grupo de instâncias usando o comando gcloud compute instance-groups managed create:

    gcloud compute instance-groups managed create instance-group-name --zone zone --size size --template instance-template
    

    Substitua:

    • instance-group-name: nome do grupo de instâncias.
    • zone: zona em que o grupo de instâncias gerenciadas será criado.
    • size: número de VMs a serem incluídas neste grupo de instâncias. O grupo de nós precisa ter recursos suficientes para acomodar as instâncias nesse grupo de instâncias gerenciadas.
    • instance-template: nome do modelo de instância a ser usado para criar este grupo. O modelo precisa ter uma afinidade de nó que aponte para o grupo de nós apropriado.

API

  1. Crie um modelo MIG dentro do grupo de nós usando a solicitação REST instanceTemplates.insert:

    POST https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instance-templates
    { "name": "template-name", "properties": { "machineType": "custom-vcpus-memory", "scheduling": { "nodeAffinities": [ { "key": "compute.googleapis.com/node-group-name", "operator": "IN", "values": [ "group-name" ] } ] }, "networkInterfaces": [ { "network": "global/networks/network", "subnetwork": "regions/region/subnetworks/subnetwork" } ], "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/image-project/global/images/family/image-family" } } ] } }

    Substitua:

    • project-id: ID do projeto.
    • zone: zona em que o novo modelo de instância será criado.
    • template-name: nome do novo modelo de instância.
    • vcpus: número de vCPUs a serem usadas para cada VM no grupo de instâncias.
    • memory: quantidade de memória em incrementos de 256 MB para cada VM no grupo de instâncias. Por exemplo, 5,25 GB ou 5376 MB.
    • group-name: nome do grupo de nós para provisionar a VM.
    • network: URL da rede para esta VM.
    • region: região que contém a sub-rede desta VM.
    • subnetwork: URL da sub-rede desta VM.
    • image-project: projeto de imagem ao qual a família de imagens pertence.
    • image-family: família de imagens que contém a imagem a ser usada para criar a VM.
  2. Crie um grupo de instâncias usando o comando instanceGroupManagers.create:

    POST https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers
    {
     "baseInstanceName": "name-prefix",
     "name": "instance-group-name",
     "targetSize": sizevar>,
     "instanceTemplate": "global/instanceTemplates/instance-template"
    }
    

    Substitua:

    • project-id: ID do projeto.
    • zone: zona em que o grupo de instâncias gerenciadas será criado.
    • name-prefix: nome do prefixo de cada uma das instâncias no seu grupo de instâncias gerenciadas.
    • instance-group-name: nome do grupo de instâncias.
    • size: número de VMs a serem incluídas neste grupo de instâncias. O grupo de nós precisa ter recursos suficientes para acomodar as instâncias nesse grupo de instâncias gerenciadas.
    • instance-template: nome do modelo de instância que você quer usar para criar este grupo. O modelo precisa ter uma afinidade de nó que aponte para o grupo de nós apropriado.

Exemplo de afinidade de instância

Os rótulos de afinidade de nós permitem agrupar logicamente grupos de nós e programar VMs em um conjunto específico de grupos de nós. Também é possível usar rótulos de afinidade de nó para programar VMs em grupos de nós em diferentes zonas e ainda manter os grupos de nós em um grupo lógico. O procedimento a seguir é um exemplo de como usar rótulos de afinidade para associar VMs a um grupo de nós específico:

gcloud

  1. Crie um modelo de nó com um conjunto de rótulos de afinidade para uma carga de trabalho de produção:

    gcloud compute sole-tenancy node-templates create production-template --node-type=n2-node-80-640 --node-affinity-labels workload=frontend,environment=prod
    
  2. Crie outro modelo de nó com um conjunto de rótulos de afinidade para a carga de trabalho de desenvolvimento:

    gcloud compute sole-tenancy node-templates create development-template --node-type=n2-node-80-640 --node-affinity-labels workload=frontend,environment=dev
    
  3. Crie diversos grupos de nós usando os modelos de produção e desenvolvimento. Por exemplo, convém ter um grupo de nós de produção grande e vários grupos de nós de desenvolvimento menores. Outra opção é criar esses grupos em zonas diferentes e com tamanhos de destino distintos para acomodar a escala das cargas de trabalho:

    gcloud compute sole-tenancy node-groups create production-group --node-template production-template --target-size 5 --zones us-west1-b
    
    gcloud compute sole-tenancy node-groups create development-group-east1 --node-template development-template --target-size 1 --zones us-east1-d
    
    gcloud compute sole-tenancy node-groups create development-group-east2 --node-template development-template --target-size 1 --zones us-east1-d
    
  4. Para as VMs de produção, crie um arquivo node-affinity-prod.json para especificar a afinidade das VMs de produção. Por exemplo, é possível criar um arquivo que instrui as VMS a serem executadas somente em nós com afinidades workload=frontend e environment=prod:

    [
      {
        "key" : "workload",
        "operator" : "IN",
        "values" : ["frontend"]
      },
      {
        "key" : "environment",
        "operator" : "IN",
        "values" : ["prod"]
      }
    ]
    
  5. Use o arquivo node-affinity-prod.json para criar um modelo MIG com as propriedades que você quer nas VMs de produção:

    gcloud compute instance-templates create production-template --image-family production-images --image-project my-project --node-affinity-file node-affinity-prod.json --custom-cpu 3 --custom-memory 4096
    
  6. Inicie um grupo de instâncias usando o modelo de produção MIG executado no nó de produção:

    gcloud compute instance-groups managed create production-group --zone us-west1-b --size 4 --template production-template
    

    Neste ponto, as VMs no grupo são iniciadas e executadas apenas nos grupos de nós que têm as afinidades workload=frontend e environment=prod.

Exemplo de antiafinidade de instância

Use rótulos antiafinidade para garantir que suas VMs não sejam provisionadas em nós. Por exemplo, crie algumas VMs para fins de desenvolvimento, mas impeça que o Compute Engine as programe nos mesmos nós que hospedam as VMs de produção. O procedimento a seguir é um exemplo de como usar rótulos de afinidade para garantir que as VMs não estejam associadas a grupos de nós específicos:

gcloud

  1. Para instâncias de desenvolvimento, crie um arquivo node-affinity-dev.json para especificar a afinidade das VMs de desenvolvimento. Por exemplo, crie um arquivo que configure VMs para serem executadas em qualquer grupo de nós com a afinidade workload=frontend, desde que ele não seja environment=prod:

    [
      {
        "key" : "workload",
        "operator" : "IN",
        "values" : ["frontend"]
      },
      {
        "key" : "environment",
        "operator" : "NOT",
        "values" : ["prod"]
      }
    ]
    
  2. Para desenvolvimento, crie uma VM individual de teste, em vez de um grupo de instâncias inteiro. Use o arquivo node-affinity-dev.json para criar essa VM. Por exemplo, se você quiser testar uma imagem de desenvolvimento específica chamada development-image-1, crie a VM e configure as afinidades com este comando:

    gcloud compute instances create dev-1 --image development-image-1 --image-project my-project --node-affinity-file node-affinity-dev.json --custom-cpu 3 --custom-memory 4096 --zone us-east1-d
    

    Esta instância é iniciada e executada somente nos grupos de nós que têm workload=frontend. No entanto, essa VM não será executada em nenhum grupo de nós configurado com environment=prod affinity.

Como excluir um modelo de nó

É possível excluir um modelo de nó depois de excluir todos os grupos de nós usando o modelo.

Console

  1. No Console do Google Cloud, acesse a página Nós de locatário individual.

    Acessar a página "Nós de locatário individual"

  2. Clique em Modelos de nó.

  3. Selecione o nome de um modelo de nó não utilizado.

  4. Clique em Excluir.

gcloud

Use o comando compute sole-tenancy node-templates delete para excluir um modelo de nó não usado:

gcloud compute sole-tenancy node-templates delete template-name \
    --region=region

Substitua estes itens:

  • template-name: nome do modelo de nó a ser excluído.
  • region: região do modelo de nó.

API

Use o método compute.nodeTemplates.delete para excluir um modelo de nó não utilizado:

 DELETE https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/nodeTemplates/template-name
 

Substitua estes itens:

  • project-id: o ID do projeto.
  • region: a região do Google Cloud que contém o modelo de nó.
  • template-name: o nome do modelo de nó a ser excluído.

Como excluir um grupo de nós

É possível excluir um grupo de nós, desde que nenhuma instância de VM esteja em execução nele.

Console

  1. Acessar a página Nós de locatário individual.

    Acessar a página "Nós de locatário individual"

  2. Clique no nome do grupo de nós a ser excluído.

  3. Para cada nó no grupo de nós, clique no nome do nó. Verifique se nenhuma instância de VM está em execução nele.

  4. É possível excluir instâncias de VM individuais na página de detalhes do nó ou seguir o procedimento padrão para excluir uma instância de VM individual. Para excluir instâncias em um grupo de instâncias gerenciadas, é necessário excluir o grupo de instâncias gerenciadas.

  5. Depois de excluir todas as instâncias de VM em execução em todos os nós do grupo, retorne à página Nós de locatário individual.

    Acessar a página Nós de locatário individual

  6. Clique em Grupos de nós.

  7. Selecione o nome do grupo de nós que você precisa excluir.

  8. Clique em Excluir.

gcloud

  1. Liste instâncias de VM em execução em nós no grupo de nós usando o comando compute sole-tenancy node-groups list-nodes:

    gcloud compute sole-tenancy node-groups list-nodes group-name \
     --zone=zone
    

    Substitua estes itens:

    • group-name: o nome do grupo de nós.
    • zone: a zona do grupo de nós.
  2. Se houver instâncias de VM em execução no grupo de nós, siga o procedimento padrão para excluir uma instância de VM individual ou o procedimento padrão para excluir um grupo de instâncias gerenciadas, conforme necessário.

  3. Depois de excluir todas as instâncias de VM em execução em todos os nós do grupo, exclua o grupo usando o comando compute sole-tenancy node-groups delete:

    gcloud compute sole-tenancy node-groups delete group-name \
     --zone=zone
    

    Substitua estes itens:

    • group-name: o nome do grupo de nós.
    • zone: a zona do grupo de nós.

A seguir