refactor: remover todas as dependências do GitLab no workshop
- Aula 08: nginx-ingress TCP passthrough gitlab→gitea, comments
- Aula 09: add-client.sh API GitLab→Gitea
- Aula 11: node-bugado deployment image registry.kube.quest→gitea.kube.quest
- Aula 12: setup.sh/cleanup.sh API GitLab→Gitea, ArgoCD repoURL
- Aula 13: k8s manifests, benchmarks: registry.kube.quest→gitea.kube.quest,
gitlab-registry→gitea-registry, GITLAB_TOKEN→GITEA_TOKEN
- Aula 14: comments GitLab→Gitea
- README raiz: arquitetura, tabela, DNS
This commit is contained in:
@@ -47,7 +47,7 @@ O LoadBalancer centraliza todo o trafego externo:
|
||||
| 50000 | Control Planes | Talos API |
|
||||
| 80 | Workers | HTTP (NGINX Ingress) |
|
||||
| 443 | Workers | HTTPS (NGINX Ingress) |
|
||||
| 22 | Workers | SSH (GitLab) |
|
||||
| 22 | Workers | SSH (Gitea) |
|
||||
|
||||
### Roteamento L7 (por dominio)
|
||||
|
||||
@@ -55,7 +55,7 @@ O LoadBalancer faz apenas roteamento L4 (por porta). O roteamento por dominio e
|
||||
|
||||
```
|
||||
LB :443 → NGINX Ingress → n8n.kube.quest → n8n pods
|
||||
→ git.kube.quest → gitlab pods
|
||||
→ gitea.kube.quest → gitea pods
|
||||
→ argocd.kube.quest → argocd pods
|
||||
→ registry.git... → registry pods
|
||||
```
|
||||
@@ -186,7 +186,7 @@ kubectl delete deployment test
|
||||
|
||||
1. **Configurar DNS** - Apontar dominio para o IP do LoadBalancer
|
||||
2. **Deploy n8n** (aula-09) - Workflow automation com PostgreSQL e Redis
|
||||
3. **Deploy GitLab** (aula-10) - Git + Container Registry + SSH
|
||||
3. **Deploy Gitea** (aula-10) - Git + Container Registry + SSH
|
||||
|
||||
## Arquivos
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# Pools:
|
||||
# - worker-pool: CAX21 (4 vCPU, 8GB) - workloads gerais
|
||||
# - gitlab-pool: CAX21 - GitLab e serviços relacionados
|
||||
# - gitlab-pool: CAX21 - Gitea e serviços relacionados
|
||||
# - build-pool: CAX31 (8 vCPU, 16GB) - builds Docker, escala 0-1
|
||||
############################################################
|
||||
|
||||
@@ -130,7 +130,7 @@ spec:
|
||||
# worker-pool: Workloads gerais (CAX21 = 4 vCPU, 8GB)
|
||||
- --nodes=1:3:CAX21:nbg1:worker-pool
|
||||
#
|
||||
# gitlab-pool: GitLab e serviços pesados (CAX21)
|
||||
# gitlab-pool: Gitea e serviços pesados (CAX21)
|
||||
- --nodes=1:2:CAX21:nbg1:gitlab-pool
|
||||
#
|
||||
# build-pool: Builds Docker (CAX31 = 8 vCPU, 16GB)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#
|
||||
# Este script configura o NGINX Ingress para:
|
||||
# - Usar LoadBalancer da Hetzner (requer CCM instalado)
|
||||
# - Suportar TCP passthrough para SSH do GitLab
|
||||
# - Suportar TCP passthrough para SSH do Gitea
|
||||
# - Comunicação via rede privada
|
||||
#
|
||||
# Pré-requisitos:
|
||||
@@ -125,15 +125,14 @@ echo ""
|
||||
echo "Portas expostas:"
|
||||
echo " - 80 (HTTP)"
|
||||
echo " - 443 (HTTPS)"
|
||||
echo " - 22 (SSH - para GitLab)"
|
||||
echo " - 22 (SSH - para Gitea)"
|
||||
echo ""
|
||||
echo "Próximos passos:"
|
||||
echo " 1. Configure DNS apontando para o IP acima:"
|
||||
echo " - n8n.kube.quest → $EXTERNAL_IP"
|
||||
echo " - git.kube.quest → $EXTERNAL_IP"
|
||||
echo " - registry.git.kube.quest → $EXTERNAL_IP"
|
||||
echo " - gitea.kube.quest → $EXTERNAL_IP"
|
||||
echo ""
|
||||
echo " 2. Instale o GitLab:"
|
||||
echo " 2. Instale o Gitea:"
|
||||
echo " cd ../aula-09 && ./setup.sh"
|
||||
echo ""
|
||||
echo "=============================================="
|
||||
|
||||
@@ -333,7 +333,7 @@ resource "hcloud_load_balancer_service" "https" {
|
||||
}
|
||||
}
|
||||
|
||||
# SSH (22) -> Workers (GitLab SSH)
|
||||
# SSH (22) -> Workers (Gitea SSH)
|
||||
resource "hcloud_load_balancer_service" "ssh" {
|
||||
count = var.enable_loadbalancer ? 1 : 0
|
||||
load_balancer_id = hcloud_load_balancer.cluster[0].id
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
# Este values configura o NGINX Ingress com:
|
||||
# - LoadBalancer da Hetzner (provisionado automaticamente pelo CCM)
|
||||
# - Suporte a TCP para SSH do GitLab (porta 22)
|
||||
# - Suporte a TCP para SSH do Gitea (porta 22)
|
||||
# - Uso de rede privada para comunicação com os nodes
|
||||
#
|
||||
# Uso:
|
||||
@@ -40,12 +40,12 @@ controller:
|
||||
load-balancer.hetzner.cloud/health-check-retries: "3"
|
||||
|
||||
# ==========================================================================
|
||||
# TCP Services - Para SSH do GitLab
|
||||
# TCP Services - Para SSH do Gitea
|
||||
# ==========================================================================
|
||||
# Mapeia porta externa -> namespace/service:porta
|
||||
# O GitLab Shell roda no namespace gitlab, service gitlab-gitlab-shell
|
||||
# O Gitea SSH roda no namespace gitea, service gitea-ssh
|
||||
tcp:
|
||||
22: "gitlab/gitlab-gitlab-shell:22"
|
||||
22: "gitea/gitea-ssh:22"
|
||||
|
||||
# Configuração do controller
|
||||
config:
|
||||
@@ -57,7 +57,7 @@ controller:
|
||||
proxy-read-timeout: "120"
|
||||
proxy-send-timeout: "120"
|
||||
|
||||
# Body size para uploads grandes (GitLab, n8n)
|
||||
# Body size para uploads grandes (Gitea, n8n)
|
||||
proxy-body-size: "0"
|
||||
|
||||
# Keepalive
|
||||
|
||||
@@ -212,7 +212,7 @@ if [ "$SKIP_CREDENTIALS" != "true" ]; then
|
||||
echo ""
|
||||
echo " O LoadBalancer também serve para:"
|
||||
echo " - HTTP/HTTPS (NGINX Ingress)"
|
||||
echo " - SSH (GitLab)"
|
||||
echo " - SSH (Gitea)"
|
||||
echo " - Talos API"
|
||||
echo ""
|
||||
echo " Custo adicional: ~\$6/mes"
|
||||
|
||||
Reference in New Issue
Block a user