oz-echo como parte de api-decomposed (oz-k8s)
oz-k8s é a pilha completa do Oz API como um único Helm chart – API, BIO, Echo, Web UI, nginx, MongoDB e assim por diante, implantados juntos. Echo é sempre implantado; não há opção para desativá-lo e não há uma etapa separada de instalação. Se este chart for instalado para a API, o Echo já vem incluído.
Chart: oz-k8s, versão 0.20.32, versão do app 6.6.3. A imagem do Echo está fixada em ozforensics/echo:1.0.4.
Este guia cobre apenas a configuração específica do Echo. Para a instalação completa (pré-requisitos, valores centrais, armazenamento, ingress, configuração do banco de dados), siga a própria readme.md (e readme-s3.md se estiver usando armazenamento S3) – este documento pressupõe que essa instalação esteja sendo realizada e apenas precisa saber o que é configurável na parte do Echo.
Conceitos compartilhados (autenticação, endpoints, referência de configuração) podem ser encontrados na página pai.
Pré-requisitos (para toda a stack, não específicos do Echo)
Kubernetes 1.23+, Helm 3+.
ingress-nginx + cert-manager, ou Kong 2.12+.
kube-metrics-server.
Prometheus.
PostgreSQL externo com a extensão pgcrypto.
Uma classe de armazenamento RWX, ou S3 (veja
readme-s3.md).
Instalação
helm repo add oz <chartmuseum-url-from-Oz>
helm repo update
helm install my-release oz/oz-k8s --version 0.20.32 -f my-values.yamlAs substituições mínimas necessárias são para toda a stack (UserParams.URLs.apiURL, UserParams.JWT.public/private, UserParams.DB.*, UserParams.Creds.apiAdminLogin/apiAdminPass, UserParams.BIO.licenseKey/clientToken, Params.mongo.security.Password, nomes de classes de armazenamento) – veja o readme do próprio chart para a lista completa. Nenhum deles é específico do Echo; o Echo acompanha automaticamente quando a stack estiver em funcionamento.
Configuração específica do Echo (Params.echo.*)
tokenKey
""
Segredo de assinatura do JWT – gere com openssl rand -base64 129 | tr -d '\n'. Não está listada na própria tabela "Required Passwords" do chart, embora o padrão seja vazio – defina explicitamente.
StaticTokens
[]
tokens bearer pré-compartilhados
Passwords
[]
contas de login
ServiceUsers
[]
Nomes de usuário (das duas listas acima) aos quais é concedido acesso GET aos dados da sessão
publicKeys
{}
Mapa de nome de arquivo → chave pública PEM, para validação de requisições assinadas com JWS
extraEnvVarsSecret
""
Aponte para um Secret pré-criado em vez de permitir que o chart gere um – deve conter uma chave MONGODB_URL em base64
resources
limites 6 CPU / 6Gi, requisições 2 CPU / 2Gi
Dimensionamento
Escalonamento
HPA ativado por padrão, mínimo de 2 / máximo de 5 réplicas, alvo de CPU de 75%
Autoescalonamento
image.tag
"1.0.4"
Sobrescreva para fixar uma build diferente do Echo
Como o Echo é acessado
O Echo não tem hostname separado nem entrada de ingress. Ele pode ser acessado em <apiURL>/api/event_sessions, roteado pelo mesmo Ingress (ou Kong HTTPRoute, se estiver usando Kong) que o restante da API.
Verificação
Nota de versão
O próprio repositório do Echo avançou além da 1.0.4 (adicionando paginação baseada em cursor e um recurso opcional de registro do funil de conversão), mas este chart ainda fixa a 1.0.4 na versão 0.20.32. Se forem necessários recursos de uma versão mais recente do Echo, substitua Params.echo.image.tag – verifique antes a compatibilidade com Oz Forensics.
Atualizado
Isto foi útil?
