Pular para o conteúdo principal
Esta página fornece uma referência completa e anotada de values.yaml otimizada para implantações em produção. Copie, adapte os marcadores de posição ao seu ambiente e implante.
Esta é uma configuração de referência. Você deve substituir todos os valores de marcador de posição (marcados com {...}) com os dados reais da sua infraestrutura antes de implantar.

Como usar


  1. Copie a configuração completa abaixo em um arquivo chamado values-production.yaml
  2. Substitua todos os marcadores {...} com seus valores reais
  3. Revise cada seção e ajuste os limites de recursos para sua carga de trabalho esperada
  4. Implante:

Valores completos de produção


As variáveis de ambiente ACCOUNT_TYPE_VALIDATION e TRANSACTION_ROUTE_VALIDATION foram deprecadas e substituídas pela API de Configurações do Ledger. Use PATCH /v1/organizations/{org_id}/ledgers/{ledger_id}/settings para configurar a validação contábil por ledger.

Decisões-chave explicadas


Por que Ledger em vez de Onboarding + Transaction?

O serviço unificado ledger é a abordagem recomendada para todas as novas instalações. Ele combina ambos os módulos em uma única implantação, reduzindo a carga operacional:
  • Menos pods para gerenciar e monitorar
  • Configuração simplificada (um único configmap/secret)
  • Um único endpoint de ingress
  • Melhor utilização de recursos
  • Será a única opção em versões futuras

Por que bancos de dados externos?

Implantações em produção devem usar serviços de bancos de dados gerenciados para:
  • Backups automatizados e recuperação point-in-time
  • Alta disponibilidade com failover automático
  • Monitoramento e alertas integrados
  • Escalamento sem tempo de inatividade da aplicação
  • Patches de segurança gerenciados pelo provedor
Serviços gerenciados recomendados:
DependênciaAWSGCPAzure
PostgreSQLAmazon RDSCloud SQLAzure Database for PostgreSQL
MongoDBAmazon DocumentDB ou MongoDB AtlasMongoDB AtlasAzure Cosmos DB (MongoDB API)
RabbitMQAmazon MQAuto-gerenciado no GKEAuto-gerenciado no AKS
Redis/ValkeyAmazon ElastiCacheMemorystoreAzure Cache for Redis

Por que usar Kubernetes Secrets em vez de senhas inline?

Senhas inline em values.yaml são visíveis no histórico de versões do Helm e podem ser commitadas em controle de versão. Usar useExistingSecret: true com Secrets pré-criados do Kubernetes:
  • Mantém as credenciais fora dos valores do Helm
  • Permite rotação sem necessidade de upgrade do Helm
  • Integra com ferramentas de gerenciamento de segredos (Vault, External Secrets Operator, Sealed Secrets)

Anti-afinidade de pods

A regra podAntiAffinity distribui os pods do Ledger em diferentes nós, de modo que a falha de um único nó não derrube todo o serviço.

Checklist antes de implantar


1

Criar Kubernetes Secrets

Crie todos os secrets necessários no namespace midaz antes de executar helm install:
  • midaz-ledger (credenciais de bancos de dados e broker de mensagens)
  • midaz-crm (chaves de criptografia e senha do MongoDB)
  • otel-api-key (se estiver usando telemetria da Lerian)
2

Configurar DNS

Aponte seus domínios para o IP externo do controlador de ingress:
  • {your-midaz-api-domain} → IP do ingress
  • {your-crm-api-domain} → IP do ingress
  • {your-grafana-domain} → IP do ingress
3

Provisionar certificados TLS

Use cert-manager para o provisionamento automático de certificados ou crie manualmente os secrets TLS para cada domínio.
4

Verificar conectividade com bancos de dados

Certifique-se de que seu cluster Kubernetes consegue alcançar todos os bancos de dados externos. Teste com:
5

Revisar limites de recursos

Ajuste os limites de CPU e memória com base no seu volume de transações esperado. Os valores desta referência são pontos de partida para cargas de trabalho moderadas.
6

Implantar

7

Verificar implantação

Recursos relacionados