La magia de la virtualización: un curso de introducción a Proxmox VE

La magia de la virtualización: un curso de introducción a Proxmox VE
Hoy hablaremos sobre cómo implementar rápida y fácilmente varios servidores virtuales con diferentes sistemas operativos en un servidor físico. Esto permitirá a cualquier administrador de sistemas gestionar de forma centralizada toda la infraestructura de TI de la empresa y ahorrar una gran cantidad de recursos. El uso de la virtualización ayuda a abstraerse al máximo del hardware físico del servidor, proteger los servicios críticos y restaurar fácilmente su funcionamiento incluso en caso de fallos muy graves.

Sin duda, la mayoría de los administradores de sistemas están familiarizados con las técnicas de trabajo con un entorno virtual y para ellos este artículo no será ningún descubrimiento. Pese a ello, hay empresas que no aprovechan la flexibilidad y rapidez de las soluciones virtuales por falta de información veraz sobre las mismas. Esperamos que nuestro artículo le ayude a comprender con el ejemplo que es mucho más fácil empezar a utilizar la virtualización una vez que experimentar los inconvenientes y deficiencias de la infraestructura física.

Afortunadamente, es bastante fácil probar cómo funciona la virtualización. Mostraremos cómo crear un servidor en un entorno virtual, por ejemplo, para transferir un sistema CRM utilizado en una empresa. Casi cualquier servidor físico se puede convertir en virtual, pero primero es necesario dominar las técnicas operativas básicas. Esto será discutido abajo.

Como funciona

Cuando se trata de virtualización, a muchos especialistas novatos les resulta difícil comprender la terminología, así que expliquemos algunos conceptos básicos:

  • Hipervisor – software especial que le permite crear y administrar máquinas virtuales;
  • Maquina virtual (en adelante VM) es un sistema que es un servidor lógico dentro de uno físico con su propio conjunto de características, unidades y sistema operativo;
  • Host de virtualización – un servidor físico con un hipervisor ejecutándose en él.

Para que un servidor funcione como un host de virtualización completo, su procesador debe admitir una de dos tecnologías: Intel® VT o AMD-V™. Ambas tecnologías realizan la tarea más importante de proporcionar recursos de hardware de servidor a máquinas virtuales.

La característica clave es que cualquier acción de las máquinas virtuales se realiza directamente a nivel de hardware. Al mismo tiempo, están aislados entre sí, lo que hace que sea bastante fácil controlarlos por separado. El propio hipervisor desempeña el papel de autoridad supervisora, distribuyendo recursos, roles y prioridades entre ellos. El hipervisor también emula aquella parte del hardware necesaria para el correcto funcionamiento del sistema operativo.

La introducción de la virtualización hace posible tener varias copias en ejecución de un servidor. Una falla o error crítico durante el proceso de realizar cambios en dicha copia no afectará de ninguna manera el funcionamiento del servicio o aplicación actual. Esto también elimina dos problemas principales: el escalamiento y la capacidad de mantener un "zoológico" de diferentes sistemas operativos en el mismo hardware. Esta es una oportunidad ideal para combinar una variedad de servicios sin la necesidad de adquirir equipos separados para cada uno de ellos.

La virtualización mejora la tolerancia a fallos de los servicios y las aplicaciones implementadas. Incluso si el servidor físico falla y es necesario reemplazarlo por otro, toda la infraestructura virtual permanecerá en pleno funcionamiento, siempre que los medios de disco estén intactos. En este caso, el servidor físico puede ser de un fabricante completamente diferente. Esto es especialmente cierto para las empresas que utilizan servidores que han sido descontinuados y necesitarán migrar a otros modelos.

Ahora enumeramos los hipervisores más populares que existen en la actualidad:

  • VMware ESXi
  • Microsoft Hyper-V
  • KVM de la Alianza de Virtualización Abierta
  • Oracle VM VirtualBox

