Proxmox Virtual Environment

Page 1

Universidad Tecnológica de León Ingeniería en Redes Inteligentes y Ciberseguridad

Asignatura: Cómputo en la Nube

Profesor: José Luis Alejandro Hernández Ramírez

Titulo: Proxmox Virtual Environment

Presenta: Porras Noriega Fátima Abigail

Matrícula: 18002125

Grupo: IRIC801

León, Guanajuato. A 05 de marzo de 2021


INTRODUCCIÓN Como se ha mencionado en reportes anteriores, la llegada de la virtualización ha traído múltiples ventajas en los entornos operativos de servidores y estaciones de trabajo, empezando por la reducción del espacio físico ocupado, el aprovechamiento más eficiente de los recursos de hardware y la mayor facilidad de gestionar copias de seguridad y puntos de restauración. La virtualización consiste en instalar varios sistemas operativos en un único recurso informático, como un servidor o una computadora, donde estos pueden trabajar de manera simultánea e independiente, es decir, operan al mismo tiempo y cada uno tiene características de hardware distintas, como cantidad de procesadores, capacidad de disco duro, memoria RAM y adaptadores de red. Por esta razón, la virtualización de máquinas trae los beneficios mencionados anteriormente, pues no es lo mismo invertir, mantener y administrar un servidor de gran capacidad, a diez, veinte, cien o más servidores o equipos de cómputo individuales. Para hacer posible la virtualización, se requiere tener instalado un hipervisor, el cual es un software diseñado para crear y administrar máquinas virtuales, y de estos existe una gran variedad de opciones a elegir, pero en la práctica correspondiente a esta semana se presta atención especialmente a uno, Proxmox. Proxmox es un hipervisor gratuito basado en Debian, del cual se describirá una guía general a manera de informe sobre cómo hacer algunas operaciones, virtualizar entornos, cómo acceder a ellos y cómo administrarlos. Primero, se hará la descarga de la imagen ISO, la cual está disponible desde la página oficial para que después se monte en una unidad de almacenamiento y se utilice como unidad de arranque en un servidor o equipo de cómputo, o en este caso, en una máquina virtual. Posteriormente se describirá la instalación y configuración general de Proxmox para tenerlo listo para funcionar. Después mencionará un poco sobre las distintas formas incorporar imágenes ISO y plantillas de contenedor al hipervisor para crear las primeras instancias virtualizadas y conocer respecto a la asignación de recursos, administración de la red, tipos de acceso, entre otras. Una vez teniendo algunas operaciones y cambios realizados en las máquinas virtuales, se procederá a la creación y administración de instantáneas o Snapshots y copias de seguridad como un método de respaldo y recuperación de la información ante cambios esperados o no. Con el aprendizaje aprendido de esta práctica, se espera que la documentación contenga la información necesaria para realizar operaciones básicas en Proxmox que puedan ser aplicadas en un entorno profesional real, proveyendo las competencias y habilidades requeridas.


ENTORNO DE VIRTUALIZACIÓN CON PROXMOX VE Preparación del entorno Aunque una las condiciones ideales para instalar un hipervisor como Proxmox es hacerlo directamente en el hardware, por razones de práctica y aprendizaje, el entorno en el que se llevó a cabo la actividad fue creando un equipo virtual en VirtualBox. Realmente no hay una selección específica para realizar esta práctica, así que, si se desea replicar en otro hipervisor, se puede hacer con toda libertad (teniendo en cuenta algunas de las características que se deben modificar de la máquina virtual). Al crear la máquina virtual, se le asignaron atributos como que es un tipo Debian de 64-bit con 1 GB de RAM, teniendo en cuenta que la documentación oficial del software recomienda 2 GB para el sistema operativo y todos los servicios de virtualización más la memoria designada para los sistemas invitados.

En el almacenamiento, se creó un nuevo disco duro virtual con almacenamiento reservado dinámicamente y una capacidad de 50 GB, que, de igual manera, este parámetro depende de los requerimientos del administrador.


