🔗 Services
Os pods nascem e morrem, e a cada recriação o IP muda. O Service cria um endereço fixo na frente dos pods, para que outras aplicações (ou você) sempre consigam acessá-los.
| Tipo | Quem acessa | Quando usar |
|---|---|---|
ClusterIP | Só dentro do cluster | Comunicação entre aplicações |
NodePort | De fora, pelo IP do node + porta | Testes e acessos simples |
LoadBalancer | De fora, por um IP próprio | Produção, sem Ingress |
Services são criados com o kubectl. O Painel Nuvion é usado para liberar o acesso de rede externo (passo 5).
🚀 Antes de começar
- Ter o acesso ao cluster configurado (veja Acesso ao Cluster).
🚀 1. Criar uma aplicação de teste
kubectl create deployment web --image=nginx --replicas=2
kubectl get pods
Aguarde os dois pods ficarem Running.
🚀 2. Criar um Service interno (ClusterIP)
kubectl expose deployment web --name=web-svc --port=80 --target-port=80
kubectl get svc web-svc
Anote o CLUSTER-IP exibido.
🚀 3. Testar o acesso dentro do cluster
kubectl run teste-curl --rm -it --image=curlimages/curl --restart=Never -- curl http://web-svc
Se aparecer a página Welcome to nginx!, o Service está funcionando.
🚀 4. Criar um Service externo (NodePort)
kubectl expose deployment web --name=web-nodeport --type=NodePort --port=80
kubectl get svc web-nodeport
Na coluna PORT(S) aparece algo como 80:31245/TCP. O número depois dos dois
pontos (31245) é a porta externa. Anote a sua.
🚀 5. Liberar a porta na rede
Para acessar de fora, a porta precisa estar liberada e o node precisa ter um IP acessível.
- 🖥️ Painel Nuvion
- ⌨️ kubectl (CLI)
- Acesse Computar > Grupos de segurança e abra o grupo usado pelos nós do cluster.
- Adicione uma regra de entrada, protocolo TCP, na porta anotada no passo 4.
- Acesse Computar > IPs flutuantes e associe um IP a um dos workers, caso ainda não tenha.

Para descobrir o IP interno dos nodes:
kubectl get nodes -o wide
A liberação de porta e o IP flutuante são feitos no Painel Nuvion (veja a aba ao lado).
🚀 6. Acessar a aplicação
No navegador, abra http://IP-DO-NODE:PORTA (exemplo: http://203.0.113.10:31245).
✅ Como saber se deu certo
A página Welcome to nginx! abre no navegador.
❗ Problemas comuns
| Sintoma | Causa | Solução |
|---|---|---|
| Página não abre (timeout) | Porta não liberada ou node sem IP acessível | Revise o passo 5 |
ENDPOINTS vazio em kubectl get endpoints web-svc | O Service não encontrou pods | Confira se os pods estão Running |
EXTERNAL-IP aparece como none | Normal para NodePort | Use o IP do node |
🧹 Limpeza
kubectl delete svc web-svc web-nodeport
kubectl delete deployment web
➡️ Próximo passo: Ingress
🧠 Dúvidas?
Fale com nosso time de suporte técnico da SaveinCloud!