XPIFY – Documentación técnica (TFG)¶
Bienvenido a la documentación técnica del TFG XPIFY, un proyecto que combina un entorno de infraestructura moderna con CI/CD automatizado.
Arquitectura general¶
flowchart LR
subgraph Proxmox
direction LR
VMk3s[VM k3s\nUbuntu 22.04\n192.168.1.122]
LXCgraf[LXC Grafana externo]
end
Dev[GitHub Repo\n(main)] -->|build & push| GHCR[(GHCR)]
GHCR -->|Argo CD sync| VMk3s
subgraph k3s Cluster
direction TB
Traefik[Traefik Ingress (in-cluster)]
Argo[Argo CD]
Prom[Prometheus (NodePort 30140)]
Loki[Loki (NodePort 32632)]
Apps[XPIFY Services]
end
NPM[Nginx Proxy Manager externo] -->|HTTPS| Traefik
LXCgraf -->|Métricas y logs| VMk3s
Tecnologías clave¶
- Proxmox: virtualización de entornos.
- k3s (Kubernetes): orquestación de servicios.
- Docker / Helm: contenedorización y despliegue.
- Argo CD: automatización GitOps.
- Traefik / NPM: reverse proxy y HTTPS.
- Prometheus + Grafana + Loki: monitorización y logs.
- GHCR + GitHub Actions: pipeline CI/CD.
Flujo de trabajo CI/CD¶
sequenceDiagram
participant Dev as Desarrollador
participant GH as GitHub Actions
participant GHCR as GHCR
participant AR as Argo CD
participant K3S as k3s Cluster
Dev->>GH: push main
GH->>GHCR: build & push images
GH->>AR: notifica cambios en charts
AR->>K3S: sincroniza despliegues
K3S->>Grafana: expone métricas/logs