Ahora creada la máquina virtual, el siguiente paso es acceder a sus configuraciones para hacer cambios en la red, almacenamiento y sistema. Para el primero, se definió el tipo de adaptador como puente conectado a la tarjeta de red de mayor preferencia, ya sea compartida o dedicada. Esto con la intención de obtener una dirección IP del segmento físico y poder interactuar con el servidor Proxmox con los demás dispositivos conectados.

En la unidad de almacenamiento del controlador IDE (unidad óptica) se montó la imagen del sistema operativo, la cual se puede obtener de manera gratuita en la página oficial de Proxmox Virtual Environment: https://www.proxmox.com/en/downloads/category/iso-images-pve.

Las modificaciones en la sección de Sistema son un poco más delicadas, por lo que se requirió un poco más de atención y conciencia para comprender cada una de las acciones que se estaban realizando. Se deseaba modificar algunas características del procesador, como la cantidad de núcleos a dos(funciona bien con uno en esta práctica) y las capacidades de virtualización anidada. La virtualización anidada, permite a sistemas invitados tomar recursos del sistema anfitrión para crear nuevos recursos virtuales, es decir crear máquinas virtuales dentro de otras máquinas virtuales, y por esta razón no hay


necesidad de agregar más núcleos a esta máquina. En VirtualBox, esta característica no se encuentra disponible para habilitar en una primera instancia, pero es posible hacerlo desde un par de programas de este hipervisor, para disponer de esta característica cuando se desee.

La ejecución de estos programas no está disponible desde el entorno gráfico, por lo que fue necesario hacerlo desde la consola de comandos en la carpeta de instalación de VirtualBox (que por defecto se encuentra en la ruta: C:\Program Files\Oracle\VirtualBox). El primer comando que se ejecutó fue VBoxManage.exe list vms, el cual lista las máquinas disponibles en VirtualBox donde se identificó el nombre de la máquina virtual a agregar la característica de virtualización anidada, en este caso, “proxmox2”.

Después, se ejecutó en la misma consola el comando VBoxManage.exe modifyvm acompañado del nombre o ID de la máquina virtual con la opción --nested-hw-virt on.

Una vez aplicada la configuración, se procedió a cerrar la consola de comandos y se reinició VirtualBox. Al abrir nuevamente la configuración de la máquina virtual, esta ya apareció con la característica habilitada y disponible para modificar.


Con esta configuración aplicada, se procedió a continuar con la instalación del sistema operativo en el entorno virtual.

Instalación de Proxmox Virtual Environment La instalación del sistema operativo para la máquina virtual o servidor resulta bastante sencilla si ya se tiene experiencia instalando otros entornos basados en distribuciones de Linux (como es el caso de Nextcloud), pues solo se trató de completar un corto asistente de configuración para que el entorno virtualizador quedara listo para utilizarse. El primer paso del asistente fue asignar la contraseña del usuario root del servidor junto con su confirmación (esta debe estar formada por 8 caracteres o más con una combinación de letras, números y símbolos) y un correo electrónico válido, ya que esta versión de Proxmox envía notificaciones de alerta como fallos en la realización de copias de seguridad o algunos otros eventos.


Los siguientes pasos del asistente consistieron en seleccionar el medio de almacenamiento con su respectivo formato, el país, zona horaria e idioma del teclado. Después se hizo la configuración de la conexión a la red, donde se seleccionó la interfaz, se especificó el FQDN, dirección de red en formato CIDR, dirección de puerta de enlace y dirección de servidor DNS.

Al terminar, el asistente mostró un resumen de las configuraciones establecidas.

Se procedió a instalar el sistema y este terminó a cabo de unos pocos minutos, se reinició el equipo de manera automática y el servidor estaba listo para ser utilizado.

Primeros pasos en Proxmox VE Si bien, una vez que se inició por primera vez nuestro equipo con Proxmox, este solo es una consola de Debian y en realidad, todas las operaciones se realizan ahí, aunque de manera complicada y poco robusta. La pantalla principal siempre muestra un mensaje con la dirección IP del servidor y que puede ser accedida desde un navegador web para iniciar un entorno gráfico de administración.


