Configurar o Trace
Este guia fornece instruções sobre como configurar o Jaeger para recolher traços para o Milvus.
Pré-requisitos
- Você instalou as ferramentas necessárias, incluindo Helm e Kubectl.
- O Cert-manager versão 1.6.1 ou superior deve estar instalado. Um guia de instalação pode ser encontrado aqui.
Implantar o Jaeger
O Jaeger é uma plataforma de rastreamento distribuída lançada como código aberto pela Uber Technologies.
1. Instalando o operador do Jaeger no Kubernetes
Para instalar o operador, execute:
$ kubectl create namespace observability
$ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/download/v1.62.0/jaeger-operator.yaml -n observability
Neste ponto, deve haver uma implantação jaeger-operator
disponível. Você pode visualizá-la executando o seguinte comando:
$ kubectl get deployment jaeger-operator -n observability
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator 1 1 1 1 48s
2. Implantar o Jaeger
A maneira mais simples possível de criar uma instância do Jaeger é criando um arquivo YAML como o exemplo a seguir. Isso instalará a estratégia AllInOne padrão, que implanta a imagem all-in-one (combinando jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) em um único pod, usando o armazenamento na memória por padrão.
Se você quiser armazenar traços por um longo tempo, consulte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
name: jaeger
O arquivo YAML pode então ser usado com kubectl
:
$ kubectl apply -f simplest.yaml
Em alguns segundos, uma nova instância do Jaeger tudo-em-um na memória estará disponível, adequada para demonstrações rápidas e fins de desenvolvimento. Para verificar as instâncias que foram criadas, liste os objectos jaeger:
$ kubectl get jaegers
NAME STATUS VERSION STRATEGY STORAGE AGE
jaeger Running 1.62.0 allinone memory 13s
Instalar o Milvus com o Helm Chart
Pode instalar ou atualizar o Milvus com o Helm Chart com as seguintes definições:
extraConfigFiles:
user.yaml: |+
trace:
exporter: jaeger
sampleFraction: 1
jaeger:
url: "http://jaeger-collector:14268/api/traces"
Para aplicar as configurações acima a uma nova implantação do Milvus, você pode executar o seguinte comando:
$ helm repo add zilliztech https://zilliztech.github.io/milvus-helm
$ helm repo update
$ helm upgrade --install -f values.yaml my-release milvus/milvus
Para aplicar as definições acima a uma implementação Milvus existente, pode executar o seguinte comando:
$ helm upgrade my-release -f values.yaml milvus/milvus
Ver traços
Depois de ter implementado o Jaeger e o Milvus com o Helm Chart, foi ativado um ingresso por dfault. Pode ver o ingresso executando o seguinte comando:
$ kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.34 80 14m
Quando o ingresso estiver disponível, você poderá acessar a interface do usuário do Jaeger navegando até http://${ADDRESS}
. Substitua ${ADDRESS}
pelo endereço IP real do ingress.
A seguinte captura de ecrã mostra a interface do utilizador do Jaeger com os traços do Milvus durante uma operação de pesquisa e uma operação de recolha de carga:
Pedido de pesquisa de traços
Pedido de recolha de carga de traços