IBM Cloud Docs
Monte el volumen iSCSI en Red Hat Enterprise Linux 8

Monte el volumen iSCSI en Red Hat Enterprise Linux 8

Este tutorial le guiará a través de cómo montar un volumen IBM Cloud® Block Storage for Classic en un servidor con el sistema operativo Red Hat Enterprise Linux® 8. Va a crear dos conexiones desde una interfaz de red de su host a dos direcciones IP de destino de la matriz de almacenamiento.

Si utiliza otro sistema operativo Linux®, consulte la documentación de su distribución específica y asegúrese de que el multipath admite ALUA para la prioridad de ruta.

Antes de empezar

Si varios hosts montan el mismo volumen Block Storage for Classic sin estar gestionados de forma cooperativa, los datos están en riesgo de corrupción. Se pueden producir daños en el volumen si varios hosts realizan cambios en el volumen al mismo tiempo. Necesita un sistema de archivos de disco compartido con reconocimiento de clúster para evitar la pérdida de datos como, por ejemplo, Microsoft Cluster Shared Volumes (CSV), Red Hat Global File System (GFS2), VMware® VMFS y otros. Para más información, consulte la documentación del sistema operativo de su host.

Es mejor ejecutar el tráfico de almacenamiento en una VLAN, que omita el cortafuegos. La ejecución del tráfico de almacenamiento a través de cortafuegos de software aumenta la latencia y afecta negativamente al rendimiento del almacenamiento. Para obtener más información sobre cómo direccionar el tráfico a su propia interfaz de VLAN, consulte las Preguntas frecuentes.

Antes de empezar, asegúrese de que el host que va a acceder al volumen Block Storage for Classic está autorizado. Para más información, ver Autorizando el host en la consola Autorizar el host desde la CLI Autorizar el host con Terraform.

Instalar los programas de utilidad multivía e iSCSI

Asegúrese de que su sistema está actualizado e incluye los paquetes iscsi-initiator-utils y device-mapper-multipath. Utilice el mandato siguiente para instalar los paquetes.

sudo dnf -y install iscsi-initiator-utils device-mapper-multipath

Configurar la multivía de acceso

DM Multipath se configura con la utilidad mpathconf, que crea el archivo de configuración multipath /etc/multipath.conf.

  • Si el archivo /etc/multipath.conf existe, la utilidad mpathconf puede editarlo.
  • Si el archivo /etc/multipath.conf no existe, el programa de utilidad mpathconf crea el archivo /etc/multipath.conf desde cero.

Para más información sobre la utilidad mpathconf, consulte la página man mpathconf(8).

  1. Introduzca el comando mpathconf con la opción --enable.

    # mpathconf --enable --user_friendly_names n
    
  2. Edite el archivo /etc/multipath.conf con la siguiente configuración mínima.

    defaults {
    user_friendly_names no
    max_fds max
    flush_on_last_del yes
    queue_without_daemon no
    dev_loss_tmo infinity
    fast_io_fail_tmo 5
    }
    # All data in the following section must be specific to your system.
    blacklist {
    wwid "SAdaptec*"
    devnode "^hd[a-z]"
    devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
    devnode "^cciss.*"
    }
    devices {
    device {
    vendor "NETAPP"
    product "LUN"
    path_grouping_policy group_by_prio
    features "2 pg_init_retries 50"
    no_path_retry queue
    prio "alua"
    path_checker tur
    failback immediate
    path_selector "round-robin 0"
    hardware_handler "1 alua"
    rr_weight uniform
    rr_min_io 128
    }
    }
    

    La sección de valores predeterminados iniciales del archivo de configuración configura el sistema para que los nombres de los dispositivos multipath tengan la forma /dev/mapper/mpath n, donde mpath n es el WWID del dispositivo.

  3. Guarde el archivo de configuración y salga del editor, si es necesario.

  4. Emita el mandato siguiente:

    systemctl start multipathd.service
    

    Si necesita editar el archivo de configuración de multipath después de haber iniciado el demonio multipath, debe ejecutar el comando systemctl reload multipathd.service para que los cambios surtan efecto.

    Para obtener más información sobre el uso de la función Device Mapper Multipath en RHEL 8, consulte Configuración del device mapper multipath.

Actualizar el archivo /etc/iscsi/initiatorname.iscsi

