# MinIO en Kubernetes — c2et.net (Site A/B) Este paquete contiene manifiestos sin Helm para desplegar **dos instancias independientes de MinIO**, una por site, usando tus StorageClasses `sc-me5-site-a` y `sc-me5-site-b`, y forzando programación por zona. ## Estructura ``` minio-k8s-c2et-net/ site-a/ namespace.yaml secret-root.yaml pvc.yaml statefulset.yaml service.yaml ingress-api.yaml ingress-console.yaml site-b/ (idéntico con valores del site B) ``` ## Credenciales de administración - Usuario: **admin** - Password: **Pozuelo12345** > Cambia estas credenciales en `secret-root.yaml` antes de ir a producción. ## Dominios - Site A API: `s3-a.c2et.net` - Site A Consola: `console.s3-a.c2et.net` - Site B API: `s3-b.c2et.net` - Site B Consola: `console.s3-b.c2et.net` Requisitos previos: - IngressClass `nginx` operativo. - `cert-manager` con `ClusterIssuer` llamado `letsencrypt-prod`. - DNS apuntando los hosts anteriores al Ingress Controller. ## Despliegue rápido ```bash kubectl apply -f site-a/namespace.yaml kubectl apply -f site-a/secret-root.yaml kubectl apply -f site-a/pvc.yaml kubectl apply -f site-a/service.yaml kubectl apply -f site-a/statefulset.yaml kubectl apply -f site-a/ingress-api.yaml kubectl apply -f site-a/ingress-console.yaml kubectl apply -f site-b/namespace.yaml kubectl apply -f site-b/secret-root.yaml kubectl apply -f site-b/pvc.yaml kubectl apply -f site-b/service.yaml kubectl apply -f site-b/statefulset.yaml kubectl apply -f site-b/ingress-api.yaml kubectl apply -f site-b/ingress-console.yaml ``` ## Probar ```bash export AWS_ACCESS_KEY_ID=admin export AWS_SECRET_ACCESS_KEY='Pozuelo12345' export AWS_S3_FORCE_PATH_STYLE=true aws --endpoint-url https://s3-a.c2et.net s3 mb s3://mi-bucket-a aws --endpoint-url https://s3-a.c2et.net s3 ls aws --endpoint-url https://s3-b.c2et.net s3 mb s3://mi-bucket-b aws --endpoint-url https://s3-b.c2et.net s3 ls ``` ## Notas - Los PVC usan `WaitForFirstConsumer` a través de tus StorageClasses; el `nodeSelector` del StatefulSet garantiza que cada volumen se cree en el **site** correcto. - Imagen MinIO: `quay.io/minio/minio:RELEASE.2025-02-20T00-00-00Z` (ajústala a la que certifiques). - Tamaño del PVC por defecto: `2Ti` (modifícalo a tu necesidad).