- 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
89 lines
2.6 KiB
YAML
89 lines
2.6 KiB
YAML
# =============================================================================
|
|
# NGINX Ingress Controller - Configuração para Hetzner Cloud
|
|
# =============================================================================
|
|
#
|
|
# Este values configura o NGINX Ingress com:
|
|
# - LoadBalancer da Hetzner (provisionado automaticamente pelo CCM)
|
|
# - Suporte a TCP para SSH do Gitea (porta 22)
|
|
# - Uso de rede privada para comunicação com os nodes
|
|
#
|
|
# Uso:
|
|
# helm upgrade --install nginx-ingress ingress-nginx/ingress-nginx \
|
|
# -n ingress-nginx --create-namespace \
|
|
# -f nginx-ingress-values.yaml
|
|
#
|
|
# =============================================================================
|
|
|
|
controller:
|
|
# Configuração do Service LoadBalancer
|
|
service:
|
|
type: LoadBalancer
|
|
|
|
# Annotations específicas para Hetzner Cloud
|
|
annotations:
|
|
# Nome do LoadBalancer no painel Hetzner
|
|
load-balancer.hetzner.cloud/name: "k8s-ingress"
|
|
|
|
# Localização do LoadBalancer (mesmo datacenter do cluster)
|
|
load-balancer.hetzner.cloud/location: "nbg1"
|
|
|
|
# Usar rede privada para comunicação com nodes
|
|
# Mais seguro e sem custo de tráfego
|
|
load-balancer.hetzner.cloud/use-private-ip: "true"
|
|
|
|
# Tipo do LoadBalancer (lb11 é o menor/mais barato)
|
|
load-balancer.hetzner.cloud/type: "lb11"
|
|
|
|
# Health check
|
|
load-balancer.hetzner.cloud/health-check-interval: "5s"
|
|
load-balancer.hetzner.cloud/health-check-timeout: "3s"
|
|
load-balancer.hetzner.cloud/health-check-retries: "3"
|
|
|
|
# ==========================================================================
|
|
# TCP Services - Para SSH do Gitea
|
|
# ==========================================================================
|
|
# Mapeia porta externa -> namespace/service:porta
|
|
# O Gitea SSH roda no namespace gitea, service gitea-ssh
|
|
tcp:
|
|
22: "gitea/gitea-ssh:22"
|
|
|
|
# Configuração do controller
|
|
config:
|
|
# Habilitar proxy protocol se necessário
|
|
# use-proxy-protocol: "true"
|
|
|
|
# Timeouts
|
|
proxy-connect-timeout: "10"
|
|
proxy-read-timeout: "120"
|
|
proxy-send-timeout: "120"
|
|
|
|
# Body size para uploads grandes (Gitea, n8n)
|
|
proxy-body-size: "0"
|
|
|
|
# Keepalive
|
|
keep-alive: "75"
|
|
keep-alive-requests: "1000"
|
|
|
|
# Recursos do controller
|
|
resources:
|
|
requests:
|
|
cpu: 100m
|
|
memory: 128Mi
|
|
limits:
|
|
cpu: 500m
|
|
memory: 256Mi
|
|
|
|
# Métricas para monitoramento
|
|
metrics:
|
|
enabled: true
|
|
serviceMonitor:
|
|
enabled: false # Habilitar se usar Prometheus Operator
|
|
|
|
# Admission webhook
|
|
admissionWebhooks:
|
|
enabled: true
|
|
|
|
# Default backend (opcional)
|
|
defaultBackend:
|
|
enabled: false
|