Multipath es una técnica de tolerancia a fallas que generalmente tiene como objetivo respaldar la conexión de servidores físicos con almacenamiento. Cuando hay daños en los cables de fibra, es importante que el servidor no pierda el acceso al almacenamiento y mantenga la accesibilidad. Es por eso que los sistemas como los bancos y los sitios de comercio electrónico globales usan rutas múltiples.
Aquí encontrará todo lo que necesita saber sobre rutas múltiples en Linux.
Identificadores para dispositivos de rutas múltiples en servidores
Para rutas múltiples, también es necesario buscar dispositivos de rutas múltiples. Si alguna vez has oído hablar de la WWID (Identificador mundial) antes, no te sonará demasiado extraño.
De manera predeterminada, los nombres de los dispositivos de rutas múltiples se establecen en su WWID. Este es un sistema que garantiza que el dispositivo multicamino es globalmente único e inmutable. Puede establecer el nombre predeterminado aquí con algunas manipulaciones en el archivo de configuración de rutas múltiples cambiando el nombres_amigable_usuario ajuste.
Como ejemplo, puedes pensarlo así. Imagina que tienes dispositivos de almacenamiento conectados a tu servidor como:
- /dev/sda
- /dev/sdb
- /dev/sdc
- /dev/sdd
Si el nombres_amigable_usuario está configurada en "sí" en este punto, los nombres de los dispositivos cambiarán.
gato /etc/multipath.conf
# Producción
predeterminados {
nombres_amigable_usuario sí
}
Si tiene un servidor Ubuntu que usa tecnologías de virtualización, es posible que reciba el siguiente resultado. Lo que debe recordar aquí es que el dispositivo que desea controlar debe ser un dispositivo físico.
Después de configurar el nombres_amigable_usuario opción a sí en el archivo de configuración, puede verificar el nombre del dispositivo de la siguiente manera:
sudo fdisk -l
Procedimiento para nombres de dispositivos de rutas múltiples consistentes
El nombre asignado a los dispositivos de rutas múltiples por este procedimiento será único para un nodo. No es factible afirmar que se aplica a todos los nodos. Si desea dispositivos multirruta consistentes en todos los nodos, configure el nombres_amigable_usuario opción a "no". Reducirá cualquier problema de esta manera, ya que los dispositivos ya no tendrán un nombre único y, en su lugar, utilizarán WWID.
Sin embargo, en otras circunstancias, es posible que desee diseñar nodos que sean consistentes y más fáciles de alcanzar y utilizar.
Para tal caso, primero debe instalar todos los dispositivos de rutas múltiples en una máquina. También debe deshabilitar todos los dispositivos de rutas múltiples en otras máquinas después de este paso. Puede ejecutar los siguientes comandos para esto:
sudosystemctldeténgasemultipath-herramientas.Servicio
sudo rutas múltiples -F
Con estos comandos, detendrá respectivamente el servicio de múltiples rutas y borrará todos los mapas de dispositivos de múltiples rutas. Ahora conviértase en un usuario root y copie el ataduras archivo ubicado en el /etc/multipath directorio a otras máquinas.
En este punto, estará utilizando el procesos daemon de Linux. Después de todos estos pasos, debe ejecutar el camino múltiple Demonio de nuevo:
sudosystemctlcomienzomultipath-herramientas.Servicio
Descripción general de las características generales de los dispositivos multirruta
Las funciones y los ajustes de configuración de los dispositivos multirruta no se limitan a nombres_amigable_usuario. A continuación encontrará información sobre otras configuraciones que puede realizar en el /etc/mutipath.conf expediente:
-
lista negra { }: Si desea especificar qué dispositivos excluir de las rutas múltiples, puede escribir sus nombres entre las dos llaves.
lista negra {
nodo de desarrollo "^sda"
} -
dispositivos { }: Entre estos dos corchetes, puede poner algunos detalles para dispositivos específicos.
dispositivos {
vendedor "DELL"
producto "MD32xx"
} -
múltiples rutas { }: En este campo, puede configurar los atributos de dispositivos multirruta específicos. Al igual que con otros atributos, las rutas múltiples también tienen muchos subatributos diferentes.
camino múltiple {
ancho de banda 3500405b170164c3911244b325426400b
alias amarillo
manual de conmutación por recuperación
} -
excepciones_lista_negra { }: Este campo es para los dispositivos que están en la lista negra pero desea habilitar múltiples rutas para ellos. En lugar de incluir en la lista negra todos los dispositivos uno por uno, puede incluirlos todos en la lista negra y especificar los que desea usar más adelante en este campo.
excepciones_lista_negra {
wwid "3500405b170164c3911244b325426400b"
}
Por supuesto, no todos los atributos se limitan a estos, y cada atributo tiene sus propias subcualidades. Además, puede usarlos en tándem entre sí. A continuación se muestra un archivo de configuración de muestra para que lo revise:
predeterminados {
nombres_amigable_usuario no
}
lista negra {
nodo de desarrollo "^sda"
}
excepciones_lista_negra {
nodo de desarrollo "sda|sdb"
dispositivo {
vendedor "DELL"
producto "MD32xx"
}
}
dispositivos {
dispositivo {
vendedor "HP"
producto "A6189A"
}
}
rutas múltiples {
camino múltiple {
ancho de banda 3500405b170164c3911244b325426400b
alias rojo
}
}
Lógica en dispositivos multirruta
Puede pensar en los dispositivos de rutas múltiples como unidades físicas. Por ejemplo, deja /dev/mapper/mpatha ser el nombre de un dispositivo de múltiples rutas. Este dispositivo actuará como una unidad física. Cuando creas un LVM (Administración de volúmenes lógicos), también deberá editar el /etc/lvm.conf expediente.
Con las configuraciones que realice aquí, deberá filtrar los discos en los dispositivos de rutas múltiples. Si no lo hace, LVM escaneará la ruta pasiva y la ruta múltiple comenzará a funcionar nuevamente, porque la ruta activa puede cambiar automáticamente a la ruta pasiva.
Para evitar esto, puede hacer la siguiente manipulación en el /etc/lvm.conf expediente:
filtro = [ "un bucle.*/", "r/.*/" ]
Este comando agregará bucles y eliminará todos los dispositivos. Sin embargo, el proceso no termina ahí. Después de hacer este cambio en /etc/lvm.conf, guarde el archivo y actualice también el initrd. initrd le permite realizar algunas manipulaciones en el disco RAM. La razón por la que realiza cambios aquí es para copiarlos en el momento del arranque.
actualizar-initramfs -u -k todos
Cada vez que el lvm.conf y multipath.conf se actualizan los archivos, es necesario realizar esta actualización en initramfs. Así es como obtienes un servidor estable y sostenible. Tampoco debe olvidarse de la actualización de initramfs, especialmente si ha realizado cambios en la lista negra y los atributos de filtro.
Importancia de un sistema de trayectos múltiples
En entornos de rutas múltiples, los servidores pueden continuar accediendo a los discos incluso si uno de los componentes (HBA, SAN, controlador de almacenamiento) que utilizan falla. Este es un asunto de particular interés para los administradores de sistemas y servidores.
Es muy importante para servidores de alto tráfico que contienen información importante, donde los protocolos de seguridad deben ser altos. Porque si el servidor de un sitio web con miles de datos de tarjetas de crédito o cientos de miles de clientes registrados es inaccesible porque solo un componente no funciona correctamente, sería un enorme problema.
Es necesario dominar los detalles de todas estas operaciones y los subatributos de los atributos en el archivo de configuración. Esto se debe a que realizar las configuraciones del servidor siempre implica un riesgo. Para este tipo de operación, tiene sentido hacer una copia de seguridad de todo o ejecutar pruebas en un servidor de prueba.
Si no tiene un servidor para probar todo esto, instalar Ubuntu Server es la mejor opción y también es bastante simple.