TDP Kubernetes
- Cluster Kubernetes: versão 1.27 ou superior
- kubectl instalado e configurado
- Helm: versão 3.2.0 ou superior
- Acesso ao registry OCI da Tecnisys (registry.tecnisys.com.br)
- Recursos mínimos recomendados no cluster:
- CPU: 16 vCPUs disponíveis
- Memória RAM: 32 GB disponíveis
- Armazenamento persistente: 200 GB disponíveis
O que é o TDP Kubernetes?
O TDP Kubernetes é a edição cloud-native da plataforma TDP, projetada para execução em clusters Kubernetes. Esta edição utiliza contentores e orquestração para fornecer:
- Escalabilidade horizontal automática de componentes.
- Alta disponibilidade com failover automático.
- Implantação declarativa via Helm Charts ou ArgoCD.
- Isolamento de recursos e gestão eficiente.
Esta solução é ideal para equipas que procuram uma plataforma de dados moderna, escalável e baseada em práticas DevOps e GitOps.
Este guia irá auxiliá-lo na implantação, configuração e acesso ao TDP Kubernetes num cluster Kubernetes.
1. Preparação do Ambiente
Antes de iniciar a instalação, certifique-se de que o cluster Kubernetes está configurado e acessível.
1.1. Verificar acesso ao cluster
Execute o comando abaixo para validar o acesso ao cluster Kubernetes:
kubectl cluster-info
A saída deve exibir informações sobre o cluster, incluindo o endereço do servidor API.
1.2. Criar namespace para o TDP
O TDP Kubernetes utiliza o namespace tdp-project como padrão. Crie o namespace com o comando:
kubectl create namespace tdp-project
1.3. Configurar acesso ao registry OCI
Os Helm Charts do TDP Kubernetes estão hospedados no registry OCI da Tecnisys. Configure o acesso com as suas credenciais:
helm registry login registry.tecnisys.com.br \
--username <seu-utilizador> \
--password <sua-senha>
Substitua <seu-utilizador> e <sua-senha> pelas credenciais fornecidas pela Tecnisys.
2. Instalação via Helm Charts
O Helm é o método recomendado para instalação de componentes individuais do TDP Kubernetes.
2.1. Adicionar o repositório Helm (se aplicável)
Caso o registry utilize repositório Helm tradicional, adicione-o:
helm repo add tecnisys https://registry.tecnisys.com.br/helm
helm repo update
2.2. Instalar componentes do TDP
Cada componente do TDP possui o seu próprio Helm Chart. Exemplo de instalação do Apache Kafka:
helm install tdp-kafka oci://registry.tecnisys.com.br/helm/tdp-kafka \
--namespace tdp-project \
--version 3.0.0 \
--create-namespace
2.3. Personalizar a instalação
Pode personalizar a instalação criando um ficheiro values.yaml:
kafka:
replicas: 3
resources:
requests:
memory: "4Gi"
cpu: "2"
limits:
memory: "8Gi"
cpu: "4"
persistence:
enabled: true
size: 100Gi
Aplique a configuração durante a instalação:
helm install tdp-kafka oci://registry.tecnisys.com.br/helm/tdp-kafka \
--namespace tdp-project \
--values values.yaml
2.4. Verificar a instalação
Liste os recursos criados no namespace:
kubectl get all -n <namespace>
Verifique o estado dos Pods:
kubectl get pods -n <namespace>
Todos os Pods devem estar com estado Running após alguns minutos.
3. Instalação via ArgoCD (GitOps)
O ArgoCD permite gerir a implantação dos componentes de forma declarativa via Git.
3.1. Instalar o ArgoCD
Se o ArgoCD ainda não estiver instalado no cluster, instale-o com os comandos:
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
3.2. Aceder à interface do ArgoCD
Exponha o serviço do ArgoCD:
kubectl port-forward svc/argocd-server -n argocd 8080:443
Aceda à interface em https://localhost:8080.
A senha inicial do utilizador admin pode ser obtida com:
kubectl get secret argocd-initial-admin-secret -n argocd \
-o jsonpath="{.data.password}" | base64 -d
3.3. Criar Application no ArgoCD
Crie um ficheiro YAML descrevendo a aplicação TDP:
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: tdp-kafka
namespace: argocd
spec:
project: default
source:
repoURL: oci://registry.tecnisys.com.br/helm
targetRevision: 3.0.0
chart: tdp-kafka
destination:
server: https://kubernetes.default.svc
namespace: tdp-project
syncPolicy:
automated:
prune: true
selfHeal: true
Aplique a configuração:
kubectl apply -f tdp-application.yaml
O ArgoCD sincronizará automaticamente o estado desejado com o cluster.
4. Acesso aos Componentes
Após a instalação, os componentes podem ser acedidos via Services do Kubernetes.
4.1. Listar Services disponíveis
kubectl get services -n <namespace>
4.2. Aceder a interfaces web via Port Forwarding
Exemplo para aceder ao Kafka UI:
kubectl port-forward svc/tdp-kafka-ui -n <namespace> 8080:80