Confira como instalar e configurar o Harbor como um Supervisor Service. Em seguida, você pode usar o Harbour como um registro para cargas de trabalho em execução em clusters Tanzu Kubernetes Grid e vSphere Pods. O Harbor requer o Contour como controlador de ingresso, portanto, instale primeiro o Contour Supervisor Service e depois o Harbor.

Adicionar o contorno e o porto Supervisor Services

Antes de instalar o Harbor and Contour em um Supervisor, adicione os arquivos YAML de definições de serviço a vSphere with Tanzu.

Pré-requisitos

  • Faça download dos arquivos YAML de definição do serviço Harbor and Contour em http://vmware.com/go/supervisor-service.
  • Verifique se você tem o privilégio Gerenciar serviços de supervisor no sistema vCenter Server ao qual adiciona os serviços.

Procedimento

  1. No menu inicial vSphere Client, selecione Gerenciamento de carga de trabalho (Workload Management).
  2. Selecione Serviços (Services).
  3. Selecione um sistema vCenter Server no menu suspenso na parte superior.
  4. Adicione a definição de serviço Contour.
    1. Clique em Adicionar (Add) no cartão Adicionar novo serviço (Add New Service).
    2. Clique em Carregar (Upload) e clique em Concluir (Finish).
  5. Adicione o YAML da definição de serviço do Harbor seguindo as etapas acima.

Instalar o Contour e o Harbour em um Supervisor

Depois de adicionar as definições de serviço Contour e Harbor ao seu ambiente, instale-as em um Supervisor. Primeiro, você instala o Contour e, em seguida, o Harbour.

Pré-requisitos

Aviso: Quando você instalar o Harbor como Supervisor Service, o sistema iniciará uma atualização sem interrupção de todos os clusters TKG em execução nesse Supervisor.
  • Localize os YAMLs de configuração do serviço nos repositórios do Contour e do Harbor de http://vmware.com/go/supervisor-service.
  • Designe um FQDN para o Harbor para acessar a interface do usuário do Harbor e o registro. O Harbor Supervisor Service só pode ser acessado por meio do FQDN.

Procedimento

  1. Navegue até o Supervisor em que deseja instalar o Harbor.
  2. Clique em Configurar (Configure).
  3. Em Serviços de supervisor (Supervisor Services), clique em Visão geral (Overview).
  4. Selecione a guia Disponível (Available).

    A IU de serviços disponíveis no Supervisor, em que Contorno e Porto estão listados.
  5. Selecione Contorno (Contour) e clique em Instalar (Install).
  6. No campo YAML Service Config, copie e cole a configuração do serviço Contour.
    Não altere nenhum dos valores definidos no YAML.
    A janela para instalar o Contour com o campo de configuração de serviço preenchido.
  7. Clique em OK.
  8. Clique na guia Instalado (Installed) e acompanhe o progresso da instalação do Contour.
    O serviço fica no estado Configurando até que o estado desejado seja atingido. Quando o estado desejado é atingido, o estado do serviço muda para Em execução. Depois que o Contour for instalado com êxito, você poderá prosseguir com a instalação do Harbour.
  9. Abra o arquivo de configuração do serviço Harbor e defina as seguintes propriedades:
    Propriedade Valor Descrição
    hostname FQDN O FQDN que você designou para acessar a interface do usuário do Harbor e para fazer referência ao registro em aplicativos cliente.
    tlsCertificate.tlsSecretLabels {"managed-by": "vmware-vRegistry"} O certificado que Tanzu Kubernetes Grid usa para instalar a CA Harbor como uma raiz confiável em clusters Tanzu Kubernetes Grid.
    persistence.persistentVolumeClaim.registry.storageClass Um nome de política de armazenamento. Uma classe de armazenamento que é usada para os PVCs de registro do Harbor.
    persistence.persistentVolumeClaim.jobservice.storageClass Um nome de política de armazenamento. Uma classe de armazenamento que é usada para os PVCs do serviço de tarefa do Harbor.
    persistence.persistentVolumeClaim.database.storageClass Um nome de política de armazenamento. Uma classe de armazenamento que é usada para os PVCs do banco de dados Harbor.
    persistence.persistentVolumeClaim.redis.storageClass Um nome de política de armazenamento. Uma classe de armazenamento que é usada para os PVCs do Harbor redis.
    persistence.persistentVolumeClaim.trivy.storageClass Um nome de política de armazenamento. Uma classe de armazenamento que é usada para PVCs trivy do Harbor.
    Observação: Não altere os valores das propriedades enableContourHttpProxy e network.ipFamilies. O Contour é necessário para o funcionamento do Harbor, e somente a família de endereços IPV4 é compatível com o Supervisor.
  10. Volte para a guia Serviços Disponíveis (Available ) no vSphere Client, selecione Harbor e clique em Instalar (Install).
  11. No campo YAML Service Config, copie e cole a configuração do serviço Harbor.
  12. Clique em OK.
  13. Selecione a guia Instalado (Installed) e acompanhe o processo de instalação do Harbor.
    Quando o estado desejado é alcançado, o estado do serviço muda de Configurando para Em Execução. A instalação pode levar vários minutos.
  14. Inclua um registro do mapeamento do FQDN do Harbor para o endereço IP de entrada do Envoy em um servidor DNS externo configurado com o Supervisor.
    Os clusters Tanzu Kubernetes Grid, vSphere Pods e Supervisor devem ser capazes de resolver o FQDN do Harbor para poder efetuar pull de imagens do registro.

    Para localizar o endereço IP de entrada do Envoy, navegue até o namespace Contour, selecione Rede (Network) e selecione Serviços (Services):


    A captura de tela mostra o endereço IP do Envoy.

Estabelecendo confiança com o Harbor Supervisor Service

Depois que o Harbour for instalado, você deverá configurar a confiança entre o Supervisor para usar o Harbour como registro para vSphere Pods. Os clusters Tanzu Kubernetes Grid que estão no mesmo Supervisor que o Harbor têm confiança estabelecida para o Harbor automaticamente. No entanto, você deve configurar a confiança entre o Harbour e os clusters Tanzu Kubernetes Grid que são executados em Supervisors diferente daquele em que o Harbor Supervisor Service está instalado.

Estabelecendo confiança entre Harbor e Supervisor

Para estabelecer confiança entre Harbor e Supervisor:
  1. Extraia a autoridade de certificação do Harbour da UI do Harbour ou usando o segredo TLS no plano de controle Supervisor.
  2. Adicione a autoridade de certificação Harbour ao ConfigMap image-fetcher-ca-bundle no namespace kube-system. Você deve estar conectado com uma conta administrativa do vCenter Single Sing-ON e ter permissão para editar o image-fetcher-ca-bundle.

Estabelecendo confiança entre o Harbor e o cluster Tanzu Kubernetes Grid em execução em um Supervisors diferente do Harbor

Os clusters Tanzu Kubernetes Grid em execução em Supervisors diferente daquele em que o Harbor está instalado devem ter conectividade de rede com o Harbor. Esses clusters Tanzu Kubernetes Grid devem ser capazes de resolver o FQDN do Harbor.

Para estabelecer confiança entre os clusters do Harbor e do Tanzu Kubernetes Grid, extraia a CA do Harbor da interface do usuário do Harbor ou usando o segredo TLS no plano de controle do Supervisor e siga as etapas listadas emIntegrar um cluster TKG 2 com um Private Container Registry.