Actualice el archivo /etc/iscsi/initiatorname.iscsi con el IQN desde la consola IBM Cloud®. Escriba el valor en minúsculas.

InitiatorName=<value-from-the-Portal>

Configurar credenciales

Edite los siguientes ajustes en /etc/iscsi/iscsid.conf utilizando el nombre de usuario y la contraseña de la consola IBM Cloud®. Utilice mayúsculas para los nombres de CHAP.

node.session.auth.authmethod = CHAP
node.session.auth.username = <Username-value-from-Portal>
node.session.auth.password = <Password-value-from-Portal>
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = <Username-value-from-Portal>
discovery.sendtargets.auth.password = <Password-value-from-Portal>

Deje los otros ajustes de CHAP comentados. El almacenamiento IBM Cloud® solo utiliza la autenticación unidireccional. No habilite Mutual CHAP.

Descubrir el dispositivo de almacenamiento e iniciar sesión

La utilidad iscsiadm es una herramienta de línea de comandos que se utiliza para el descubrimiento y el inicio de sesión en los destinos iSCSI, además del acceso y la gestión de la base de datos open-iscsi. Para más información, consulte la página de manual iscsiadm(8). En este paso, descubra el dispositivo utilizando la dirección IP de destino que se ha obtenido de la consola de IBM Cloud®.

  1. Ejecute el descubrimiento en la matriz de iSCSI.

    iscsiadm -m discovery -t sendtargets -p <ip-value-from-IBM-Cloud-console>
    

    Si se muestra la información de la dirección IP y los detalles de acceso, la detección se ha realizado correctamente.

  2. Inicie sesión en la matriz iSCSI.

    iscsiadm -m node --login
    

Verificación de la configuración

  1. Valide que se ha establecido la sesión iSCSI.

    iscsiadm -m session -o show
    
  2. Compruebe que existen varias vías de acceso.

    multipath -l
    

    Este mandato informa de las vías de acceso. Si se configura correctamente, cada volumen tiene un único grupo, con un número de rutas igual al número de sesiones de iSCSI. Es posible adjuntar un volumen con una sola ruta, pero es importante que las conexiones se establezcan en ambas rutas para evitar interrupciones del servicio.

    Si MPIO no se ha configurado correctamente, el dispositivo de almacenamiento se puede desconectar y aparecer fuera de línea cuando se produzca un corte en la red o cuando los equipos de IBM Cloud® realizan tareas de mantenimiento. MPIO proporciona un nivel extra de conectividad durante esos eventos, y mantiene una sesión establecida con el volumen con operaciones activas de lectura/escritura.

  3. Liste las tablas de partición del dispositivo conectado.

    fdisk -l | grep /dev/mapper
    

    De forma predeterminada, el dispositivo de almacenamiento se conecta a /dev/mapper/<wwid>. El WWID persiste mientras existe el volumen. El mandato informa de algo similar al ejemplo siguiente.

    Disk /dev/mapper/3600a0980383030523424457a4a695266: 73.0 GB, 73023881216 bytes
    

    En el ejemplo, la cadena 3600a0980383030523424457a4a695266 es el WWID. La aplicación debe utilizar el WWID. También es posible asignar nombres más fáciles de leer utilizando las palabras clave "user_friendly_names" o "alias" en multipath.conf. Para más información, consulte la página de manual multipath.conf.

    El volumen ahora está montado y es accesible en el host. Luego puede crear un sistema de archivos.

Creación de un sistema de archivos (opcional)

Siga estos pasos para crear un sistema de archivos en el volumen montado recientemente. Un sistema de archivos es necesario para que la mayoría de las aplicaciones utilicen el volumen. Utilice fdisk para unidades inferiores a 2 TB y parted para discos de más de 2 TB.

