Articulo de referencia

Rutas múltiples de Linux DM

El mapeador de dispositivos de entrada/salida multipath ( DM-MPIO ) o DM-Multipathing proporciona conmutación por error de entrada/salida (E/S) y equilibrio de carga mediante el...

El mapeador de dispositivos de entrada/salida multipath ( DM-MPIO ) o DM-Multipathing proporciona conmutación por error de entrada/salida (E/S) y equilibrio de carga mediante el uso de E/S multipath dentro de Linux para dispositivos de bloques . [ 1 ] [ 2 ] [ 3 ] Al utilizar el mapeador de dispositivos, el multipathddemonio proporciona la lógica del lado del host para usar múltiples rutas de una red redundante para proporcionar disponibilidad continua y conectividad de mayor ancho de banda entre el servidor host y el dispositivo de nivel de bloque. [ 4 ] DM-MPIO maneja el enrutamiento de E/S de bloque a una ruta alternativa en caso de falla de ruta. DM-MPIO también puede equilibrar la carga de E/S en todas las rutas disponibles que se utilizan normalmente en entornos SAN Fibre Channel (FC) e iSCSI . [ 5 ] DM-MPIO se basa en el mapeador de dispositivos , [ 6 ] que proporciona el marco básico que mapea un dispositivo de bloques en otro.

Consideraciones

Al utilizar Linux DM-MPIO en un centro de datos que cuenta con otros sistemas operativos y soluciones de rutas múltiples, se deben tener en cuenta componentes clave de la gestión de rutas.

  • Balanceo de carga : la carga de trabajo se distribuye entre los componentes de hardware disponibles. Objetivo: reducir el tiempo de finalización de E/S, maximizar el rendimiento y optimizar los recursos.
  • Conmutación por error y recuperación de rutas : utiliza canales de E/S redundantes para redirigir las lecturas y escrituras de la aplicación cuando una o más rutas ya no están disponibles.

Historia

DM-MPIO comenzó como un conjunto de parches creado por Joe Thornber, y posteriormente fue mantenido por Alasdair G Kergon en Red Hat. Se incluyó en la versión principal de Linux con el kernel 2.6.12, que se publicó el 17 de junio de 2005. [ 7 ]

Componentes

Ejemplo sencillo de rutas múltiples

DM-MPIO en Linux consta de componentes del núcleo y componentes del espacio de usuario.

  • Núcleo – mapeador de dispositivos – subsistema de bloques que proporciona un mecanismo de capas para dispositivos de bloques.
    • dm-multipath– Módulo del kernel que implementa el objetivo de mapeo de dispositivos multipath .
  • El espacio de usuario – multipath-tools – proporciona las herramientas para administrar dispositivos con rutas múltiples, indicándole al módulo multipath del mapeador de dispositivos qué hacer. Las herramientas consisten en:
    • Multipath: escanea el sistema en busca de dispositivos multipath, los ensambla y actualiza el mapa del mapeador de dispositivos. [ 5 ]
    • Multipathd: demonio que espera eventos de mapas y luego ejecuta multipath y supervisa las rutas. Marca una ruta como fallida cuando esta se vuelve defectuosa. Dependiendo de la política de recuperación, puede reactivar la ruta. [ 5 ]
    • Devmap-name: proporciona un nombre de dispositivo significativo a udev para los devmaps. [ 5 ]
    • Kpartx: asigna mapas devs lineales a particiones de dispositivos para hacer que los mapas de rutas múltiples sean particionables. [ 5 ]
    • Multipath.conf: archivo de configuración para el demonio multipath. Se utiliza para sobrescribir la tabla de configuración integrada de multipathd.

Archivo de configuración

El archivo de configuración /etc/multipath.conf permite que el usuario configure muchas de las funciones de DM-MPIO. El comando multipath y el demonio del kernel multipathd utilizan la información contenida en este archivo. Este archivo solo se consulta durante la configuración de los dispositivos multipath. Es necesario realizar cambios antes de ejecutar el comando multipath . Si se modifica posteriormente, será necesario ejecutar multipath de nuevo.

El archivo multipath.conf tiene cinco secciones: [ 8 ]

  1. Valores predeterminados del sistema ( predeterminados ): El usuario puede anular los valores predeterminados del sistema.
  2. Dispositivos en la lista negra ( blacklist ): El usuario especifica la lista de dispositivos que no deben estar bajo el control de DM-MPIO.
  3. Excepciones de la lista negra ( blacklist_exceptions ): Dispositivos específicos que se tratarán como dispositivos de rutas múltiples incluso si aparecen en la lista negra.
  4. Configuración específica del controlador de almacenamiento ( dispositivos ): La configuración especificada por el usuario se aplicará a los dispositivos con la información de "Proveedor" y "Producto" especificada.
  5. Configuración específica del dispositivo ( rutas múltiples ): Ajuste con precisión la configuración para LUN individuales.

