Para poder fazer o autoatendimento de VMs em vSphere with Tanzu, os usuários de DevOps devem ter acesso a classes de VM. Uma classe de VM é um modelo que define CPU, memória e reservas para VMs. A classe VM ajuda a definir proteções para a política e o controle das VMs, antecipando as necessidades de desenvolvimento e contabilizando a disponibilidade e as restrições de recursos.

vSphere with Tanzu oferece várias classes de VM padrão. Um administrador do vSphere pode usá-los como estão ou criar classes de VM personalizadas. Para disponibilizar as classes para os usuários de DevOps, o administrador vSphere as adiciona a um namespace. As classes de VM atribuídas ao namespace podem ser usadas por VMs autônomas e pelas VMs que compõem clusters Tanzu Kubernetes Grid.

Criar uma classe de VM personalizada em vSphere with Tanzu

Como administrador do vSphere, você pode usar as classes padrão disponíveis. Você também pode criar classes de VM personalizadas em vez do padrão e usá-las para implantação de VM em um namespace.

Ao criar novas classes, lembre-se das seguintes considerações.
  • As classes de VM que você cria em uma instância vCenter Server estão disponíveis para todos os clusters vCenter Server e todos os namespaces nesses clusters.
  • As classes de VM estão disponíveis para todos os namespaces em vCenter Server. No entanto, os engenheiros de DevOps podem usar apenas as classes de VM que você associa a um namespace específico.

Pré-requisitos

Privilégios necessários:
  • Namespaces.Modificar configuração em todo o cluster
  • Namespaces.Modificar configuração de namespace
  • Classes de máquina virtual.Gerenciar classes de máquina virtual

Procedimento

  1. Vá para a página Serviço de VM (VM Service).
    1. No menu inicial vSphere Client, selecione Gerenciamento de carga de trabalho (Workload Management).
    2. Clique na guia Serviços (Services) e clique em Gerenciar (Manage) no painel Serviço de VM (VM Service).
  2. Na página VM Service, clique em VM Classes e clique em Create VM Class.
  3. Na página Configuração (Configuration), especifique os atributos gerais de classe da VM.
    Atributo de classe da VM Descrição
    Nome Identifica a classe da VM. Insira um nome exclusivo compatível com DNS que siga estes requisitos:
    • Use um nome exclusivo que não duplique os nomes das classes de VM padrão ou personalizadas em seu ambiente.
    • Use uma sequência alfanumérica com comprimento máximo de 63 caracteres.
    • Não use letras maiúsculas ou espaços.
    • Use um traço em qualquer lugar, exceto como primeiro ou último caractere. Por exemplo, vm-class1.
    Depois de criar a classe de VM, você não pode alterar seu nome.
    Contagem de vCPU Define o número de CPUs virtuais (vCPUs) para uma VM. Esta é uma configuração de hardware de VM. Quando um usuário de DevOps atribui a classe de VM a uma VM, essa contagem se torna o número configurado de vCPUs para a VM.
    Reserva de recursos da CPU Parâmetro opcional. Especifica a alocação mínima garantida de recursos de CPU para uma máquina virtual. Esse valor é expresso em porcentagem (%). O valor de 0 % não define nenhuma reserva de CPU.

    A porcentagem que você insere é multiplicada pela CPU mínima disponível entre todos os nós do cluster. O valor resultante, em MHz, especifica a quantidade de recursos de CPU que vSphere garante para uma VM.

    Memória Define a memória configurada para uma VM em MB, GB ou TB. Esta é uma configuração de hardware de VM. Quando um usuário de DevOps atribui a política de classe de VM a uma VM, a VM recebe a quantidade de memória definida por esse atributo.

    O valor deve estar entre 4 MB e 24 TB e um múltiplo de 4 MB.

    Reserva de recursos de memória Parâmetro opcional. Define a quantidade reservada de memória configurada para uma VM. O valor do atributo varia entre 0 e 100%.

    Se você adicionar dispositivos PCI à configuração da classe de VM, defina o parâmetro como 100%.

  4. (Opcional) Adicionar configuração avançada.
    Opção Descrição
    Dispositivos PCI Se os hosts ESXi em seu ambiente vSphere with Tanzu tiverem um ou mais dispositivos gráficos NVIDIA GRID GPU, você poderá configurar VMs para usar a tecnologia NVIDIA GRID virtual GPU (vGPU). Você também pode configurar outros dispositivos PCI em um host ESXi para disponibilizá-los para uma VM em um modo de passagem.

    Se você selecionar essa opção, o valor da reserva do recurso de memória será alterado automaticamente para 100%.

    Para obter requisitos e detalhes adicionais, consulte Adicionar dispositivos PCI a uma classe de VM em vSphere with Tanzu.

    Armazenamento de instâncias Juntamente com os volumes de armazenamento persistentes, uma VM pode usar o armazenamento de instâncias. Ao contrário dos volumes persistentes que existem separadamente da VM, os volumes de armazenamento de instâncias dependem do ciclo de vida de uma instância de VM.

    Usando a opção Armazenamento de Instância, você pode adicionar políticas de armazenamento apropriadas e configurar volumes a serem usados com a VM.

    Para obter requisitos adicionais, consulte Implantando uma VM com armazenamento de instâncias em vSphere with Tanzu.

  5. Na página Revisar e confirmar (Review and Confirm), revise os detalhes e clique em Concluir (Finish).

Editar ou excluir uma classe de VM em vSphere with Tanzu

Depois de criar uma classe de VM, você pode editar seus parâmetros. Você também pode editar as classes de VM padrão que o vSphere with Tanzu oferece. Se você não precisar mais de uma classe de VM existente, poderá excluí-la do seu ambiente.

