API REST de Proxmox¶
El comando pvesh actúa como un shell para la API REST de Proxmox VE, lo que permite hacer llamadas a la API directamente desde la línea de comandos. Con este comando, se pueden administrar máquinas virtuales, almacenamiento, red y otros elementos de la infraestructura virtual de Proxmox. Esta herramienta permite realizar casi cualquier acción que se pueda hacer a través de la interfaz web de Proxmox directamente desde la línea de comandos.
pvesh <comando> [opciones]
Listado de recursos o endpoints de la API¶
Este comando es similar al comando ls en Linux, pero lista las rutas de la API o los recursos disponibles en el entorno de Proxmox VE.
pvesh ls /ruta
El siguiente ejemplo lista todos los recursos en el clúster de Proxmox, incluyendo VMs, contenedores y almacenamiento.
pvesh ls /cluster/resources
Recuperación de información¶
El comando get recupera información de un endpoint de API específico. Este comando se usa para consultar un recurso para obtener detalles.
pvesh get /ruta
Donde ruta es la ruta de la API desde la que se quiere recuperar información.
Por ejemplo, para recuperar la información de estado del nodo pve-nodo1, como la carga de la CPU, el uso de la memoria y el tiempo de actividad, se puede usar el comando:
pvesh get /nodes/pve-nodo1/status
Modificación de la configuración¶
El comando set se usa para modificar o actualizar la configuración de un recurso. Esto es equivalente a hacer una solicitud POST o PUT en la API REST.
pvesh set /ruta --clave valor [--clave valor ...]
--clave valor son los pares clave-valor de la configuración que quieres cambiar.
Este comando cambia el nombre de la máquina virtual 100 en el nodo pve-nodo1 a nuevo-nombre-mv.
pvesh set /nodes/pve-nodo1/qemu/100/config --name nuevo-nombre-mv
Creación de un recurso¶
El comando create te permite crear un nuevo recurso, como una nueva máquina virtual o un volumen de almacenamiento.
pvesh create /ruta --clave valor [--clave valor ...]
Por ejemplo, se puede crear una nueva máquina virtual con parámetros específicos con el comando:
pvesh create /nodes/pve-nodo1/qemu --vmid 106 --name nuevo-nombre-mv --memory 2048 --cores 2
Este comando crea una nueva máquina virtual con ID 106 en el nodo pve-nodo1, con el nombre nuevo-nombre-mv, 2 GB de RAM y 2 núcleos de CPU.
Inicio de VMs¶
Hay un comando para iniciar una máquina virtual o un contenedor con pvesh:
pvesh start /ruta
Este ejemplo inicia la máquina virtual con ID 101 en el nodo pve-nodo1:
pvesh start /nodes/pve-nodo1/qemu/101
Apagado de VMs¶
A diferencia del comando stop, el comando shutdown apaga una máquina virtual o un contenedor de forma correcta:
pvesh shutdown /ruta
Este ejemplo apaga una máquina virtual con el ID 101 en un host de Proxmox, cuyo nombre es pve-nodo1:
pvesh shutdown /nodes/pve-nodo1/qemu/101
Inicio de todas las VMs¶
Para iniciar o detener todas las VMs en un nodo o en todo el clúster, se puede usar el comando correspondiente:
pvesh startall /nodes/<nombre_del_nodo>
pvesh stopall /nodes/<nombre_del_nodo>