From d6667afa64bb29b8e7b7d33deead6b62cf17ff7f Mon Sep 17 00:00:00 2001 From: xguefer Date: Thu, 31 Jul 2025 02:00:57 +0200 Subject: [PATCH] eliminado elemento duplicsdo en ingress.md --- ingress.md | 122 +---------------------------------------------------- 1 file changed, 2 insertions(+), 120 deletions(-) diff --git a/ingress.md b/ingress.md index 77b8dd9..29e179c 100644 --- a/ingress.md +++ b/ingress.md @@ -1,123 +1,5 @@ -## 1. Cert-Manager: Gestión automática de certificados TLS en Kubernetes - -[`cert-manager`](https://cert-manager.io/) es un componente esencial en entornos Kubernetes modernos. Se encarga de emitir y renovar automáticamente certificados TLS, eliminando la necesidad de gestionarlos manualmente. Esto es especialmente útil cuando los servicios se exponen a través de un Ingress Controller y se quiere TLS mediante Let's Encrypt. - -### ¿Cómo funciona? - -* Se integra con el API de Kubernetes. -* Usa recursos personalizados (`Issuer` y `ClusterIssuer`) para definir cómo se emitirán los certificados. -* Funciona con **ACME** (como Let's Encrypt) para obtener certificados automáticamente. -* Trabaja junto con los objetos `Ingress` para asegurar las rutas públicas de nuestros servicios. -* Puede usar solvers `http01` (habitualmente expuestos por el Ingress Controller) para verificar la propiedad del dominio. - ---- - -## 2. Despliegue de cert-manager - -### Paso 1: Crear el namespace - -```yaml -# namespace.yaml -apiVersion: v1 -kind: Namespace -metadata: - name: cert-manager -``` - -```bash -kubectl apply -f namespace.yaml -``` - ---- - -### Paso 2: Instalar cert-manager desde el repositorio oficial - -```bash -kubectl apply -f https://github.com/cert-manager/cert-manager/releases/latest/download/cert-manager.yaml -``` - -Esto instalará los CRDs necesarios, así como los controladores en el namespace `cert-manager`. - ---- - -## 3. Configurar los emisores de certificados - -### Issuer vs ClusterIssuer - -* `Issuer`: solo disponible en un namespace concreto. -* `ClusterIssuer`: disponible en todo el clú ster. - -Aquí usamos `ClusterIssuer` para que cualquier `Ingress` de cualquier namespace pueda solicitar certificados. - -### Paso 3: Crear los ClusterIssuers - -```yaml -# clusterissuer-staging.yaml -apiVersion: cert-manager.io/v1 -kind: ClusterIssuer -metadata: - name: letsencrypt-staging -spec: - acme: - email: xavor@hotmail.es - server: https://acme-staging-v02.api.letsencrypt.org/directory - privateKeySecretRef: - name: letsencrypt-staging - solvers: - - http01: - ingress: - ingressClassName: traefik -``` - -```yaml -# clusterissuer-prod.yaml -apiVersion: cert-manager.io/v1 -kind: ClusterIssuer -metadata: - name: letsencrypt-prod -spec: - acme: - email: xavor@hotmail.es - server: https://acme-v02.api.letsencrypt.org/directory - privateKeySecretRef: - name: letsencrypt-prod - solvers: - - http01: - ingress: - ingressClassName: traefik -``` - -> ⚠️ Asegúrate de que `ingressClassName` coincida con el del Ingress Controller instalado (como `nginx`, `traefik`, `haproxy`). - -```bash -kubectl apply -f clusterissuer-staging.yaml -kubectl apply -f clusterissuer-prod.yaml -``` - ---- - -## 4. Uso de kustomize para aplicar en bloque - -Puedes usar `kustomize` para aplicar todo desde un solo punto: - -```yaml -# kustomization.yaml -namespace: cert-manager -resources: - - clusterissuer-prod.yaml - - clusterissuer-staging.yaml -``` - -Y aplicarlo con: - -```bash -kubectl apply -k . -``` - ---- - - -## 1. Cert-Manager: Gestión automática de certificados TLS en Kubernetes +## 1. Cert-Manager: Gestión automática de certificados TLS en +## Kubernetes [`cert-manager`](https://cert-manager.io/) es un componente esencial en entornos Kubernetes modernos. Se encarga de emitir y renovar automáticamente certificados TLS, eliminando la necesidad de gestionarlos manualmente. Esto es especialmente útil cuando los servicios se exponen a través de un Ingress Controller y se quiere TLS mediante Let's Encrypt.