Creación de un sistema de archivos con fdisk

  1. Obtenga el nombre de disco.

    fdisk -l | grep /dev/mapper
    

    El nombre de disco que se devuelve tiene un aspecto similar a /dev/mapper/XXX.

  2. Cree una partición en el disco.

    fdisk /dev/mapper/XXX
    

    XXX representa el nombre del disco que se devuelve en el Paso 1.

  3. Cree un sistema de archivos en la nueva partición.

    fdisk –l /dev/mapper/XXX
    
    • La nueva partición se lista con el disco, de forma similar a XXXp1, seguido del tamaño, Tipo (83), y Linux®.

    • Anote el nombre de partición, lo necesita en el siguiente paso. (XXXp1 representa el nombre de partición)

    • Cree el sistema de archivos:

      mkfs.ext3 /dev/mapper/XXXp1
      
  4. Cree un punto de montaje para el sistema de archivos y móntelo.

    • Cree un nombre de partición PerfDisk o donde quiera montar el sistema de archivos.

      mkdir /PerfDisk
      
    • Monte el almacenamiento con el nombre de la partición.

      mount /dev/mapper/XXXp1 /PerfDisk
      
    • Compruebe que ve el nuevo sistema de archivos que aparece en la lista.

      df -h
      
  5. Para habilitar el montaje automático del arranque om, añada el nuevo sistema de archivos al archivo /etc/fstab del sistema.

    • Añada la siguiente línea al final de /etc/fstab (con el nombre de partición del Paso 3).
    /dev/mapper/XXXp1    /PerfDisk    ext3    defaults,_netdev    0    1
    

    Para más información, consulte Una introducción al archivo Linux /etc/fstab.

Creación de un sistema de archivos con parted

En muchas distribuciones de Linux®, parted viene preinstalado. No obstante, si lo necesita, puede instalarlo ejecutando el siguiente comando.

# dnf install parted

Para crear un sistema de archivos con parted, siga estos pasos.

  1. Inicie el intérprete de comandos interactivo parted.

    parted
    
  2. Cree una partición en el disco.

    1. A menos que se especifique lo contrario, la utilidad parted utiliza su unidad principal, que es /dev/sda en la mayoría de los casos. Cambie al disco en el que quiera la partición utilizando el mandato select. Sustituya XXX por el nuevo nombre de dispositivo.

      select /dev/mapper/XXX
      
    2. Ejecute print para confirmar que se encuentra en el disco correcto.

      print
      
    3. Cree una tabla de partición GPT.

      mklabel gpt
      
    4. Parted se puede utilizar para crear particiones de disco lógicas y primarias, los pasos a seguir son los mismos. Para crear una partición, la utilidad utiliza mkpart. Puede especificar otros parámetros como primaria o lógica en función del tipo de partición que quiera crear.

      mkpart
      

      El valor predeterminado de las unidades de la lista es megabytes (MB). Para crear una partición de 10 GB, deberá empezar en 1 y acabar en 10000. También puede cambiar las unidades de tamaño a terabytes especificando unit TB, si lo desea.

    5. Salga de parted con quit.

      quit
      
  3. Cree un sistema de archivos en la nueva partición.

    mkfs.ext3 /dev/mapper/XXXp1
    

    Es importante seleccionar el disco y la partición correctos al ejecutar este comando. Compruebe el resultado imprimiendo la tabla de partición. En la columna del sistema de archivos, puede ver ext3.

  4. Cree un punto de montaje para el sistema de archivos y móntelo.

    • Cree un nombre de partición PerfDisk o donde quiera montar el sistema de archivos.
    mkdir /PerfDisk
    
    • Monte el almacenamiento con el nombre de la partición.
    mount /dev/mapper/XXXp1 /PerfDisk
    
    • Compruebe que ve el nuevo sistema de archivos que aparece en la lista.
    df -h
    
  5. Para habilitar el montaje automático del arranque om, añada el nuevo sistema de archivos al archivo /etc/fstab del sistema.

    • Añada la siguiente línea al final de /etc/fstab (utilizando el nombre de partición del Paso 3).
    /dev/mapper/XXXp1    /PerfDisk    ext3    defaults,_netdev    0    1
    

    Para más información, consulte Una introducción al archivo Linux /etc/fstab.

Gestión de los permisos de usuario para el contenido del volumen montado

Como administrador del sistema, puede gestionar el acceso a los datos del volumen montado. Una vez que el sistema de archivos esté listo, puede refinar el control de acceso utilizando los comandos chown y chmod para asignar permisos de lectura, escritura y ejecución a usuarios y grupos individuales. Para obtener más información, consulte el tutorial de Red Hat: Cómo gestionar los permisos de Linux para usuarios, grupos y otros.

Verificación de la configuración de MPIO

