Requisitos del servidor Sherpa Orchestrator#

Requisitos del sistema#

  • OS: se recomienda Ubuntu 20.04+, sin embargo, generalmente no hay problemas con otras distribuciones de Linux.
  • CPU: x86-64-v2, mínimo 2 núcleos
  • RAM: mínimo 4 GB, se recomiendan 8 GB+
  • Disco: 20 GB+ de espacio libre
  • Red: Conexión a Internet estable
  • Acceso: derechos de sudo para la instalación

Importante:

  • La instalación toma tiempo debido a la descarga de imágenes de Docker
  • Después de la instalación, no se requiere Internet para el funcionamiento

Preparación del servidor#

Verificación de recursos#

A continuación se utiliza la sintaxis de Ubuntu, si el comando no es adecuado, deberá cambiar la sintaxis según su sistema operativo

# Verifique los recursos del sistema
df -h          # Espacio en disco
free -h        # Memoria RAM
lscpu | grep -E "^CPU\(s\)|Model name"  # Información del procesador
💡 Comentarios sobre la verificación de recursos

df -h - muestra el uso del espacio en disco en un formato legible para humanos free -h - muestra información sobre la memoria RAM lscpu - muestra información sobre el procesador

Valores mínimos recomendados:

  • Disco: mínimo 20 GB de espacio libre
  • RAM: mínimo 4 GB
  • CPU: mínimo 2 núcleos

Instalación de herramientas básicas#

# Actualice el sistema e instale herramientas
sudo apt update
sudo apt install -y ca-certificates curl tar
💡 Comentarios sobre la instalación de herramientas básicas

sudo apt update - actualiza la lista de paquetes disponibles desde los repositorios sudo apt install -y ca-certificates curl tar - instala las herramientas necesarias:

  • ca-certificates - certificados raíz para la verificación SSL
  • curl - herramienta para descargar archivos
  • tar - utilidad para trabajar con archivos comprimidos
  • -y - confirmación automática de la instalación

Instalación de Docker (obligatorio)#

Sherpa Orchestrator funciona exclusivamente en contenedores Docker.

Instalación de Docker CE#

# Agregue la clave GPG oficial de Docker
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Agregue el repositorio de Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Instale Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
💡 Comentarios sobre la instalación de Docker

Agregar la clave GPG:

  • sudo install -m 0755 -d /etc/apt/keyrings - crea un directorio para las claves con los permisos correctos
  • sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc - descarga la clave GPG de Docker
  • sudo chmod a+r /etc/apt/keyrings/docker.asc - establece permisos de lectura para todos

Agregar el repositorio:

  • echo "deb [...] - agrega el repositorio oficial de Docker a la lista de fuentes APT
  • Utiliza variables de entorno para determinar la arquitectura y la versión de Ubuntu

Instalación de paquetes:

  • sudo apt update - actualiza la lista de paquetes después de agregar un nuevo repositorio
  • sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin - instala Docker y sus componentes

Configuración y verificación#

# Agregue el usuario al grupo docker (opcional)
sudo usermod -aG docker $USER

# Inicie y habilite Docker
sudo systemctl start docker
sudo systemctl enable docker

# Verifique la instalación
docker --version
docker compose version
💡 Comentarios sobre la configuración de Docker

sudo usermod -aG docker $USER - agrega al usuario actual al grupo docker

  • -a - append (agrega a los grupos existentes)
  • -G docker - agrega al grupo docker
  • $USER - variable con el nombre del usuario actual

sudo systemctl start docker - inicia el daemon de Docker sudo systemctl enable docker - habilita el inicio automático de Docker al arrancar el sistema

docker --version - muestra la versión de Docker docker compose version - muestra la versión de Docker Compose

Resultado esperado: Docker inicia correctamente un contenedor de prueba.

Verificación de puertos#

Sherpa Orchestrator utiliza los siguientes puertos:

  • 443 - interfaz web HTTPS (obligatorio)
  • 5000 - API VNC proxy
  • 6080-6100 - rango de puertos para conexiones VNC

Verificación de la disponibilidad de puertos#

# Verifique si los puertos necesarios están ocupados
sudo netstat -tlnp | grep -E ":443 |:5000 |:608[0-9] |:609[0-9] |:6100 " || echo "Puertos libres"
💡 Comentarios sobre la verificación de puertos

sudo netstat -tlnp - muestra todos los puertos TCP en escucha y los procesos

  • -t - puertos TCP
  • -l - solo puertos en escucha
  • -n - formato numérico (sin resolución de nombres)
  • -p - muestra el PID y el nombre del proceso

Resultado esperado:

  • Si los puertos están libres, el comando mostrará "Puertos libres"
  • Si los puertos están ocupados, se mostrarán los procesos que los utilizan

Verificación de configuración#

Verificación final antes del lanzamiento#

# Verifique Docker
docker --version && docker compose version

# Verifique las variables de entorno
cat .env

# Verifique la disponibilidad de puertos
sudo netstat -tlnp | grep -E ":443 |:5000 |:608[0-9] |:609[0-9] |:6100 " || echo "Todos los puertos libres"

# Verifique el espacio en disco
df -h /var/lib/docker || echo "El controlador de almacenamiento de Docker no está configurado"

echo "Si todas las verificaciones se han realizado con éxito, se puede iniciar Sherpa Orchestrator"

Resultado esperado: Todos los comandos deben ejecutarse sin errores, los puertos deben estar libres.