Terminología

  • HBA: Los adaptadores de bus de host proporcionan la interfaz física entre el bus de host de entrada/salida (E/S) de los dispositivos Fibre Channel y la red Fibre Channel subyacente. [ 9 ]
  • Ruta: Conexión desde el servidor a través del HBA a una LUN específica.
  • Estados de ruta DM: La vista del mapeador de dispositivos sobre la condición de la ruta. Solo son posibles dos condiciones:
    • Activo: La última operación de E/S enviada a través de esta ruta se completó correctamente. Análogo al estado de ruta listo.
    • Error: La última operación de E/S enviada a través de esta ruta no se completó correctamente. Análogo a un estado de ruta defectuosa.
  • Conmutación por error : Cuando se determina que una ruta está en estado de fallo, una ruta que esté en estado listo se activará. [ 10 ]
  • Recuperación: Cuando se determina que una ruta fallida vuelve a estar activa, multipathd puede optar por recuperar la ruta según lo determine la política de recuperación. [ 11 ]
  • Política de recuperación ante fallos: Cuatro opciones, tal como se definen en el archivo de configuración multipath.conf.
    • Inmediato: Volver inmediatamente a la ruta de máxima prioridad.
    • Manual: La ruta fallida no se supervisa y requiere la intervención del usuario para la recuperación.
    • Conmutación por error (para clústeres): Realice la conmutación por error automática solo cuando la primera ruta de un grupo de rutas se active. Esto evita que un nodo vuelva automáticamente a la normalidad cuando otro nodo solicita la conmutación por error.
    • Número de segundos: Espere un número determinado de segundos para permitir que la E/S se estabilice y, a continuación, vuelva a la ruta de mayor prioridad.
  • Activo/Activo: En un sistema que tiene dos controladores de almacenamiento, cada controlador puede procesar E/S. [ 12 ]
  • Activo/Pasivo: En un sistema que tiene dos controladores de almacenamiento, solo uno de ellos puede procesar E/S a la vez; el otro (pasivo) está en modo de espera. [ 12 ]
  • LUN: Número de unidad lógica SCSI
  • WWID : El identificador mundial es un identificador para el dispositivo multipath que garantiza ser único e inmutable a nivel global.

Lecturas adicionales

  • Michael, T., Kabir, R., Giles, J. y Hull, J. (2006). Configuración de Linux para habilitar E/S de rutas múltiples. Recuperado de http://www.dell.com/downloads/global/power/ps3q06-20060189-Michael.pdf . Archivado el 27 de febrero de 2012 en Wayback Machine.
  • Goggin, E., Kergon, A., Varoqui, C., & Olien, D. (2005) Actas del Simposio Linux – Rutas múltiples en Linux. Recuperado de https://web.archive.org/web/20101227213252/http://www.linuxinsight.com/files/ols2005/goggin-reprint.pdf
  • Documentación de Red Hat. (s.f.) Red Hat Enterprise Linux 6, DM Multipath. Recuperado de https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html-single/DM_Multipath/
  • Varoqui, C. (2010). La implementación de rutas múltiples en Linux. Recuperado de http://christophe.varoqui.free.fr/refbook.html

Referencias

  1. Goggin, Edward; Kergon, Alasdair; Varoqui, Christophe; Olien, David. "Linux Multipathing" (PDF) .
  2. Varoqui, Christophe. "La implementación de rutas múltiples en Linux" .
  3. Oberg, Michael. "Exploración de arquitecturas de almacenamiento paralelo para un Blue Gene/L en TeraGrid" (PDF) . Archivado del original (PDF) el 2 de diciembre de 2013. Consultado el 13 de febrero de 2012 .
  4. van Vugt, Sander (8 de marzo de 2010). Guía práctica para la alta disponibilidad de XEN . Books4Brains. ISBN 9789072389084.
  5. 1 2 3 4 5 SUSE. "Guía de administración de almacenamiento, SUSE Linux Enterprise Server 11 SP1" (PDF) . Documentación de SLES11, pág. 49 .
  6. "Soporte para rutas múltiples en el mapeador de dispositivos [ LWN.net ] " .
  7. Linux 2.6.12 kernelnewbies.org
  8. RedHat. "Uso de Device-Mapper Multipath" . Archivado del original el 29/12/2011 . Consultado el 30/01/2012 .
  9. ^ Gupta, Meeta (2002). Fundamentos de la red de área de almacenamiento . Indianápolis, IN: Cisco Press. pag. 81.ISBN  1-58705-065-X.
  10. Anderson, Michael. "SCSI Mid-Level Multipath" (PDF) .
  11. "Guía de administración de almacenamiento, documentación de SLES11" (PDF) . SUSE. pág. 73. 
  12. 1 2 Centos. "Descripción general de DM-Multipath" . Uso de Device-Mapper Multipath . Archivado del original el 05-03-2012 . Recuperado el 30-01-2012 .