From 0ebcafe010d841658d18334821db873154fb2074 Mon Sep 17 00:00:00 2001 From: devops Date: Sun, 12 Jul 2026 02:44:05 +0000 Subject: [PATCH] Actualizar deploy-lab.sh --- deploy-lab.sh | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/deploy-lab.sh b/deploy-lab.sh index 9594b9a..972291a 100644 --- a/deploy-lab.sh +++ b/deploy-lab.sh @@ -1,18 +1,18 @@ #!/bin/bash -# Script de Reconstrucción de Laboratorio - ZimaOS + k3d + ArgoCD +# Script Maestro: Despliegue Estable de Laboratorio (ZimaOS + k3d + ArgoCD) set -e CLUSTER_NAME="lab-cluster" APP_DATA_PATH="/DATA/AppData/k3d-lab" -echo "--- 1. Preparando directorios persistentes ---" +echo "--- 1. Preparando entorno ---" sudo mkdir -p $APP_DATA_PATH/{gitea,argocd} sudo chmod -R 777 $APP_DATA_PATH/ -echo "--- 2. Limpiando clúster previo (si existe) ---" +echo "--- 2. Limpiando clúster previo ---" k3d cluster delete $CLUSTER_NAME || true -echo "--- 3. Creando clúster con persistencia y puertos definidos ---" +echo "--- 3. Creando clúster con persistencia ---" k3d cluster create $CLUSTER_NAME \ --api-port 46421 \ -p "90:80@loadbalancer" \ @@ -21,7 +21,7 @@ k3d cluster create $CLUSTER_NAME \ -v "$APP_DATA_PATH/argocd:/var/lib/argocd" \ --agents 2 -echo "--- 4. Aplicando persistencia de servicios (Restart Always) ---" +echo "--- 4. Configurando reinicio automático ---" sudo docker update --restart=always $(sudo docker ps -a -q -f name=k3d) echo "--- 5. Configurando Kubeconfig ---" @@ -32,11 +32,18 @@ echo "--- 6. Instalando ArgoCD ---" kubectl create namespace argocd || true kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml -echo "--- 7. Ajustando ArgoCD para Proxy Externo (Insecure Mode) ---" +echo "--- 7. Validando estado del clúster (Esperando a que esté Ready) ---" +echo "Esperando nodos..." +kubectl wait --for=condition=Ready nodes --all --timeout=120s +echo "Esperando pods de ArgoCD..." +kubectl wait --for=condition=Ready pods -n argocd --all --timeout=120s + +echo "--- 8. Ajustando modo Insecure (Proxy-Friendly) ---" kubectl patch configmap argocd-cmd-params-cm -n argocd --type merge -p '{"data":{"server.insecure":"true"}}' kubectl rollout restart deployment argocd-server -n argocd +kubectl rollout status deployment argocd-server -n argocd --timeout=60s -echo "--- 8. Aplicando Ingress para Traefik ---" +echo "--- 9. Aplicando Ingress (Traefik) ---" cat <