Todos ellos son bastante universales, sin embargo, cada uno de ellos tiene ciertas características que siempre se deben tener en cuenta en la etapa de selección: el costo de implementación/mantenimiento y las características técnicas. El costo de las licencias comerciales para VMware y Hyper-V es muy alto y, en caso de fallas, es muy difícil resolver el problema con estos sistemas por su cuenta.

KVM, por otro lado, es completamente gratuito y bastante fácil de usar, especialmente como parte de una solución basada en Debian Linux llamada Proxmox Virtual Environment. Podemos recomendar este sistema para un conocimiento inicial del mundo de la infraestructura virtual.

Cómo implementar rápidamente el hipervisor Proxmox VE

La instalación en la mayoría de los casos no plantea ninguna pregunta. Descargue la versión actual de la imagen. desde el sitio oficial y escríbalo en cualquier medio externo usando la utilidad Win32DiskImager (en Linux se usa el comando dd), luego de lo cual iniciamos el servidor directamente desde este medio. Nuestros clientes que nos alquilan servidores dedicados pueden aprovechar dos formas aún más sencillas: simplemente montando la imagen deseada directamente desde la consola KVM o utilizando nuestro servidor PXE.

El instalador tiene una interfaz gráfica y sólo hará algunas preguntas.

  1. Seleccione el disco en el que se realizará la instalación. en el capitulo Opciones También puede especificar opciones de marcado adicionales.

    La magia de la virtualización: un curso de introducción a Proxmox VE

  2. Especifique la configuración regional.

    La magia de la virtualización: un curso de introducción a Proxmox VE

  3. Especifique la contraseña que se utilizará para autorizar al superusuario raíz y la dirección de correo electrónico del administrador.

    La magia de la virtualización: un curso de introducción a Proxmox VE

  4. Especifique la configuración de red. FQDN significa nombre de dominio completo, p. nodo01.tuempresa.com.

    La magia de la virtualización: un curso de introducción a Proxmox VE

  5. Una vez completada la instalación, el servidor se puede reiniciar usando el botón Reiniciar.

    La magia de la virtualización: un curso de introducción a Proxmox VE

    La interfaz de gestión web estará disponible en

    https://IP_адрес_сервера:8006

Qué hacer después de la instalación

Hay algunas cosas importantes que debes hacer después de instalar Proxmox. Hablemos de cada uno de ellos con más detalle.

Actualizar el sistema a la última versión.

Para hacer esto, vayamos a la consola de nuestro servidor y deshabilitemos el repositorio pago (disponible solo para aquellos que han comprado soporte pago). Si no hace esto, apt informará un error al actualizar las fuentes del paquete.

  1. Abra la consola y edite el archivo de configuración de apt:
    nano /etc/apt/sources.list.d/pve-enterprise.list
  2. Sólo habrá una línea en este archivo. Le ponemos un símbolo delante. #para deshabilitar la recepción de actualizaciones desde un repositorio pago:
    #deb https://enterprise.proxmox.com/debian/pve stretch pve-enterprise
  3. Atajo de teclado Ctrl + X sal del editor respondiendo Y cuando el sistema le pregunta acerca de guardar el archivo.
  4. Ejecutamos el comando para actualizar las fuentes del paquete y actualizar el sistema:
    apt update && apt -y upgrade

cuidar la seguridad

Podemos recomendar instalar la utilidad más popular. Fail2Ban, que protege contra ataques de contraseña (fuerza bruta). El principio de su funcionamiento es que si un atacante excede un cierto número de intentos de inicio de sesión dentro de un tiempo específico con un nombre de usuario/contraseña incorrecto, entonces su dirección IP será bloqueada. El período de bloqueo y el número de intentos se pueden especificar en el archivo de configuración.

Según la experiencia práctica, durante una semana de ejecutar un servidor con el puerto ssh 22 abierto y una dirección IPv4 estática externa, hubo más de 5000 intentos de adivinar la contraseña. Y la utilidad bloqueó con éxito alrededor de 1500 direcciones.

