Saltar al contenido

¿Cómo uso iSCSI para montar un LUN de iSCSI de FSx para ONTAP en una instancia de EC2 de Linux?

6 minutos de lectura
0

Quiero usar la Interfaz de sistemas informáticos pequeños (iSCSI) de Internet para montar un LUN de iSCSI de Amazon FSx para NetApp ONTAP en mi instancia de Linux de Amazon Elastic Compute Cloud (Amazon EC2).

Solución

Nota: La siguiente resolución es para las instancias de Amazon EC2 que ejecutan Amazon Linux 2023 (AL2023), Amazon Linux 2 (AL2), Red Hat Enterprise Linux (RHEL) 8 y CentOS 8.

Requisitos previos:

Uso de iSCSI para montar el sistema de archivos en la instancia

Sigue estos pasos:

  1. Para instalar los paquetes necesarios, ejecuta el siguiente comando:

    sudo yum install -y iscsi-initiator-utils device-mapper-multipath
  2. Para configurar la ruta múltiple para el sistema de archivos, ejecuta los siguientes comandos:

    sudo mpathconf --enable --with_multipathd y
    sudo systemctl start multipathd
    sudo systemctl enable multipathd
  3. Para recuperar las direcciones de las interfaces de almacenamiento en bloque de la máquina virtual de almacenamiento (SVM), utiliza la interfaz de la línea de comandos (CLI) de ONTAP. Ejecuta el siguiente comando en el sistema de archivos de FSx ONTAP:

    network interface show -vserver svm_name

    Nota: Sustituye svm_name por el nombre de tu SVM.
    Resultado de ejemplo:

                Logical               Status         Network            Current                    Current Is
    Vserver     Interface             Admin/Oper     Address/Mask       Node                       Port    Home
    ----------- ----------            ----------     ------------------ -------------              ------- ----
    svm_name
                iscsi_1               up/up          iscsi_1_IP/X       FSxId0123456789abcdef8-01  e0e     true
                iscsi_2               up/up          iscsi_2_IP/X       FSxId0123456789abcdef8-02  e0e     true
    2 entries were displayed.
  4. Para descubrir los destinos de iSCSI, ejecuta el siguiente comando en la instancia de EC2 para buscar el iniciador del destino:

    sudo iscsiadm --mode discovery --op update --type sendtargets --portal iscsi_1_IP

    Nota: Sustituye iscsi_1_IP por la dirección IP iscsi_1 que has recibido del comando anterior.
    Resultado de ejemplo:

    iscsi_1:3260,1029 iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3
    iscsi_2:3260,1028 iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3

    En el ejemplo de salida anterior, el iniciador de destino es iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3.

  5. (Opcional) Para establecer 8 sesiones en cada iniciador de cada nodo de ONTAP de cada zona de disponibilidad, ejecuta el siguiente comando:

    sudo iscsiadm --mode node -T iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 --op update -n node.session.nr_sessions -v 8

    Nota: Sustituye iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 por tu iniciador de destino.

  6. Para iniciar sesión en el destino de iSCSI, ejecuta el siguiente comando:

    sudo iscsiadm -m node -T iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 -l

    Nota: Sustituye iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 por tu iniciador de destino.

  7. Para buscar el dispositivo de ruta múltiple, ejecuta el siguiente comando:

    sudo multipath -ll

    Resultado de ejemplo:

    3600a09806c5742314e5d52766e79614f dm-xyz NETAPP ,LUN C-Mode
    size=10G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='0' wp=rw
    |-+- policy='service-time 0' prio=50 status=active |
    |- 0:0:0:1 sda 8:0 active ready running |
    |- 1:0:0:1 sdc 8:32 active ready running |
    |- 3:0:0:1 sdg 8:96 active ready running | `
    - 4:0:0:1 sdh 8:112 active ready running `
    -+- policy='service-time 0' prio=10 status=enabled
    |- 2:0:0:1 sdb 8:16 active ready running
    |- 7:0:0:1 sdf 8:80 active ready running
    |- 6:0:0:1 sde 8:64 active ready running
    `- 5:0:0:1 sdd 8:48 active ready running

    En el resultado de ejemplo anterior, el enlace simbólico es 3600a09806c5742314e5d52766e79614f. Puedes encontrar el enlace simbólico en la ruta /dev/mapper/wwid, donde wwid es el identificador único de tu LUN en todos los dispositivos.

  8. Para crear un sistema de archivos, usa el siguiente comando:

    sudo mkfs.xfs /dev/mapper/wwid

    Nota: Sustituye wwid por el identificador único de tu LUN.

  9. Para crear un punto de montaje y montarlo en él, ejecuta los siguientes comandos:

    sudo mkdir /mnt/fsx-iscsi
    sudo mount /dev/mapper/wwid /mnt/fsx-iscsi
  10. (Opcional) Para configurar el montaje automático durante el arranque, ejecuta los siguientes comandos para activar el servicio iSCSI:

sudo systemctl enable iscsid
sudo systemctl enable iscsi

A continuación, agrega la siguiente línea al archivo /etc/fstab:

/dev/mapper/wwid /mnt/fsx-iscsi xfs _netdev,x-systemd.automount,x-systemd.requires=network-online.target 0 0

Nota: Sustituye wwid por el identificador único de tu LUN y /mnt/fsx-iscsi por la ruta del archivo. Crea un archivo de servicio systemd para iniciar sesión en iSCSI con la ruta del archivo /etc/systemd/system/.
Archivo de ejemplo:

[Unit]
Description=iSCSI connection to FSx
After=network.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/iscsiadm -m node -T iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 -p iscsi_1_IP -l
ExecStop=/sbin/iscsiadm -m node -T iqn.1992-08.com.netapp:sn.1234567890abcdef:vs.3 -p iscsi_1_IP -u

[Install]
WantedBy=multi-user.target

Nota: Sustituye iscsi_1_IP por tu dirección IP iscsi_1 y region por tu región de AWS. Para activar e iniciar el servicio, ejecuta los siguientes comandos:

sudo systemctl enable iscsi-fsx.service
sudo systemctl start iscsi-fsx.service
sudo systemctl status iscsi-fsx.service

Solución de problemas de montaje de ISCSI

Importante: Se recomienda crear una cuenta de NetApp. Debes tener una cuenta de NetApp para acceder a la base de conocimientos de NetApp.

Solución de problemas del servidor de Linux de EC2

Si tienes problemas al montar el sistema de archivos, toma las siguientes medidas de solución de problemas:

  • Para comprobar la conectividad del puerto requerido, ejecuta el siguiente comando:

    telnet iscsi_1_IP 3260

    Nota: Sustituye iscsi_1_IP por tu dirección IP iscsi_1.

  • Para comprobar si la detección de iSCSI funciona según lo previsto, ejecuta el siguiente comando:

    sudo iscsiadm -m discovery --op update -t sendtargets -p iscsi_1_IP

    Nota: Sustituye iscsi_1_IP por tu dirección IP iscsi_1.

  • Para comprobar el estado de las sesiones de iSCSI activas e identificar los problemas, ejecuta el siguiente comando:

    sudo iscsiadm -m session
  • Para comprobar que la ruta múltiple funciona según lo previsto, ejecuta el siguiente comando:

    sudo multipath -ll
  • Para comprobar si hay errores en los registros, ejecuta uno de los siguientes comandos:

    dmesg | grep iSCSI

    Alternativa:

    journalctl -u iscsid

Para solucionar más problemas de montaje, consulta Troubleshoot iSCSI LUNs not visible on the host (Solución de problemas de LUN de iSCSI que no están visibles en el host) en el sitio web de NetApp.

Solución de problemas del servidor de FSx para ONTAP

Para comprobar que el servicio iSCSI se está ejecutando, ejecuta los siguientes comandos:

vserver iscsi show
iscsi session show

Para comprobar si hay problemas en la configuración del LUN, ejecuta el siguiente comando:

lun show -vserver vserver_name

Nota: Sustituye vserver_name por el nombre de tu servidor.

Para comprobar que has configurado correctamente el acceso al almacenamiento, ejecuta el siguiente comando para ver la asignación entre los LUN y los grupos de iniciadores:

lun mapping show

Para comprobar la configuración de igroup y confirmar que incluye el iniciador, ejecuta el siguiente comando:

igroup show -instance
OFICIAL DE AWSActualizada hace 3 meses