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

Configurar o Milvus com o Milvus Operator

No ambiente de produção, é necessário atribuir recursos ao cluster Milvus com base no tipo de máquina e na carga de trabalho. É possível configurar durante a implantação ou atualizar as configurações enquanto o cluster estiver em execução.

Este tópico apresenta como configurar um cluster Milvus ao instalá-lo com o Milvus Operator.

Este tópico pressupõe que você implantou o Milvus Operator. Consulte Implantar o Milvus Operator para obter mais informações.

A configuração de um cluster do Milvus com o Milvus Operator inclui:

  • Configurações globais de recursos
  • Configurações de recursos privados
As configurações de recursos privados substituirão as configurações de recursos globais. Se configurar os recursos globalmente e especificar o recurso privado de um determinado componente ao mesmo tempo, o componente dará prioridade e responderá primeiro às configurações privadas.

Configurar recursos globais

Ao utilizar o Milvus Operator para iniciar um cluster Milvus, é necessário especificar um ficheiro de configuração. O exemplo aqui apresentado utiliza o ficheiro de configuração predefinido.

kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/milvus_cluster_default.yaml

Os detalhes do ficheiro de configuração são os seguintes:

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: my-release
  labels:
    app: milvus
spec:
  mode: cluster
  dependencies: {}
  components: {}
  config: {}

O campo spec.components inclui a configuração de recursos globais e privados de todos os componentes do Milvus. A seguir estão quatro campos comumente usados para configurar o recurso global.

  • image: A imagem do docker Milvus utilizada.
  • resources: Os recursos de computação atribuídos a cada componente.
  • tolerations e nodeSelector: As regras de agendamento de cada componente Milvus no cluster K8s. Consulte tolerâncias e nodeSelector para obter mais informações.
  • env: As variáveis de ambiente.

Se pretender configurar mais campos, consulte a documentação aqui.

Para configurar o recurso global para o cluster Milvus, crie um ficheiro milvuscluster_resource.yaml.

Exemplo

O exemplo seguinte configura o recurso global para um cluster Milvus.

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: my-release
  labels:
    app: milvus
spec:
  mode: cluster
  components:
    nodeSelector: {}
    tolerations: {}
    env: {}
    resources:
      limits:
        cpu: '4'
        memory: 8Gi
      requests:
        cpu: 200m
        memory: 512Mi

Execute o seguinte comando para aplicar as novas configurações:

kubectl apply -f milvuscluster_resource.yaml
Os recursos do cluster serão atualizados de acordo com o arquivo de configuração se houver um cluster Milvus chamado my-release no cluster K8s. Caso contrário, será criado um novo cluster Milvus.

Configurar recursos privados

Originalmente no Milvus 2.0, um cluster Milvus inclui sete componentes: proxy, coordenada raiz, coordenada de dados, coordenada de consulta, nó de índice, nó de dados e nó de consulta. No entanto, um novo componente, mix coord, é lançado juntamente com o Milvus 2.1.0. O mix coord inclui todos os componentes do coordenador. Por conseguinte, iniciar uma coord mista significa que não é necessário instalar e iniciar outros coordenadores, incluindo a coord raiz, a coord de dados e a coord de consulta.

Os campos comuns utilizados para configurar cada componente incluem:

  • replica: O número de réplicas de cada componente.
  • port: O número da porta de escuta de cada componente.
  • Os quatro campos comumente usados na configuração global de recursos: image, env, nodeSelector, tolerations, resources (ver acima). Para mais campos configuráveis, clique em cada componente nesta documentação.
Além disso, ao configurar o proxy, há um campo extra chamado `serviceType`. Este campo define o tipo de serviço que o Milvus fornece no cluster K8s.

Para configurar recursos para um componente específico, adicione o nome do componente no campo em spec.componets primeiro e depois configure seus recursos privados.

Objetivo Parâmetros
Afinação do desempenho
Dados e meta
Administração
Quotas e limites

Exemplo

O exemplo abaixo configura as réplicas e os recursos de computação do proxy e do datanode no arquivo milvuscluster.yaml.

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: my-release
  labels:
    app: milvus
spec:
  mode: cluster
  components:
    resources:
      limits:
        cpu: '4'
        memory: 8Gi
      requests:
        cpu: 200m
        memory: 512Mi
    rootCoord: 
      replicas: 1
      port: 8080
      resources:
        limits:
          cpu: '6'
          memory: '10Gi'
    dataCoord: {}
    queryCoord: {}
    indexCoord: {}
    dataNode: {}
    indexNode: {}
    queryNode: {}
    proxy:
      replicas: 1
      serviceType: ClusterIP
      resources:
        limits:
          cpu: '2'
          memory: 4Gi
        requests:
          cpu: 100m
          memory: 128Mi
  config: {}
  dependencies: {}
Este exemplo configura não apenas os recursos globais, mas também os recursos de computação privados para o root coord e o proxy. Ao utilizar este ficheiro de configuração para iniciar um cluster Milvus, as configurações dos recursos privados serão aplicadas ao root coord e ao proxy, enquanto os restantes componentes seguirão a configuração dos recursos globais.

Execute o seguinte comando para aplicar novas configurações:

kubectl apply -f milvuscluster.yaml

O que vem a seguir

Traduzido porDeepL

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Esta página foi útil?