Al cargarlo desde cualquier navegador, se mostró una advertencia de que el sitio estaba auto firmado para el certificado TLS (algo completamente normal y que no es riesgoso en estos entornos) por lo que únicamente se permitió el acceso, después se pidió una contraseña de inicio de sesión para poder acceder a la administración del sistema. Cuando ya se inició sesión y se cargó la interfaz de administración, el entorno apreciado fue bastante parecido al que ofrece VMware ESXi, aunque con características un poco más limitadas. En la pantalla se pudieron apreciar botones de fácil accedo para la documentación, creación de máquinas y contenedores en la esquina superior derecha, mientras que, en el lateral izquierdo, se encontraba la estructura del servidor (sus unidades de almacenamiento) y al hacer una selección, se podía ver el contenido seccionado por resumen, copias de seguridad, imágenes ISO, plantillas para contenedor y permisos.

Lo primero que se realizó, fue subir una imagen ISO al servidor para poder crear la primera máquina virtual, esto se logró seleccionando la sección de imágenes ISO y dando clic al botón Upload.

Se mostró una pequeña ventana por encima de la interfaz para seleccionar la imagen ISO a subir desde el equipo con el que se está accediendo al servidor.


Se aseguró que el tipo de contenido fuera imagen ISO y se seleccionó un archivo compatible (En este caso una imagen de Ubuntu 20.04).

Una vez seleccionada la imagen ISO, se comienza con la subida de este. Este proceso suele tardar unos minutos, aunque si bien, depende de la velocidad del enlace de red y el tamaño del archivo.

Terminada la tarea, el archivo apareció en la lista de ISOs en la unidad de almacenamiento respectiva.

Y, además, apareció un mensaje de finalización en el recuadro del estado de las tareas (parte inferior de la pantalla).


De manera similar se agregaron las plantillas para contenedor, las cuales son parecidas a lo que son las imágenes ISO, a diferencia de que contienen empaquetado todas las dependencias para que funcionen como un entorno especializado (servidor web, servidor de almacenamiento, etc.). Se dirigió a la sección de plantillas para contenedor (CT templates) y se repitió exactamente el mismo proceso para subir una imagen ISO.