Para completar la instalación, aquí hay algunas instrucciones:

  1. Abra la consola del servidor a través de la interfaz web o SSH.
  2. Actualizar las fuentes del paquete:
    apt update
  3. Instalar Fail2Ban:
    apt install fail2ban
  4. Abra la configuración de la utilidad para editarla:
    nano /etc/fail2ban/jail.conf
  5. Cambiando variables tiempo de baneo (el número de segundos durante los cuales el atacante será bloqueado) y maxreintentar (número de intentos de ingreso de inicio de sesión/contraseña) para cada servicio individual.
  6. Atajo de teclado Ctrl + X sal del editor respondiendo Y cuando el sistema le pregunta acerca de guardar el archivo.
  7. Reinicie el servicio:
    systemctl restart fail2ban

Puede verificar el estado de la utilidad, por ejemplo, eliminar las estadísticas de bloqueo de las direcciones IP bloqueadas desde las cuales hubo intentos de forzar contraseñas SSH con fuerza bruta, con un simple comando:

fail2ban-client -v status sshd

La respuesta de la utilidad se verá así:

root@hypervisor:~# fail2ban-client -v status sshd
INFO   Loading configs for fail2ban under /etc/fail2ban
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO     Loading files: ['/etc/fail2ban/fail2ban.conf']
INFO   Using socket file /var/run/fail2ban/fail2ban.sock
Status for the jail: sshd
|- Filter
|  |- Currently failed: 3
|  |- Total failed:     4249
|  `- File list:        /var/log/auth.log
`- Actions
   |- Currently banned: 0
   |- Total banned:     410
   `- Banned IP list:

De manera similar, puede proteger la interfaz web de este tipo de ataques creando una regla adecuada. Un ejemplo de una regla de este tipo para Fail2Ban se puede encontrar en manual oficial.

Primeros pasos

Me gustaría llamar su atención sobre el hecho de que Proxmox está listo para crear nuevas máquinas inmediatamente después de la instalación. Sin embargo, le recomendamos que complete la configuración preliminar para que el sistema pueda administrarse fácilmente en el futuro. La práctica demuestra que el hipervisor y las máquinas virtuales deben distribuirse en diferentes medios físicos. Cómo hacer esto se discutirá a continuación.

Configurar unidades de disco

El siguiente paso es configurar el almacenamiento que se puede utilizar para guardar datos y copias de seguridad de la máquina virtual.

¡ATENCIÓN! El siguiente ejemplo de diseño de disco se puede utilizar únicamente con fines de prueba. Para uso en el mundo real, recomendamos encarecidamente utilizar una matriz RAID de software o hardware para evitar la pérdida de datos cuando fallan las unidades. Le diremos cómo preparar adecuadamente una matriz de discos para su funcionamiento y qué hacer en caso de una emergencia en uno de los siguientes artículos.

Supongamos que el servidor físico tiene dos discos: / Dev / sda, en el que está instalado el hipervisor y un disco vacío / dev / sdb, que está previsto que se utilice para almacenar datos de máquinas virtuales. Para que el sistema vea el nuevo almacenamiento, puede utilizar el método más simple y eficaz: conectarlo como un directorio normal. Pero antes de eso, es necesario realizar algunos pasos preparatorios. Como ejemplo, veamos cómo conectar una nueva unidad. / dev / sdb, de cualquier tamaño, formateándolo en un sistema de archivos ext4.

  1. Particionamos el disco, creando una nueva partición:
    fdisk /dev/sdb
  2. Presione la tecla o o g (particionar el disco en MBR o GPT).
  3. A continuación, presione la tecla n (crear una nueva sección).
  4. Y finalmente w (para guardar cambios).
  5. Cree un sistema de archivos ext4:
    mkfs.ext4 /dev/sdb1
  6. Crea un directorio donde montaremos la partición:
    mkdir /mnt/storage
  7. Abra el archivo de configuración para editarlo:
    nano /etc/fstab
  8. Agregue una nueva línea allí:
    /dev/sdb1	/mnt/storage	ext4	defaults	0	0
  9. Después de realizar cambios, guárdelos con un atajo de teclado Ctrl + X, respondiendo Y a la pregunta del editor.
  10. Para comprobar que todo funciona mandamos al servidor a reiniciar:
    shutdown -r now
  11. Después del reinicio, verifique las particiones montadas:
    df -H

La salida del comando debería mostrar que / dev / sdb1 montado en el directorio /mnt/almacenamiento. Esto significa que nuestro disco está listo para usar.

Agregar un nuevo repositorio en Proxmox

Inicie sesión en el panel de control y vaya a las secciones Centro de datosAlmacenamientoAñadirDirección.

En la ventana que se abre, complete los siguientes campos:

  • ID — nombre de la futura instalación de almacenamiento;
  • Dirección - /mnt/almacenamiento;
  • contenido — seleccione todas las opciones (haciendo clic en cada opción por turno).

    La magia de la virtualización: un curso de introducción a Proxmox VE

Después de esto, presione el botón Añadir. Esto completa la configuración.

Crear una máquina virtual

Para crear una máquina virtual, realice la siguiente secuencia de acciones:

  1. Decidimos la versión del sistema operativo.
  2. Descargue la imagen ISO con anticipación.
  3. Elige del menú Almacenamiento el repositorio recién creado.
  4. Haga clic aquí contenidoDescargar.
  5. Seleccione una imagen ISO de la lista y confirme la selección presionando el botón Descargar.

Una vez completada la operación, la imagen se mostrará en la lista de disponibles.

La magia de la virtualización: un curso de introducción a Proxmox VE
Creemos nuestra primera máquina virtual:

  1. Haga clic aquí Crear máquina virtual.
  2. Complete los parámetros uno por uno: nombreImagen ISOTamaño y tipo de disco duroNúmero de procesadoresCantidad de RAMAdaptador de red.
  3. Habiendo seleccionado todos los parámetros deseados, haga clic en Completa. La máquina creada se mostrará en el menú del panel de control.
  4. Selecciónelo y haga clic Lanzar.
  5. vamos al punto Consola e instale el sistema operativo exactamente de la misma manera que en un servidor físico normal.

Si necesita crear otra máquina, repita las operaciones anteriores. Una vez que estén todos listos, podrás trabajar con ellos simultáneamente abriendo varias ventanas de la consola.

Configurar la ejecución automática

Por defecto, Proxmox no inicia las máquinas automáticamente, pero esto se soluciona fácilmente con sólo dos clics:

  1. Haga clic en el nombre de la máquina deseada.
  2. Seleccionar una pestaña OpcionesInicie en el arranque.
  3. Marcamos la casilla junto a la inscripción del mismo nombre.

Ahora, si se reinicia el servidor físico, la VM se iniciará automáticamente.

La magia de la virtualización: un curso de introducción a Proxmox VE
Para administradores avanzados, también existe la oportunidad de especificar parámetros de inicio adicionales en la sección Orden de inicio/apagado. Puede especificar explícitamente en qué orden se deben iniciar las máquinas. También puede especificar el tiempo que debe pasar antes de que se inicie la siguiente VM y el tiempo de retraso en el apagado (si el sistema operativo no tiene tiempo para apagarse, el hipervisor lo forzará a apagarse después de una cierta cantidad de segundos).

Conclusión

Este artículo describe los conceptos básicos sobre cómo comenzar con Proxmox VE y esperamos que ayude a los principiantes a dar el primer paso y probar la virtualización en acción.

Proxmox VE es verdaderamente una herramienta muy poderosa y conveniente para cualquier administrador de sistemas; Lo principal es no tener miedo de experimentar y comprender cómo funciona realmente.

Si tienes alguna pregunta, bienvenido a los comentarios.

Fuente: habr.com

Añadir un comentario