Este repositório contém scripts, manifests e instruções para deploy e validação de múltiplos componentes em um ambiente Kubernetes para desenvolvimento e testes. Cada pasta representa um componente independente do stack. Siga as instruções de cada seção para realizar o deployment e validação.
- Kubernetes (k3s, minikube, kind, ou cluster compatível)
- kubectl configurado
- Helm instalado
- Acesso administrativo ao cluster
- Bash/zsh
Cada pasta abaixo representa um componente. Siga a ordem sugerida para evitar dependências não resolvidas.
Scripts e manifests para deploy do Besu (Ethereum Client) com suporte a ingress, middlewares e serviços.
cd besu
./besu-install-script.sh- Para customizar valores, edite
besu-install-values.yaml. - Para deploy do genesis, use
./besu-genesis-deploy.sh. - Para troubleshooting, consulte
BESU_INGRESS_TROUBLESHOOTING.mde scripts de diagnose.
- Execute
./test-direct.shpara testar acesso direto. - Execute
./test-external-access.shpara validar acesso externo. - Use
./diagnose-besu-404.shpara investigar problemas de ingress.
Deploy do Apache Kafka usando Strimzi Operator.
cd kafka
./deploy-kafka.sh- Edite
strimzi-values.yamlpara customizações. - O operador está em
strimzi-kafka-operator/.
- Execute
./check-kafka.shpara validar o cluster. - Use
./cleanup-kafka.shpara remover recursos.
Deploy do MongoDB com suporte a operador e acesso externo.
cd mongodb
./deploy-mongodb.sh- Edite
mongodb-values.yamlpara customizações. - O operador está em
helm/.
- Execute
./test-mongodb.shpara validar o deployment. - Use
./test-external-connection.shpara testar acesso externo. - Scripts adicionais para debug:
debug-mongodb.sh,test-nodeport-connection.sh.
Manifests de ingress, middlewares e valores para o serviço Paladin.
O deploy do Paladin pode ser realizado de forma automatizada utilizando o script paladin-install.sh presente na pasta paladin. O script executa todos os passos necessários para instalação dos CRDs, cert-manager, operador Paladin e, opcionalmente, aplica os ingressos, ingressroutes de UI e middlewares.
cd paladin
chmod +x paladin-install.sh
./paladin-install.shcd paladin
chmod +x paladin-install.sh
./paladin-install.sh --with-ingressO script irá:
- Instalar os CRDs do Paladin
- Instalar e verificar o cert-manager
- Instalar o operador Paladin
- (Opcional) Aplicar todos os ingressos, ingressroutes de UI e middlewares necessários
Para customizar a rede Paladin, edite o arquivo de valores:
paladin/paladin-values.yaml
-
Verifique os ingressroutes e middlewares aplicados:
kubectl get ingressroutes kubectl get middleware
Scripts e valores para deploy do PostgreSQL.
cd postgres
./postgresql-deploy.sh- Edite
postgresql-values.yamlpara customizações.
-
Verifique os pods e serviços:
kubectl get pods -n <namespace> kubectl get svc -n <namespace>
Deploy do Redis via script e valores customizáveis.
cd redis
./deploy-redis.sh- Edite
redis-values.yamlpara customizações.
-
Verifique os pods e serviços:
kubectl get pods -n <namespace> kubectl get svc -n <namespace>
Deploy do Redpanda (streaming platform) com suporte a TLS.
cd redpanda
./deploy-redpanda.sh- Edite
redpanda-values.yamlouredpanda-values-monitoring.yamlpara customizações.
-
Verifique os pods e serviços:
kubectl get pods -n <namespace> kubectl get svc -n <namespace>
Deploy e inicialização do HashiCorp Vault.
cd vault
./deploy-vault.sh
./init-vault.sh- Edite
vault-values.yamlpara customizações. - Siga as instruções de unseal em
vault-unseal.txt.
- Execute
./test-vault.shpara validar o funcionamento. - Use
./check-vault.shpara status.
Scripts e arquivos de configuração para o Firefly.
- Siga as instruções do arquivo
bash.txtou scripts presentes na pasta.
-
Consulte logs e status dos pods:
kubectl get pods -n <namespace> kubectl logs <pod>
install.sh: Instalação geral do stack.cleanup_history.sh: Limpeza de histórico de deploys.
- Sempre verifique os namespaces utilizados em cada componente.
- Consulte os arquivos README.md específicos de cada subdiretório, se existirem, para detalhes adicionais.
- Para troubleshooting, utilize os scripts de diagnose presentes em cada pasta.
Dúvidas ou problemas? Abra uma issue ou entre em contato com o mantenedor do repositório.