Las plantillas para contenedor de esta práctica se obtuvieron igualmente de la página oficial de Proxmox (http://download.proxmox.com/images/system/).

Existe otra manera más eficiente para agregar estos archivos al servidor si no se desea descargarlos de internet y volverlos a subir. Simplemente hay que acceder al directorio del servidor donde se agregan todos estos archivos (que de manera predeterminada es /var/lib/vz/template/cache para contenedores y /var/lib/vz/template/iso para imágenes iso) y descargarlos con el comando la herramienta wget.

Cual sea de los métodos seleccionados, las plantillas del servidor se encuentran en su sección correspondiente.

Proxmox también permite descargar directamente desde la interfaz algunas plantillas que ofrece para crear contenedores y puede ser accedida desde el botón Templates de la misma sección. La lista de planillas contiene una amplia variedad en las distribuciones de Linux con las versiones más recientes.


A manera de prueba, se seleccionó una de las plantillas ofrecidas e inmediatamente el sistema mostró una nueva ventana con el progreso de la descarga y los eventos del sistema.

Una vez terminada la descarga de la plantilla, esta apareció en la lista de plantillas disponibles en el servidor.

Creación de una máquina virtual Al ya contar con varios ISO y plantillas para contenedores, fue posible hacer las primeras máquinas virtuales y contenedores. Como se mencionó anteriormente, los botones para crear VMs y CTs se encuentran en la esquina superior derecha de la pantalla. Primero se decidió crear una nueva máquina virtual.


Se inició un asistente para guiar la creación de la máquina virtual, el primer paso fue hacer las configuraciones generales que corresponden a el nodo (en caso de que se cuente con varios servidores), el ID de la máquina (para identificarla de las demás en un futuro), nombre, pool de recursos, inicio al arranque del servidor, orden de arranque, entre otras.

Como paso siguiente se seleccionó la imagen del sistema operativo, especificando el tipo y versión.

Se establecieron parámetros respecto al sistema en general, como la tarjeta gráfica, controlador SCSI, agente Qemu, BIOS y tipo de máquina.

La configuración correspondiente al almacenamiento fue definir el medio, tamaño del disco y otros parámetros y características avanzadas como la emulación de SSD, límites de velocidad en la lectura y escritura, creación de respaldos, memoria caché, etc.


Para la CPU se especificó el número se sockets disponibles, núcleos y el tipo de procesador. Respecto al resto de las configuraciones, estas son más complejas y en una virtualización estándar como la mayoría, es altamente recomendable dejar los valores por defecto.

Se asignó la cantidad de memoria RAM y su mínimo. Esta última variable es importante de definir cuando la máquina virtual se encuentra compartiendo recursos con otras.

Finalmente se seleccionó un adaptador de red y el modelo, pero también se puede asignar una dirección MAC, VLAN, activar el Firewall y establecer el ancho de banda máximo disponible.


Una vez terminada toda la configuración de toda la máquina virtual, el asistente mostró una ventana con el resumen de lo que se realizó.

Se dio clic al botón de finalizar y al cabo de unos segundos el panel de tareas y eventos del servidor confirmó la creación de la máquina virtual.

Además, la máquina virtual ya se encontraba disponible para ser accedida en el panel izquierdo de la interfaz, donde se encuentra información respecto al clúster y las unidades de almacenamiento.

Si esta es seleccionada, se puede consultar un resumen sobre el estado actual de la máquina (Si está iniciada, características y uso del hardware) y hacer distintas operaciones como la actualización del hardware, ejecución del monitor, puntos de restauración, respaldos, firewall y permisos.


Para iniciar la máquina virtual, únicamente se presiona el botón Start y el acceso a la interacción con esta se puede realizar presionando el botón Console para abrir una interfaz de línea de comandos o en sus opciones que permiten abrir un entorno gráfico desde el navegador. Hacerlo de está manera no es tan eficiente, por lo que es altamente recomendado utilizar un software externo para hacer sesiones SSH o abrir escritorios remotos.

Creación de un contenedor Hacer un nuevo contenedor es una tarea más sencilla que la crear una máquina virtual, aunque conlleva casi la misma cantidad de pasos. De la misma manera que en el apartado anterior, para comenzar la creación, se dio clic al botón Create CT ubicado en la esquina superior derecha de la interfaz para iniciar el asistente.

El proceso comenzó por el establecimiento de las configuraciones generales, como el nodo, pool de recursos, ID de contenedor, nombre de host y contraseña para el acceso por SSH.

Después se seleccionó una de las plantillas recién agregadas al servidor en los pasos anteriores de la práctica.


Se seleccionaron las ubicaciones del almacenamiento de la máquina virtual y se asignó su tamaño de disco. También se seleccionó la cantidad de núcleos de procesador y las unidades de CPU para cada uno de estos. Todos estos parámetros se conservaron con los valores que sugirió la aplicación.

En el siguiente paso del asistente, se asignó la cantidad de memoria para RAM y Swap, los cuales también fueron establecidos como la aplicación lo sugirió.

En el apartado de red, se definió el nombre del adaptador para el contenedor, la interfaz física con la que se conecta, VLAN, límite de ancho de banda y se establecieron los parámetros de red, como dirección IPv4 e IPv6, direcciones de Gateway y máscaras de red.

También se hizo una configuración rápida para especificar el dominio al que pertenece al servidor y la dirección de los servidores DNS.


Al final, el asistente mostró una pantalla de resumen con todas las características del contenedor para ser confirmadas por el usuario.

Al confirmar, comenzó el proceso de creación del contenedor, el cual tomó un par de minutos, aunque bien, el tiempo depende de las características de este y la potencia del servidor de virtualización.

Después que finalizó la creación del contenedor, se mostró una notificación en el panel de estado y eventos del servidor y pudo ser accedido desde el panel izquierdo, donde se encontraba junto a la máquina virtual.


La administración del contenedor se lleva a cabo de la misma manera que en la máquina virtual, pues al seleccionar este, se pudo acceder a las distintas configuraciones, propiedades y estadísticas del contenedor, seccionadas en las categorías de resumen, consola, recursos, red, DNS, opciones, respaldo, entre otras. El contenedor se puede iniciar presionando el botón Start ubicado en la parte superior de la pantalla de administración, así mismo, también se puede acceder a su consola.

Snapshots Los snapshots se pueden interpretar como puntos de restauración tanto para contenedores como para máquinas virtuales. Estos copian el contenido y estado de un momento específico de un entorno virtualizado como discos duros, memorias, procesador y tarjetas de red, por lo que la toma de instantáneas o snapshots es útil para asegurar la estabilidad en el entorno ante cambios que puedan generar errores en la ejecución y/o se desee revertir el estado de un momento determinado de manera inmediata. Para tomar una instantánea de una máquina virtual o contenedor, se seleccionó el elemento al que se deseaba aplicar esta acción (en este caso, un contenedor), después, en su apartado de administración, se dirigió a la sección Snapshots. Al abrirla, se debió haber mostrado una tabla con todas las instantáneas tomadas hasta el momento, pero como hasta este punto no había ninguna creada, solo se podría apreciar un elemento en la lista, el cual hace referencia al estado actual de la máquina.

Se dio clic al botón Take Snapshot para iniciar la toma de la instantánea y se especificó el nombre con el que sería identificada y su descripción.


Una vez completado este paso, puede comenzar el proceso de creación de la instantánea, el cual toma unos pocos segundos. Cuando terminó, se pudo ver en la lista de snapshots que este apareció y pudo ser identificado con su nombre, fecha y hora de creación y la descripción especificada. Además, el estado actual del contenedor ya se encontraba por debajo de este. Esta señalización es útil cuando se tienen varias instantáneas tomadas y se necesita saber sobre cual se está trabajando.

Como prueba de funcionamiento, se accedió a la consola del contenedor y se eliminaron algunos directorios y se modificaron algunas propiedades del sistema. Ahora, para volver al estado donde se realizó la instantánea y revertir estos cambios, se dirigió nuevamente al apartado Snapshots y se seleccionó. Posteriormente, se dio clic al botón Rollback para comenzar el proceso de restauración.

Durante este proceso, apareció un pequeño recuadro emergente indicando el progreso de esta tarea, la cual tomó un poco más de tres minutos pero se ejecutó correctamente y se obtuvieron los resultados deseados.

Rutas de almacenamiento En Proxmox hay distintos tipos de recursos que se tienen que almacenar en las unidades del servidor, como tal es el caso de las imágenes ISO, plantillas para contenedor y máquinas virtuales, copias de seguridad, instantáneas, entre otras. Para tener todos los elementos almacenados con un orden y bien seccionado, se pueden crear distintas rutas de almacenamiento que pueden ser desde una ruta de algún disco duro, hasta discos duros o RAID enteros. En esta práctica se creó una nueva ruta en el disco duro actual del servidor para almacenar todas las copias de seguridad. Dirigiéndose primero a la configuración global del servidor y después a la sección Storage, donde se


encontró un listado con dos rutas de almacenamiento, una para almacenar las copias de seguridad, imágenes ISO y las plantillas para contenedor, y la otra, para almacenar las máquinas virtuales y contenedores creados.

Para crear una nueva ruta de almacenamiento se dirigió a la opción Add en la parte superior de la lista y se seleccionó la opción Directory.

Se mostró un pequeño recuadro emergente por encima de la interfaz donde se especificó el nombre de la ruta, el directorio donde se encontraría, el contenido, el cual fue para copias de seguridad (pero también puede ser para imágenes ISO, discos duros virtuales, contenedores, plantillas, etc.) y los nodos (equipos) para el que se encontraría disponible.

Terminando la especificación de estas características, se procedió a iniciar la creación del directorio de almacenamiento.

Copias de seguridad Las copias de seguridad permiten copiar el contenido de un disco duro virtual como una medida de acción correctiva ante la pérdida de datos y el restablecimiento de la información a un estado anterior, a diferencia de la toma de snapshots, las copias de seguridad únicamente se enfocan en el contenido de los discos duros virtuales, por lo que el estado de la actividad de la máquina virtual o contenedor en sus memorias y procesador, será completamente descartado. De manera similar a la toma de instantáneas, se tiene que seleccionar el recurso (máquina virtual o contenedor) y dirigirse a la sección Backup, donde se puede encontrar una lista de respaldos realizados respecto a este, aunque no había ninguno realizado hasta ese momento.


Para la creación de una nueva copia de seguridad, se seleccionó el botón Backup now y emergió una pequeña ventana para especificar las características del respaldo, como la ruta de almacenamiento, modo y tipo de compresión.

Al empezar a crearla y al pasar de más de 10 minutos (depende de la cantidad de información a respaldar), la copia de seguridad ya se encontraba disponible en la lista con datos que la describían, como su nombre, fecha, formato y tamaño.

Si se desea restaurar el contenido de la copia, únicamente se tiene que seleccionar y después presionar al botón Restore. Esta manera de hacer respaldos es bastante sencilla y útil, pero no la más eficiente si se tiene que realizar en múltiples máquinas virtuales, para esto es recomendable repetir la acción a nivel de nodo (servidor) o Datacenter (clúster) en lugar de hacerlo a nivel de máquina virtual o contenedor. A este nivel, se puede programar la hora, fecha y frecuencia para la realización de copias de seguridad, especificar ubicación, tipo de compresión, notificaciones por email y los nodos de los recursos a los que se les desea hacer copia de seguridad.


Finalmente, conociendo todas estas operaciones y características de Proxmox como entorno de virtualización, es posible irlo implementando en un entorno real e ir aprendiendo más de este campo de las tecnologías.


CONCLUSIÓN Para la virtualización, existe una gran competencia con las distintas opciones de hipervisores que se encuentran en la actualidad, y realmente, hay una gran variedad respecto a precios, características, funcionalidades y capacidades. En esta práctica se conoció a rasgos generales Proxmox como un entorno de virtualización de tipo uno. Empezando, se realizó la instalación del sistema operativo, el cual se pudo obtener desde la página oficial de manera gratuita y se montó en una unidad de almacenamiento para convertirla en una unidad de arranque. Este proceso resultó bastante sencillo ya que, si se tiene experiencia instalando otros entornos basados en distribuciones de Linux, no surgirán dudas durante el proceso, además de que este va siendo guiado por un asistente de instalación grafico y los conceptos utilizados son muy comunes en la administración de servidores. Como toda tarea que conlleva la instalación de un sistema operativo, se esperó un momento para que se completara, se reiniciara el servidor y este estuviera listo para ser utilizado, accedido y administrado mediante la interfaz gráfica que ofrece a través de un navegador web. Una vez ingresando a esta fue posible realizar las primeras tareas; agregar imágenes ISO y plantillas para contenedores ya sea subiéndolas desde un cliente o descargándolas directamente en el servidor, para después empezar con la creación de entornos virtualizados como máquinas virtuales y contenedores. Al igual que la actividad anterior, la creación, administración y ejecución de los entornos virtualizados resultó bastante sencilla ya que la forma de hacerlo es casi idéntica a como se haría en cualquier otro hipervisor, incluso si es de tipo dos, pues se hace una definición de las características del hardware, el tipo de conexión a la red y sistema operativo o plantilla, también se puede hacer un monitoreo sobre la utilización de los recursos y su comportamiento cuando los comparte con otros entornos, además de que hay distintas opciones para interactuar con este, como los es por medio de una consola de comandos a través de una sesión por SSH o por una conexión de escritorio remoto. Finalmente, una vez que ya se hizo la creación de máquinas virtuales y contenedores y se estuvo interactuando con estos, se procedió a realizar copias de seguridad y a tomar instantáneas para ver cómo es posible restablecer su estado a un momento determinado del tiempo, esto como un método de corrección de errores y restablecimiento de la información cuando se realizan cambios no definitivos. Con todo lo aprendido en esta práctica y teniendo este reporte como documento de referencia para futuras operaciones con Proxmox, se espera incrementar los conocimientos y competencias personales y profesionales para desenvolverse en un entorno productivo especializado en la virtualización y los servidores.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.