Si MPIO no se ha configurado correctamente, el dispositivo de almacenamiento se puede desconectar y aparecer fuera de línea cuando se produzca un corte en la red o cuando los equipos de IBM Cloud® realizan tareas de mantenimiento. MPIO proporciona un nivel extra de conectividad durante esos eventos, y mantiene una sesión establecida con el volumen con operaciones activas de lectura/escritura.

  • Para comprobar si la multivía está recogiendo dispositivos, visualice la configuración actual. Si se configura correctamente, entonces existe un único grupo para cada volumen, con un número de rutas igual al número de sesiones iSCSI.

    multipath -l
    
    root@server:~# multipath -l
    3600a09803830304f3124457a45757067 dm-1 NETAPP,LUN C-Mode
    size=20G features='1 queue_if_no_path' hwhandler='0' wp=rw
    |-+- policy='round-robin 0' prio=-1 status=active
    | `6:0:0:101 sdd 8:48 active ready running
    `-+- policy='round-robin 0' prio=-1 status=enabled
     `- 7:0:0:101 sde 8:64 active ready running
    

    La cadena 3600a09803830304f3124457a45757067 en el ejemplo es el WWID único del volumen. Cada volumen se identifica por su WWID único, que es persistente mientras exista el volumen.

  • Confirme que aparecen todos los discos. En una configuración correcta, en la salida se deberían mostrar dos discos con el mismo identificador y un listado /dev/mapper del mismo tamaño con el mismo identificador. El dispositivo /dev/mapper es el que configura la multivía.

    fdisk -l | grep Disk
    
    • Ejemplo de salida de una configuración correcta.
    root@server:~# fdisk -l | grep Disk
    Disk /dev/sda: 500.1 GB, 500107862016 bytes Disk identifier: 0x0009170d
    Disk /dev/sdc: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
    Disk /dev/sdb: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
    Disk /dev/mapper/3600a09803830304f3124457a45757066: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
    

    El WWID se incluye en el nombre del dispositivo que crea la multivía. Se recomienda que su aplicación utilice el WWID.

    • Salida de ejemplo de una configuración incorrecta. No existe ningún disco /dev/mapper.
    root@server:~# fdisk -l | grep Disk
    Disk /dev/sda: 500.1 GB, 500107862016 bytes Disk identifier: 0x0009170d
    Disk /dev/sdc: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
    Disk /dev/sdb: 21.5 GB, 21474836480 bytes Disk identifier: 0x2b5072d1
    
  • Para confirmar que no hay discos locales incluidos en la lista de dispositivos multipath, muestre la configuración actual con un nivel de verbosidad 3. El resultado del mandato siguiente muestra los dispositivos y también muestra los que se han añadido a la lista de bloques.

    multipath -l -v 3 | grep sd <date and time>
    
  • Si se aprovisiona un volumen y se adjunta mientras la segunda ruta está inactiva, el host podría ver una única ruta cuando se ejecuta el escaneo de descubrimiento por primera vez. Si se encuentra con este raro fenómeno, compruebe la IBM Cloud® página de estado para ver si se está produciendo un evento que afecte a la capacidad de su host para acceder al almacenamiento. Si no se informa de ningún evento, vuelva a realizar la exploración de detección para asegurarse de que todas las rutas se han descubierto correctamente. Si hay un evento en curso, el almacenamiento puede conectarse con una única ruta. No obstante, es fundamental volver a explorar las vías de acceso una vez finalizado el suceso. Si ambas rutas no se descubren después de la reexploración, cree un caso de soporte para que se pueda investigar adecuadamente.

Desmontaje de volúmenes de Block Storage for Classic

  1. Desmonte el sistema de archivos.
    umount /dev/mapper/XXXp1 /PerfDisk
    
  2. Si no tiene ningún otro volumen en el portal de destino, puede finalizar la sesión del destino.
    iscsiadm -m node -T <TARGET NAME> -p <PORTAL IP:PORT> --logout
    
  3. Si no tiene ningún otro volumen en el portal de destino, suprima el registro del portal de destino para evitar futuros intentos de inicio de sesión.
    iscsiadm -m node -o delete -T <TARGET IQN> -p <PORTAL IP:PORT>
    
    Para más información, consulte el manual iscsiadm.