Oii, Anildo. Tudo bem?
Vendo os erros e os arquivos YAML que você compartilhou, o problema principal reside na conectividade inicial com o MySQL, o que acaba gerando uma reação em cadeia nos outros comandos PHP.
O que os erros significam?
- Connection refused: A aplicação tentou falar com o banco de dados, mas não obteve resposta. Isso indica que a conexão não foi estabelecida.
- Expects parameter 1 to be mysqli, boolean given: Como a conexão falhou, a variável que deveria conter o objeto de conexão está vazia (ou falsa). Ao tentar fazer uma consulta (
mysqli_query) com essa variável inválida, o PHP gera esse erro. - Expects parameter 1 to be mysqli_result, null given: Esse é o resultado direto do erro anterior. Como a consulta não funcionou, não há dados para buscar.
Verificações Necessárias
1. Nome do Host no Arquivo PHP
No Kubernetes, os Pods conversam entre si através de Services. No seu arquivo servico-banco.yaml, o nome definido é db:
metadata:
name: db
Tenha certeza de que, no seu arquivo conecta.php da aplicação AluraSports, o endereço do servidor (host) esteja configurado como db e não como localhost ou 127.0.0.1. Dentro do cluster, o Kubernetes resolve o nome do serviço para o IP correto do Pod.
2. Estado do StatefulSet e do Serviço
Verifique se o banco de dados realmente terminou de subir e se o seletor está correto. Rode os comandos:
kubectl get pods: O Pod statefulset-mysql-0 precisa estar em estado Running e com 1/1 em READY.kubectl get svc: O serviço db deve estar listado.
3. Ordem de Inicialização
Como a aplicação depende do banco, se o Pod da aplicação subir e tentar se conectar antes de o MySQL estar pronto para receber conexões (o que pode levar alguns segundos após o status aparecer como "Running"), ela pode falhar.
Dica: Tente reiniciar apenas o Pod da aplicação após garantir que o banco de dados já está operante e com as tabelas criadas:
kubectl delete pod [NOME_DO_POD_DA_APLICACAO]
O Kubernetes criará um novo automaticamente, e este tentará uma nova conexão.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!