Gestión de Servidores VPS ========================= NoxPanel proporciona un panel completo para la gestión de máquinas virtuales (VMs) a través de **Proxmox VE**. Desde el dashboard puedes crear, controlar y monitorizar tus servidores VPS con total autonomía. .. note:: El acceso a las VMs está controlado por **pools**. Solo puedes ver y gestionar las máquinas virtuales de los pools a los que tu usuario ha sido asignado. Acceso ------ El dashboard de VPS se encuentra en ``/dashboard/``. Al acceder verás: - **Pools asignados** — Grupos de recursos con sus VMs - **Lista de VMs** — Estado en tiempo real de cada máquina virtual - **Estadísticas** — Uso de CPU, memoria, disco y red - **Acciones rápidas** — Botones para iniciar, detener, reiniciar y acceder a la consola Descripción General ------------------- Las VMs en NoxPanel se ejecutan sobre clústeres de **Proxmox VE**. Cada VM se asocia a un pool de recursos que define: * Nodo del clúster donde se ejecuta * Almacenamiento disponible (local-lvm, NFS, Ceph, etc.) * Límites de CPU, memoria y disco * Plantillas disponibles para creación rápida Los usuarios pueden tener diferentes roles dentro de un pool: **Owner**, **Admin**, **User** o **Read-only**, cada uno con distintos niveles de permisos. Funcionalidades --------------- Crear una Nueva VM ~~~~~~~~~~~~~~~~~~ 1. Desde el dashboard, pulsa el botón **"Crear VM"** o accede desde un pool específico. 2. Configura los parámetros de la VM: .. code-block:: text Nombre: web-server-01 Pool: production Nodo: pve-node-01 Cores: 4 Memoria: 8192 MB Disco: 100 GB Storage: local-lvm Template: ubuntu-22.04-cloud 3. Opcionalmente, configura **Cloud-Init**: .. code-block:: text Usuario: deploy SSH Keys: ssh-rsa AAAA... usuario@host Configuración: DHCP o IP estática 4. Confirma la creación. El proceso es automático y puede tardar varios minutos. .. code-block:: python # Ejemplo via API — crear una VM import requests response = requests.post( 'https://tu-dominio.com/api/vms/create/', headers={'Authorization': 'Bearer '}, json={ 'name': 'web-server-01', 'pool': 'production', 'node': 'pve-node-01', 'cores': 4, 'memory': 8192, 'disk_size': 100, 'storage': 'local-lvm', 'template': 'ubuntu-22.04-cloud', } ) print(response.json()) Controlar VMs (Start / Stop / Restart) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Desde el panel web o la API puedes ejecutar las siguientes acciones sobre tus VMs: .. list-table:: :header-rows: 1 :widths: 20 40 40 * - Acción - Descripción - Efecto * - **Start** - Iniciar la VM - Arranca el sistema operativo * - **Shutdown** - Apagado limpio - Envía señal ACPI de apagado * - **Stop** - Detención forzada - Equivalente a desconectar la corriente * - **Restart** - Reinicio limpio - Apaga y vuelve a encender la VM * - **Reset** - Reset forzado - Reinicio inmediato sin apagar limpiamente .. code-block:: python # Ejemplo — iniciar y verificar estado de una VM import requests API_BASE = 'https://tu-dominio.com/api/vms' HEADERS = {'Authorization': 'Bearer '} # Iniciar VM con ID 100 requests.post(f'{API_BASE}/100/start/', headers=HEADERS) # Verificar estado status = requests.get(f'{API_BASE}/100/status/', headers=HEADERS) print(status.json()) # {'vmid': 100, 'status': 'running', 'cpu': 0.12, 'mem': 2048} Acceso a Consola ~~~~~~~~~~~~~~~~ NoxPanel ofrece dos modos de acceso a la consola de las VMs: **Consola VNC (gráfica):** - Acceso completo al escritorio o terminal gráfico - Puerto VNC asignado automáticamente - Resolución y layout de teclado configurables - Disponible desde el botón **"Consola VNC"** en la lista de VMs **Terminal Web (SSH):** - Conexión SSH directa desde el navegador - Soporte para múltiples sesiones simultáneas - Historial de comandos .. code-block:: html .. tip:: Si la consola VNC no carga, verifica que la VM esté en estado **Running** y que tu navegador permita conexiones WebSocket. Snapshots (Instantáneas) ~~~~~~~~~~~~~~~~~~~~~~~~ Los snapshots permiten guardar el estado completo de una VM en un momento determinado, incluyendo disco y memoria RAM. **Casos de uso:** * Antes de una actualización de sistema operativo * Antes de instalar software nuevo * Como punto de restauración rápido .. code-block:: python # Crear un snapshot response = requests.post( f'{API_BASE}/100/snapshot/', headers=HEADERS, json={ 'name': 'pre-update-2026-02', 'description': 'Antes de actualizar a Ubuntu 24.04', 'include_ram': True } ) # Listar snapshots snapshots = requests.get(f'{API_BASE}/100/snapshots/', headers=HEADERS) for snap in snapshots.json(): print(f"{snap['name']} - {snap['created_at']}") # Restaurar un snapshot requests.post( f'{API_BASE}/100/snapshot/restore/', headers=HEADERS, json={'name': 'pre-update-2026-02'} ) .. warning:: Restaurar un snapshot descartará todos los cambios realizados después de la instantánea. Asegúrate de hacer un snapshot adicional si deseas conservar el estado actual. Plantillas (Templates) ~~~~~~~~~~~~~~~~~~~~~~ Las plantillas son imágenes base preconfiguradas que aceleran la creación de nuevas VMs. Algunas plantillas comunes: * **Ubuntu 22.04 Cloud** — Servidor Linux con Cloud-Init * **Debian 12** — Servidor Debian estable * **CentOS Stream 9** — Servidor empresarial * **Windows Server 2022** — Servidor Windows (requiere licencia) Al crear una VM puedes seleccionar una plantilla. El administrador puede añadir o personalizar plantillas desde el panel de administración. Monitoreo y Métricas ~~~~~~~~~~~~~~~~~~~~ El dashboard muestra métricas en tiempo real para cada VM: * **CPU** — Porcentaje de uso de procesador * **Memoria** — Uso de RAM en MB/GB * **Disco I/O** — Lectura/escritura en MB/s * **Red** — Tráfico de entrada/salida * **Uptime** — Tiempo de funcionamiento continuo .. note:: Las métricas se actualizan en tiempo real a través de WebSocket. Si los datos no se actualizan, recarga la página. Redes e IPs ~~~~~~~~~~~ Cada VM puede tener una o más interfaces de red con las siguientes opciones: * **DHCP** — Configuración automática de IP * **IP estática** — Asignación manual de dirección, gateway y DNS * **VLAN** — Segmentación de red por pool o tenant .. code-block:: yaml # Ejemplo de configuración Cloud-Init para red network: version: 2 ethernets: eth0: addresses: - 192.168.1.50/24 gateway4: 192.168.1.1 nameservers: addresses: - 8.8.8.8 - 1.1.1.1 Notas ----- * El dashboard de VPS es accesible en ``/dashboard/``. * Las acciones sobre VMs (crear, iniciar, detener) son asíncronas y pueden tardar entre segundos y minutos. * Los snapshots consumen almacenamiento adicional. Elimina los que ya no necesites. * El acceso a la consola VNC requiere que la VM esté ejecutándose. * Los roles determinan las acciones permitidas: **Owner** y **Admin** tienen control total, **User** puede crear y controlar VMs, **Read-only** solo puede visualizar. * Para solicitar más recursos o acceso a pools adicionales, contacta con el administrador o abre un ticket de soporte. .. seealso:: - :doc:`quickstart` — Guía de inicio rápido - :doc:`hosting` — Gestión de hosting compartido - :doc:`billing` — Facturación y suscripciones - :doc:`tickets` — Sistema de soporte