El almacenamiento iSCSI (Internet Small Computer Systems Interface) es una solución de almacenamiento en red que permite a los usuarios en una red TCP/IP acceder a los dispositivos de almacenamiento sobre una infraestructura de datos existente. Este protocolo puede ser una excelente alternativa a las soluciones de almacenamiento tradicionales, como el almacenamiento en red SAN (Storage Area Network), especialmente en entornos que requieren escalabilidad y flexibilidad. A continuación, te proporcionamos una guía detallada sobre cómo configurar un servidor iSCSI en Ubuntu 22.04.

Requisitos Previos

Antes de comenzar, asegúrate de que tu sistema Ubuntu 22.04 está actualizado y de que tienes privilegios de superusuario. También es importante tener una red configurada correctamente y, preferiblemente, una dirección IP estática para el servidor.

Paso 1: Instalación de los Paquetes Necesarios

Primero, instalarás el software necesario para crear un objetivo iSCSI. En Ubuntu, esto se hace instalando el paquete tgt, que incluye las herramientas necesarias para configurar y manejar un servidor iSCSI.

sudo apt update
sudo apt install tgt

Paso 2: Configuración del Objetivo iSCSI

El archivo de configuración principal para tgt es /etc/tgt/conf.d/targets.conf. Aquí definirás los diferentes objetivos y las unidades lógicas que estarán disponibles a través de iSCSI.

  1. Crear un Archivo de Configuración para tu Objetivo iSCSI:
   sudo nano /etc/tgt/conf.d/mytarget.conf

Añade la siguiente configuración al archivo, ajustando los valores según tus necesidades:

   <target iqn.2022-04.com.example:storage.disk1>
       # Dirección IP en la que se escucharán las conexiones
       # Omitir esta línea si se aceptan conexiones en todas las interfaces
       # En la red interna
       backing-store /dev/sdb
       initiator-address 192.168.1.101
       incominguser username password
       outgoinguser username password
   </target>
  • iqn.2022-04.com.example:storage.disk1 es el nombre único del objetivo iSCSI.
  • backing-store /dev/sdb especifica el dispositivo de almacenamiento que se compartirá.
  • initiator-address limita qué direcciones IP pueden conectarse.
  • incominguser y outgoinguser son para configurar la autenticación CHAP si es necesario.
  1. Reiniciar el Servicio tgt para Aplicar los Cambios:
   sudo systemctl restart tgt

Paso 3: Verificar la Configuración

Puedes verificar que tu configuración está funcionando correctamente listando los objetivos iSCSI disponibles:

sudo tgt-admin --show

Paso 4: Configurar el Iniciador iSCSI en el Cliente

En el cliente que accederá al almacenamiento iSCSI, necesitarás instalar el iniciador iSCSI y conectarlo al objetivo configurado.

  1. Instalar el iniciador iSCSI:
   sudo apt install open-iscsi
  1. Editar el archivo de configuración del iniciador iSCSI:
   sudo nano /etc/iscsi/initiatorname.iscsi

Establece el nombre del iniciador iSCSI.

  1. Conectar al objetivo iSCSI:
   sudo iscsiadm -m discovery -t st -p 192.168.1.100
   sudo iscsiadm -m node --targetname iqn.2022-04.com.example:storage.disk1 --portal 192.168.1.100:3260 --login

Estos comandos descubrirán y se conectarán al objetivo iSCSI.

Para aquellos que buscan un rendimiento optimizado y una gestión simplificada para proyectos que requieren soluciones como servidores iSCSI, los servicios de Linux SSD VPS de Shape.host son ideales. Shape.host ofrece VPS en la nube que proporcionan recursos dedicados y una plataforma robusta para manejar el tráfico y las operaciones de almacenamiento intensivas sin las complicaciones de administrar el hardware físico.