# Requisitos del servidor Sherpa Orchestrator (instalación local)

### Requisitos del sistema

* **OS**: Debian 11 minimal (recomendado), otras distribuciones de Linux con posibles modificaciones
* **CPU**: x86\_64, mínimo 2 núcleos
* **RAM**: 4 GB mínimo, 8 GB+ recomendado
* **Disco**: 20 GB+ de espacio libre
* **Red**: Dirección IP fija y conexión a Internet estable para todos los clientes previstos
* **Acceso**: permisos sudo para la instalación

**Importante:**

* La instalación toma tiempo debido a la descarga de paquetes y dependencias
* Después de la instalación, no se requiere Internet para el funcionamiento
* El servidor debe tener una dirección IP fija

### Preparación del servidor

#### Verificación de recursos del sistema

```bash
# 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
```

<details>

<summary>💡 Comentarios sobre la verificación de recursos</summary>

**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

</details>

#### Verificación de disponibilidad de puertos

Sherpa Orchestrator utiliza los siguientes puertos:

* **443** - Interfaz web HTTPS (obligatorio)
* **3306** - Base de datos MySQL/MariaDB
* **5432** - Base de datos PostgreSQL (opcional)

#### Verificación de disponibilidad de puertos

```bash
# Verifique si los puertos necesarios están ocupados
sudo netstat -tlnp | grep -E ":443 |:3306 |:5432 " || echo "Puertos libres"
```

<details>

<summary>💡 Comentarios sobre la verificación de puertos</summary>

**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

</details>

### Sistemas operativos soportados

* **Debian 11** (recomendado para esta guía)
* Ubuntu 18.04+
* CentOS 7/8
* Otras distribuciones de Linux (con posibles modificaciones de comandos)

### Requisitos de red

* **Dirección IP fija** - crítico para el acceso de los clientes
* **Acceso a Internet** - para descargar paquetes y actualizaciones
* **Resolución DNS** - para acceder a los repositorios de paquetes

### Requisitos de seguridad

* **Certificados SSL/TLS** - para acceso HTTPS
* **Firewall** - debe permitir el acceso a los puertos 443
* **SELinux/AppArmor** - debe estar configurado o deshabilitado en caso de problemas

### Verificación final antes de la instalación

```bash
# Verifique los recursos del sistema
echo "=== Recursos del sistema ==="
df -h /
free -h
lscpu | grep -E "^CPU\(s\)|Model name"

# Verifique la red
echo "=== Configuración de red ==="
ip addr show

# Verifique el acceso a los repositorios
echo "=== Acceso a los repositorios ==="
sudo apt update --dry-run 2>/dev/null | head -10

echo "Si todas las verificaciones se han realizado con éxito, se puede proceder a la instalación de Sherpa Orchestrator"
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/es/sherpa-rpa/sherpa-orchestrator/ustanovka-sherpa-orchestrator/bez-ispolzvaniya-docker/trebovaniya-k-serveru-sherpa-orchestrator-lokalnaya-ustanovka.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
