milvus-logo
LFAI
Home
  • Guia de Administração
    • Implantação

Implantar o Milvus no Azure com o AKS

Este tópico descreve como provisionar e criar um cluster com o Serviço de Kubernetes do Azure (AKS) e o portal do Azure.

Pré-requisitos

Certifique-se de que o seu projeto Azure foi configurado corretamente e que tem acesso aos recursos que pretende utilizar. Contacte os seus administradores se não tiver a certeza sobre a sua permissão de acesso.

Requisitos de software

Em alternativa, pode utilizar o Cloud Shell que tem o Azure CLI, o kubectl e o Helm pré-instalados.

Depois de instalar a CLI do Azure, certifique-se de que está devidamente autenticado.

Provisionar um cluster Kubernetes

  1. Inicie sessão no portal do Azure.
  2. No menu do portal do Azure ou na página inicial, selecione Criar um recurso.
  3. Selecione Contêineres > Serviço Kubernetes.
  4. Na página Noções básicas, configure as seguintes opções:
  • Detalhes do projeto:

    • Subscrição: Contacte o Administrador do Azure da sua organização para determinar qual a subscrição que deve utilizar.

      • Grupo de recursos: Contacte o Administrador do Azure da sua organização para determinar qual o grupo de recursos que deve utilizar.
  • Detalhes do cluster:

    • Nome do cluster Kubernetes: Introduza um nome de cluster.

    • Região: Selecione uma região.

    • Zonas de disponibilidade: Selecione as zonas de disponibilidade conforme necessário. Para clusters de produção, recomendamos que você selecione várias zonas de disponibilidade.

  • Pool de nós primários:

    • Tamanho do nó: Recomendamos que escolha VMs com um mínimo de 16 GB de RAM, mas pode selecionar tamanhos de máquinas virtuais conforme necessário.

    • Método de escala: Escolha um método de escala.

    • Intervalo de contagem de nós: Selecione um intervalo para o número de nós.

  • Pools de nós:

    • Ativar nós virtuais: Selecione a caixa de verificação para ativar nós virtuais.

    • Habilitar conjuntos de dimensionamento de máquinas virtuais: Recomendamos que escolha enabled.

  • Rede:

    • Configuração de rede: Recomendamos que escolha Kubenet.

    • Prefixo do nome DNS: Introduza um prefixo de nome DNS.

    • Roteamento de tráfego:

      • Balanceador de carga: Standard.

      • Encaminhamento de aplicações HTTP: Não é necessário.

  1. Depois de configurar as opções, clique em Revisar + criar e, em seguida, em Criar quando a validação for concluída. A criação do cluster demora alguns minutos.

Conectar-se ao cluster

  1. Navegue até o cluster que você criou nos serviços do Kubernetes e clique nele.
  2. No painel de navegação do lado esquerdo, clique em Overview.
  3. Na página Visão geral que aparece, clique em Conectar para ver o grupo de recursos e a assinatura.

Definir uma assinatura e credenciais

Você pode usar o Azure Cloud Shell para executar os seguintes procedimentos.
  1. Execute o seguinte comando para definir sua assinatura.
az account set --subscription EXAMPLE-SUBSCRIPTION-ID
  1. Execute o seguinte comando para baixar as credenciais e configurar a CLI do Kubernetes para usá-las.
az aks get-credentials --resource-group YOUR-RESOURCE-GROUP --name YOUR-CLUSTER-NAME
Use o mesmo shell para os procedimentos a seguir. Se você mudar para outro shell, execute os comandos anteriores novamente.

Usar o Armazenamento de Blobs do Azure como armazenamento de objeto externo

O Armazenamento de Blobs do Azure é a versão do Azure do Serviço de Armazenamento Simples do AWS (S3).

  • Criar conta de armazenamento e contentor
az storage account create -n milvustesting1 -g MyResourceGroup -l eastus --sku Standard_LRS --min-tls-version TLS1_2
az storage container create -n testmilvus --account-name milvustesting1
  • obter chave secreta, usar o primeiro valor
az storage account keys list --account-name milvustesting2
  • Adicionar values.yaml
cluster:
  enabled: true

service:
  type: LoadBalancer

extraConfigFiles:
  user.yaml: |+
    common:
      storageType: remote

minio:
  enabled: false

externalS3:
  enabled: true
  host: core.windows.net
  port: 443
  rootPath: my-release
  bucketName: testmilvus # the storage account container name
  cloudProvider: azure
  useSSL: true
  accessKey: "milvustesting1" # the storage account name
  secretKey: "<secret-key>" 

Implementar o Milvus

Agora o cluster Kubernetes está pronto. Vamos implantar o Milvus agora mesmo.

helm repo add milvus https://zilliztech.github.io/milvus-helm/
helm repo update
helm install -f values.yaml my-release milvus/milvus

Nos comandos anteriores, adicionamos o repo dos gráficos do Milvus Helm localmente e atualizamos o repo para buscar os gráficos mais recentes. Em seguida, instalamos uma instância do Milvus e chamamos-lhe my-release.

Observe o valor config service.type, que indica que gostaríamos de expor a instância do Milvus por meio de um balanceador de carga de camada 4.

Verificar a implantação

Quando todos os pods estiverem em execução, execute o seguinte comando para obter o endereço IP externo.

kubectl get services|grep my-release-milvus|grep LoadBalancer|awk '{print $4}'

Olá Milvus

Consulte Hello Milvus, altere o valor do host para o endereço IP externo e, em seguida, execute o código.

O que vem a seguir

Se você quiser aprender como implantar o Milvus em outras nuvens: