> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/learn-the-platform/es/modulo-7-multiinquilinato/04-resource-allocation.md).

# Asignación y escalado de recursos

## Nodos de inquilino: hosts virtuales para centros de datos virtuales

Cada inquilino de VergeOS se ejecuta en uno o más **nodos de inquilino** — servidores virtuales que simulan hosts físicos de VergeOS. Cada nodo de inquilino proporciona cómputo dedicado (núcleos de CPU), memoria (RAM) y red para las cargas de trabajo del inquilino, al tiempo que mantiene un aislamiento total mediante la red encapsulada del inquilino.

Comprender cómo funcionan los nodos de inquilino es la clave para dimensionar correctamente las implementaciones de inquilinos y escalarlas con el tiempo.

### Características de los nodos de inquilino

| Característica                      | Descripción                                                                                                                                        |
| ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Hosts simulados**                 | Los nodos de inquilino replican la funcionalidad de los nodos físicos de VergeOS dentro del Centro de Datos Virtual del inquilino                  |
| **Comunicación segura entre hosts** | Los nodos de inquilino se comunican a través de la red encapsulada protegida del inquilino, incluso cuando se ejecutan en hosts físicos diferentes |
| **Movilidad**                       | Los nodos de inquilino se migran en vivo entre hosts físicos para mantenimiento, equilibrio de carga y conmutación por error automática            |
| **Asignación de recursos ajustada** | Los nodos de inquilino pueden apuntar a diferentes clústeres con distintos perfiles de hardware (estándar, vGPU, alta memoria)                     |
| **Escalado sin interrupciones**     | Los núcleos y la RAM pueden aumentarse o reducirse en un nodo de inquilino en ejecución sin reiniciarlo                                            |

### Límites del nodo de inquilino

Valores predeterminados y máximos por nodo de inquilino:

| Recurso | Predeterminado | Máxima              |
| ------- | -------------- | ------------------- |
| Núcleos | 4              | 1,048,576           |
| RAM     | 16 GB          | 5,242,880 MB (5 TB) |

Clúster `RAM máxima por máquina` y `Núcleos máximos por máquina` los ajustes pueden restringir aún más lo que un nodo de inquilino dado puede consumir realmente.

La red también tiene un límite a nivel de inquilino: un máximo de **28 segmentos de red de host** pueden extenderse a un solo inquilino como conexiones de Capa 2 (tipos elegibles: internos, externos, BGP, VPN y puenteadas físicamente).

### Sin cálculo manual de sobrecarga

VergeOS tiene en cuenta automáticamente la sobrecarga del hipervisor y del almacenamiento. La memoria que asignas a un nodo de inquilino está **totalmente disponible** para ese inquilino para distribuirla entre sus propias cargas de trabajo — no se requiere cálculo manual de sobrecarga.

## Inquilinos de un solo nodo vs. de varios nodos

La primera decisión de planificación es si un inquilino necesita un nodo o varios.

### Inquilinos de un solo nodo (valor predeterminado preferido)

Un solo nodo de inquilino es la configuración más simple y común. Es el punto de partida recomendado siempre que los requisitos de cómputo y memoria de un inquilino quepan en un solo nodo.

Los inquilinos de un solo nodo siguen proporcionando redundancia mediante el mecanismo integrado de VergeOS **mecanismo watchdog**:

* Si falla el host físico que ejecuta el nodo de inquilino, el watchdog reinicia automáticamente el nodo de inquilino en otro host físico
* Durante el mantenimiento planificado, se crea un nodo de inquilino temporal para migrar cargas de trabajo en vivo sin interrupción del servicio
* Se pueden agregar nodos de inquilino adicionales más adelante, sin interrupciones, a medida que crecen las necesidades

{% hint style="success" %}
**Empezar simple**

Si los requisitos de RAM y núcleos pueden satisfacerse con un solo nodo de inquilino y no hay necesidades de red o de dispositivos que requieran varios hosts físicos, un solo nodo es preferible por simplicidad.
{% endhint %}

### Cuándo se necesitan inquilinos de varios nodos

Se vuelven necesarios varios nodos de inquilino en escenarios específicos:

1. **El cómputo excede los máximos del clúster** — La cantidad de núcleos y RAM asignable a un solo nodo de inquilino está limitada por la configuración del clúster (*RAM máxima por máquina* y *Núcleos máximos por máquina*). Cuando un inquilino necesita más de lo que corresponde a un nodo, agregue nodos adicionales.
2. **Aplicaciones en clúster** — granjas web, clústeres Hadoop, pares primario/réplica de bases de datos y otras aplicaciones distribuidas que requieren que las cargas de trabajo se ejecuten en distintos hosts físicos para HA, balanceo de carga o procesamiento paralelo.
3. **Capacidades de hardware mixtas** — Cuando un inquilino necesita tanto cómputo estándar como hardware especializado (vGPU, passthrough PCI, dispositivos USB), implemente nodos de inquilino en diferentes clústeres con el hardware adecuado.
4. **Separación regulatoria** — Los requisitos de cumplimiento pueden exigir que determinadas cargas de trabajo se ejecuten en hosts físicamente separados.

## Estrategia de dimensionamiento adecuado

Los inquilinos de VergeOS admiten **escalado de recursos sin interrupciones** — puedes agregar núcleos, RAM, nodos y almacenamiento a un inquilino en ejecución sin afectar las cargas de trabajo. Esto significa que debes:

* **Aprovisione para las necesidades actuales y a corto plazo**, no para un crecimiento futuro especulativo
* **Escalar orgánicamente** a medida que aumenta la demanda real
* **Evitar la sobreasignación** — los recursos no utilizados asignados a un inquilino no pueden servir a otros

```mermaid
flowchart TD
    A["Evaluar requisitos de la carga de trabajo"] --> B{"¿Los requisitos caben\nen un solo nodo?"}
    B -- Sí --> C["Implementar inquilino de un solo nodo"]
    B -- No --> D{"¿Motivo de varios nodos?"}
    D -- "Supera el máximo del clúster" --> E["Agregar nodos al\nmismo clúster"]
    D -- "HA / aplicaciones en clúster" --> F["Agregar nodos con\nantiafinidad del Grupo HA"]
    D -- "Hardware mixto" --> G["Agregar nodos en\ndiferentes clústeres"]
    D -- "Regulatorio" --> H["Agregar nodos en\nhosts físicos separados"]
    C --> I["Monitorear y escalar\nverticalmente primero"]
    E --> I
    F --> I
    G --> I
    H --> I
    I --> J{"¿Se necesitan más\nrecursos?"}
    J -- "Cabe en el nodo existente" --> K["Aumentar núcleos/RAM\nen el nodo existente"]
    J -- "Supera la capacidad del nodo" --> L["Agregar otro\nnodo de inquilino"]
    K --> I
    L --> I

    style A fill:#e8f5e9,stroke:#2e7d32
    style C fill:#e3f2fd,stroke:#1565c0
    style I fill:#fff3e0,stroke:#e65100
```

## Configuraciones de ejemplo

Los siguientes ejemplos ilustran decisiones reales de planificación de nodos de inquilino.

### Ejemplo 1: inquilino pequeño de un solo nodo

**Escenario:** 3 VMs, sin requisitos especiales. El clúster de hosts permite una RAM máxima de 64 GB y un máximo de 16 núcleos.

| Ajuste             | Valor                                                                       |
| ------------------ | --------------------------------------------------------------------------- |
| Nodos de inquilino | 1                                                                           |
| Núcleos            | 8                                                                           |
| RAM                | 16 GB                                                                       |
| Ruta de escalado   | Agregar núcleos/RAM hasta 64 GB / 16 núcleos, luego agregar un segundo nodo |

**Justificación:** Un solo nodo proporciona recursos suficientes. La conmutación por error del watchdog garantiza redundancia sin complejidad adicional.

### Ejemplo 2: aplicaciones web HA de tamaño mediano

**Escenario:** Aplicaciones web orientadas al cliente que requieren HA de múltiples instancias. El clúster de hosts permite una RAM máxima de 128 GB y un máximo de 16 núcleos.

| Ajuste             | Valor                                                                                                |
| ------------------ | ---------------------------------------------------------------------------------------------------- |
| Nodos de inquilino | 2                                                                                                    |
| Nodo 1             | 64 GB de RAM, 12 núcleos (2 servidores web + base de datos primaria)                                 |
| Nodo 2             | 64 GB de RAM, 12 núcleos (2 servidores web + réplica de la base de datos)                            |
| Grupos HA          | Las reglas de antiafinidad aseguran que las instancias web/DB permanezcan en hosts físicos separados |

**Justificación:** Aunque un nodo podría contener todos los recursos, dos nodos garantizan que los servidores web y los componentes de base de datos se ejecuten en hosts físicos diferentes para la HA a nivel de aplicación.

### Ejemplo 3: carga de trabajo mixta con GPU

**Escenario:** Cómputo estándar, renderizado de video de alto rendimiento y procesamiento acelerado por GPU. Hay tres clústeres de hosts disponibles: Estándar (máx. 64 GB), vGPU (máx. 64 GB), Premium (máx. 128 GB).

| Ajuste             | Valor                                                                 |
| ------------------ | --------------------------------------------------------------------- |
| Nodos de inquilino | 4                                                                     |
| Nodo 1             | 64 GB, 8 núcleos — Clúster estándar (servidores de archivos)          |
| Nodo 2             | 64 GB, 8 núcleos — Clúster estándar (herramientas de administración)  |
| Nodo 3             | 64 GB, 16 núcleos — Clúster vGPU (renderizado de video)               |
| Nodo 4             | 48 GB, 8 núcleos — Clúster Premium (estaciones de trabajo de edición) |

**Justificación:** Varios nodos permiten la ubicación en clústeres con capacidades de hardware coincidentes. Cada nodo de inquilino apunta al clúster que mejor se adapta a su carga de trabajo.

### Ejemplo 4: analítica distribuida empresarial

**Escenario:** Plataforma de analítica distribuida que requiere implementación en varios hosts para balanceo de carga y redundancia. El clúster de hosts permite una RAM máxima de 96 GB y un máximo de 16 núcleos.

| Ajuste             | Valor                                                                                          |
| ------------------ | ---------------------------------------------------------------------------------------------- |
| Nodos de inquilino | 4                                                                                              |
| Nodos 1–3          | 64 GB, 12 núcleos cada uno (1 servidor de aplicaciones + 1 servidor de base de datos por nodo) |
| Nodo 4             | 32 GB, 8 núcleos (2 servidores de procesamiento de datos)                                      |
| Grupos HA          | La antiafinidad garantiza que las instancias de aplicación se distribuyan entre hosts físicos  |

**Justificación:** Cuatro nodos de inquilino garantizan que las instancias de aplicación se ejecuten en múltiples hosts físicos, manteniendo la capacidad de ejecutar todos los servicios dentro del inquilino.

## Aumento de recursos del inquilino

VergeOS ofrece tres métodos no disruptivos para agregar recursos a un inquilino en ejecución.

### Agregar núcleos/RAM a un nodo existente

Los cambios surten efecto **de inmediato** en el nodo de inquilino — no se requiere reinicio.

1. Ir al **Panel del inquilino** → **Nodos**
2. Haga doble clic en el nodo de destino → haga clic en **Editar**
3. Modificar los **Núcleos** y/o **RAM** campos
4. Haz clic en **Enviar**

{% hint style="info" %}
**Límites del clúster**

El máximo de núcleos y RAM por nodo de inquilino está determinado por los *RAM máxima por máquina* y *Núcleos máximos por máquina* ajustes del clúster. Agote los nodos existentes antes de agregar nuevos, a menos que el equilibrio de la carga de trabajo requiera lo contrario.
{% endhint %}

{% hint style="info" %}
**Validación del cambio de recursos**

Cuando se cambian núcleos o RAM en un nodo de inquilino, VergeOS ejecuta `validatecluster.gcs` contra el clúster primario (y `validateclusterfailover.gcs` contra el clúster de failover, si se configuró uno). Los cambios que excederían los límites por máquina de cualquiera de los clústeres — o que el host en ejecución no pueda satisfacer con RAM libre — se rechazan, evitando el sobrecompromiso.
{% endhint %}

### Agregar un nuevo nodo de inquilino

1. Ir al **Panel del inquilino** → **Nodos** → **Nuevo**
2. Configurar **Núcleos**, **RAM**, **Clúster**, y **Clúster de conmutación por error**
3. Selecciona **Al perder energía** comportamiento (Último estado, Dejar apagado o Encender)
4. Haz clic en **Enviar**

{% hint style="warning" %}
**Nodo preferido**

Establecer un *nodo preferido* es **no recomendado** para nodos de inquilino. Una configuración incorrecta puede afectar negativamente la redundancia integrada. Consulte al Soporte de VergeOS si es necesario.
{% endhint %}

### Aprovisionar almacenamiento adicional

**Nuevo nivel de almacenamiento:**

1. Panel del inquilino → **Agregar almacenamiento** → seleccione **Nivel** → ingrese **aprovisionado** cantidad → **Enviar**

**Expandir nivel existente:**

