Junior
O que deve estar dentro de um Pod no Kubernetes?
sobes.tech IA
Resposta da IA
No Pod do Kubernetes deve estar presente:
- Um ou mais contêineres relacionados que funcionam como uma única unidade e compartilham recursos.
- Armazenamentos de dados compartilhados (Volumes) para os contêineres no Pod.
- Uma pilha de rede compartilhada para todos os contêineres (de acordo com a especificação IP).
- A especificação do Pod (objeto PodSpec), descrevendo como os contêineres devem funcionar, incluindo:
- Imagens dos contêineres.
- Recursos necessários (CPU, memória).
- Portas abertas.
- Variáveis de ambiente.
- Testes de saúde (sondas de vivacidade e prontidão).
- Políticas de reinício.
Uso típico:
- Um contêiner principal da aplicação.
- Um ou vários contêineres "sidecar" que realizam tarefas auxiliares (registro, monitoramento, adaptadores).
Exemplo de especificação de Pod (parcial):
# Exemplo de especificação parcial de um Pod
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
spec:
containers:
- name: main-app
image: my-docker-repo/my-app:latest
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"
memory: "512Mi"
- name: log-collector
image: my-docker-repo/log-collector:latest
volumeMounts:
- name: app-logs
mountPath: /var/log/app
volumes:
- name: app-logs
emptyDir: {}
Princípios básicos:
- O Pod é a menor unidade implantável no Kubernetes.
- Os contêineres em um mesmo Pod compartilham o espaço de nomes do núcleo (PID, UTS, IPC).
- A escalabilidade ocorre ao nível do Pod.
- O Pod destina-se a hospedar processos estreitamente relacionados.