A edição de uma classe de VM não resulta na reconfiguração automática das VMs que foram implantadas anteriormente a partir dessa classe. Por exemplo, se um usuário de DevOps tiver criado um cluster Tanzu Kubernetes Grid com a classe VM e você alterar posteriormente a definição de classe da VM, as VMs Tanzu Kubernetes Grid existentes não serão afetadas. As novas VMs Tanzu Kubernetes Grid usarão a definição de classe modificada.
Cuidado: Se você dimensionar horizontalmente um cluster Tanzu Kubernetes Grid depois de editar uma classe de VM usada por esse cluster, os novos nós de cluster usarão a definição de classe atualizada, mas os nós de cluster existentes continuarão a usar a definição de classe inicial, resultando em uma incompatibilidade. Tanto o plano de controle quanto os nós do trabalhador podem ser dimensionados. Para obter informações sobre dimensionamento, consulte Escalar um cluster de carga de trabalho no Usando Tanzu Kubernetes Grid 2 com vSphere with Tanzu.

Quando você exclui uma classe de VM, ela é removida de todos os namespaces associados. Os usuários de DevOps não podem mais fazer o autoatendimento de VMs usando essa classe de VM. As VMs que já foram criadas com essa classe de VM não são afetadas.

Pré-requisitos

Privilégios necessários:
  • Namespaces.Modificar configuração em todo o cluster
  • Namespaces.Modificar configuração de namespace
  • Classes de máquina virtual.Gerenciar classes de máquina virtual

Procedimento

  1. No vSphere Client, exiba as classes de VM disponíveis.
    1. No menu inicial vSphere Client, selecione Gerenciamento de carga de trabalho (Workload Management).
    2. Clique na guia Serviços (Services) e clique no painel Serviço de VM (VM Service).
    3. Na página VM Service, clique em VM Classes.
      Todas as classes de VM padrão ou criadas pelo usuário aparecem em Classes de VM disponíveis (Available VM Classes).
  2. Edite ou exclua uma classe de VM existente.
    Opção Descrição
    Editar uma classe de VM
    1. No painel de classe de VM selecionado, clique em Gerenciar (Manage) e clique em Editar (Edit).
    2. Modifique os parâmetros de classe da VM.
      Observação: Você não pode alterar o nome da classe de VM.
    Excluir uma classe de VM
    1. No painel de classe de VM selecionado, clique em Gerenciar (Manage) e clique em Excluir (Delete).
    2. Confirme que você deseja excluir a classe de VM.

Associar uma classe de VM a um namespace em vSphere with Tanzu

Como administrador do vSphere, adicione uma classe de VM padrão ou personalizada a um ou mais namespaces em um Supervisor. Ao adicionar uma classe de VM a um namespace, você a disponibiliza aos usuários de DevOps para que eles possam iniciar VMs de autoatendimento no ambiente de namespace Kubernetes. As classes de VM que você atribui ao namespace também são usadas pelas VMs que compõem os clusters Tanzu Kubernetes Grid.

Você pode adicionar várias classes de VM a um único namespace. Diferentes classes de VM servem como indicadores de diferentes níveis de serviço. Se você publicar várias classes de VM, os usuários de DevOps poderão selecionar entre todas as classes personalizadas e padrão ao criar e gerenciar máquinas virtuais no namespace.

Observação:

Para poder implantar um cluster Tanzu Kubernetes Grid em um namespace recém-criado, os engenheiros de DevOps precisam ter acesso a classes de VM. Como administrador do vSphere, você deve associar explicitamente as classes de VM padrão ou personalizadas a qualquer novo namespace em que o cluster Tanzu Kubernetes Grid esteja implantado.

Pré-requisitos

Privilégios necessários:
  • Namespaces.Modificar configuração em todo o cluster
  • Namespaces.Modificar configuração de namespace
  • Classes de máquina virtual.Gerenciar classes de máquina virtual

Procedimento

  1. No vSphere Client, vá para o namespace.
    1. No menu inicial vSphere Client, selecione Gerenciamento de carga de trabalho (Workload Management).
    2. Clique na guia Namespaces e clique no namespace.
  2. Adicione uma classe de VM.
    1. No painel Serviço de VM (VM Service), clique em Adicionar classe de VM (Add VM Class).
    2. Selecione uma ou várias classes de VM e clique em OK.

Resultados

As classes de VM que você adicionou ficam disponíveis no namespace do DevOps para VMs de autoatendimento. Essas classes também podem ser usadas pelas VMs que compõem os clusters Tanzu Kubernetes Grid.

Gerenciar classes de VM em um namespace em vSphere with Tanzu

Depois de associar uma classe de VM a um namespace, você pode adicionar mais classes de VM ou remover a classe para cancelar a publicação do namespace Kubernetes.

Pré-requisitos

  • Se você quiser remover uma classe de VM de um namespace, verifique se ela não é usada por Tanzu Kubernetes Grid. A remoção pode afetar as operações Tanzu Kubernetes Grid.
  • Privilégios necessários:
    • Namespaces.Modificar configuração em todo o cluster
    • Namespaces.Modificar configuração de namespace
    • Classes de máquina virtual.Gerenciar classes de máquina virtual

Procedimento

  1. No vSphere Client, vá para o namespace.
    1. No menu inicial vSphere Client, selecione Gerenciamento de carga de trabalho (Workload Management).
    2. Clique na guia Namespaces e clique no namespace.
  2. Adicione ou remova uma classe de VM.
    1. No painel VM Service, clique em Manage VM Class.
    2. Execute uma das seguintes operações.
      Opção Descrição
      Remover uma classe de VM Desmarque a classe da VM e clique em OK.
      Adicionar uma classe de VM Selecione uma ou várias classes de VM e clique em OK.