1. Panel del inquilino → desplácese hasta **Almacenamiento** sección → haga clic en **Editar** en el nivel deseado
2. Ingrese el nuevo **total** cantidad aprovisionada (por ejemplo, cambie 50 GB a 75 GB para agregar 25 GB)

## Reducción de recursos del inquilino

### Reducir núcleos/RAM

Los núcleos y la RAM pueden reducirse en un nodo de inquilino en ejecución sin apagarlo. Sin embargo, si esos recursos se están utilizando actualmente por VMs del inquilino, la **reclamación real se difiere** hasta que las VMs se apaguen.

**Ejemplo:** Reduce la RAM de un nodo de inquilino de 32 GB a 28 GB, pero las VMs están usando actualmente los 32 GB completos. La configuración cambia de inmediato, pero la diferencia de 4 GB no se recupera hasta que las VMs liberen esa memoria.

### Eliminar un nodo de inquilino

1. Apague o migre todas las VMs del nodo
2. Apague el nodo de inquilino
3. Navega a **Panel del inquilino** → **Nodos** → seleccione el nodo → **Eliminar**

{% hint style="warning" %}
**Requisito mínimo de nodo**

Un inquilino siempre debe tener al menos un nodo. Antes de eliminar cualquier nodo de inquilino, asegúrese de que al menos quede otro nodo y de que todas las cargas de trabajo se hayan migrado fuera del nodo que se va a quitar.
{% endhint %}

## Rutas de escalado: primero vertical, luego horizontal

La estrategia de escalado recomendada para inquilinos sigue una progresión clara:

### Paso 1: Escalar verticalmente

Aumente los núcleos y la RAM en los nodos de inquilino existentes hasta el máximo del clúster. Este es el camino más simple y sin interrupciones.

### Paso 2: Escalar horizontalmente

Cuando los nodos existentes estén al máximo, agregue nuevos nodos de inquilino. Colóquelos en el mismo clúster para una expansión general o en clústeres diferentes para hardware especializado.

### Paso 3: Agregar almacenamiento

Expanda el almacenamiento aprovisionado independientemente del cómputo. Agregue capacidad a un nivel existente o aprovisione un nuevo nivel de almacenamiento.

### Paso 4: Reequilibrar

Si la distribución de recursos se vuelve desigual entre nodos, equilibre RAM/núcleos entre nodos en lugar de maximizar uno y aprovisionar mínimamente otro.

{% hint style="info" %}
**¿Vienes de VMware o Nutanix?**

En VMware y Nutanix, "escalar un inquilino" generalmente significa redimensionar una cuota y confiar en el programador. En VergeOS, dimensiona directamente nodos de inquilino dedicados.
{% endhint %}

| Plataforma | Modelo de aislamiento                                                                                              | Acción de escalado                                                                                                              |
| ---------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| VergeOS    | Cada inquilino es un VDC con nodos de inquilino dedicados (red encapsulada + volúmenes de almacenamiento aislados) | Edite en vivo los núcleos/RAM de un nodo de inquilino, o agregue un nodo — el sistema contabiliza la sobrecarga automáticamente |

## Prácticas recomendadas

| Práctica                                                   | Orientación                                                                                                                                    |
| ---------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Comience con un nodo**                                   | Use por defecto inquilinos de un solo nodo; agregue nodos solo cuando sea necesario                                                            |
| **Ajuste el tamaño para ahora**                            | Aprovisione para las necesidades actuales/cercanas en el tiempo, no para un crecimiento futuro especulativo                                    |
| **Maximice antes de agregar**                              | Aumente los recursos del nodo existente antes de agregar nuevos nodos (a menos que el equilibrio de la carga de trabajo requiera lo contrario) |
| **Equilibre los recursos**                                 | Cuando se necesiten dos nodos, distribuya los recursos de manera uniforme en lugar de maximizar uno y minimizar el otro                        |
| **Use grupos HA**                                          | Para inquilinos de varios nodos con requisitos HA, configure reglas de antiafinidad para que las VMs se distribuyan entre hosts físicos        |
| **Haga coincidir los clústeres con las cargas de trabajo** | Coloque los nodos de inquilino en clústeres con hardware que coincida con la carga de trabajo (GPU, alta memoria, estándar)                    |
| **Monitoree y ajuste**                                     | Use los paneles del inquilino e informes de uso para identificar cuándo se necesita escalar                                                    |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.verge.io/learn-the-platform/es/modulo-7-multiinquilinato/04-resource-allocation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
