Os administradores podem disponibilizar namespaces de supervisor em uma integração do vSphere habilitada para Tanzu, para que eles possam adicionar esses namespaces a implantações do Kubernetes por meio de modelos de nuvem ou para solicitá-los no catálogo do Service Broker.

Esta tarefa descreve como adicionar clusters de supervisor do Tanzu com o Cloud Assembly para uso em implantações e como criar ou adicionar namespaces que definem quais projetos e usuários do Cloud Assembly podem acessar recursos específicos do Kubernetes. Essa funcionalidade depende de uma conta de nuvem do vSphere adequada, e não de uma integração, como o VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) ou o Openshift. Os clusters de supervisor são clusters kubernetes personalizados associados ao vSphere. Eles expõem APIs do Kubernetes aos usuários finais e usam o ESXI como plataforma para nós de trabalho em vez do Linux. Os namespaces de supervisor facilitam o controle do acesso aos recursos do Kubernetes, pois geralmente é mais fácil aplicar políticas a namespaces do que a máquinas virtuais individuais. Você pode criar vários namespaces para cada cluster de supervisor.

As implantações habilitadas pelo Tanzu também podem usar clusters guest gerados pelo vSphere. Um cluster guest é um cluster Kubernetes executado dentro de máquinas virtuais no cluster de supervisor. Um cluster guest é totalmente compatível com o Kubernetes e, portanto, é possível ter a garantia de que funcionará com todos os aplicativos do Kubernetes. Os clusters guest no vSphere usam o projeto de API de Cluster de código aberto para gerenciar o ciclo de vida dos clusters Kubernetes, que, por sua vez, usam o operador da VM para gerenciar as máquinas virtuais que compõem um guest.

Quando usadas com instâncias do vSphere ativadas para o Tanzu, as zonas do Kubernetes definem quais clusters de supervisor estão disponíveis para o provisionamento de um namespace de supervisor. Namespaces de supervisor são específicos para instâncias do vSphere ativadas para o Tanzu. Você não pode provisionar um recurso do Kubernetes genérico para uma instância do vSphere ativada para o Tanzu.

Os usuários do Cloud Assembly designados como espectadores de projeto têm acesso somente exibição a namespaces, enquanto membros de projetos podem editá-los.

Você poderá configurar os clusters de supervisor associados namespaces, se desejar.

Pré-requisitos

  • Para usar clusters e namespaces de supervisor com o Cloud Assembly, você deve ter um endpoint do vSphere 7.x configurado. No vRealize Automation, o vSphere é instalado como parte de uma conta do vCenter Cloud. Consulte Criar uma conta de nuvem do vCenter no vRealize Automation.
  • O Tanzu deve estar habilitado na conta de nuvem do vSphere e deve conter namespaces de supervisor apropriados.
  • O vCenter e a sua implantação do vRealize Automation devem usar o mesmo Active Directory para que os usuários sejam sincronizados. Embora o provisionamento ainda funcione se esse não for o caso, os usuários do vRealize Automation não terão acesso automático ao namespace.

Procedimento

  1. Selecione Infraestrutura > Configurar > Zona de kubernetes no Cloud Assembly.
    Essa página mostra os clusters gerenciados que estão disponíveis para uso e permite que você adicione outros clusters. Você pode clicar em qualquer um dos clusters para exibir os respectivos detalhes.
  2. Selecione Nova zona do kubernetes.
  3. Especifique os detalhes da conta para a conta de nuvem do vSphere pretendida.
  4. Clique no ícone de pesquisa na caixa de texto para exibir todas as contas do vSphere ou procurar uma conta por nome.
  5. Digite um Nome e uma Descrição para a nova zona.
  6. Adicione tags de capacidade, se apropriado. Consulte Como usar tags de capacidade no Cloud Assembly para informações adicionais.
  7. Clique na guia provisionamento para selecionar o cluster do supervisor que será associado aos namespaces.
  8. Clique em Adicionar processamento para exibir e selecionar os clusters de supervisor disponíveis.
  9. Clique em Adicionar.
  10. Selecione Infraestrutura > Administração > Projetos e, em seguida, selecione o projeto que você deseja associar à zona do kubernetes.
  11. Clique na guia Provisionamento do Kubernetes, na página Projeto.
  12. Clique em Adicionar Zona do Kubernetes e adicione a zona que você acabou de criar. Você pode criar várias zonas, se aplicável, e também definir a prioridade nas zonas.
  13. Clique em Salvar.

O que Fazer Depois

Após a configuração de um namespace, a página Infraestrutura > Recursos > Kubernetes no Cloud Assembly para usuários aplicáveis exibe o namespace. Os usuários podem clicar no link de Endereço da guia Resumo para abrir as Ferramentas de CLI Kubernetes do vSphere para gerenciar o namespace. Os usuários devem ser administradores de nuvem ou membros do namespace do projeto designado para acessar um link para os detalhes do Namespace de supervisor. Além disso, os usuários podem baixar um Kubectl personalizado para usar o Namespace de supervisor. Os usuários podem fazer login no namespace do supervisor, usá-lo como fariam com qualquer outro namespace e, em seguida, criar modelos de nuvem e implantar aplicativos.

Para adicionar o namespace a um modelo de nuvem, selecione Projetar > Modelo de Nuvem e selecione um modelo de nuvem existente ou crie um novo. Em seguida, você pode selecionar o item namespace do supervisor no menu à esquerda e arrastá-lo para a tela.

É possível atribuir políticas de armazenamento a um namespace de supervisor usando tags. É possível adicionar tags, como location:local, para especificar a zona Kubernetes que você deseja usar com a implantação e outras tags nos seus perfis de armazenamento, como speed:fast e speed:slow.

formatVersion: 1
resources:
  Cloud_SV_Namespace_1:
  type: Cloud.SV.Namespace
  properties:
    name: 'a'
    storage:
      -profile:
         constraints:
           - tag: 'speed:fast'
      -profile:
        liimitMB:1000
        constraints:
           -tag: 'speed:slow'

Esse modelo de nuvem solicita um namespace de supervisor sem restrições e especifica dois perfis de armazenamento com ele.

Depois que você implantar modelos de nuvem contendo um namespace de supervisor, os usuários também poderão solicitar namespaces de supervisor ao catálogo do Service Broker. Além disso, é possível clicar na página implantações no Cloud Assembly para visualizar informações sobre a implantação e acessar um link que contém o comando para executar o kubectl para o namespace no vSphere.

Você pode especificar classes de máquina virtual para namespaces de supervisor em um modelo de nuvem usando a propriedade vmclasses, que permite especificar um nome de classe. Consulte o exemplo de modelo de nuvem a seguir.
resources:
  Cloud_SV_Namespace_1:
    type: Cloud.SV.Namespace
    properties:
      name: demo-vmclass1
      vmclasses:
        - name: vmclass1