Data Domain: Cómo solucionar problemas de instalación, configuración y montaje de Boostfs
Summary: Este artículo ayuda al usuario a identificar y resolver algunos problemas típicos de instalación y configuración de BOOSTFS.
Symptoms
BOOSTFS es un componente de software que se puede instalar en algunos sistemas operativos, que proporciona la capacidad de ejecutar respaldos de BOOST en un Data Domain sin utilizar ninguna aplicación de respaldo en particular y, al mismo tiempo, aprovechar algunas de las características que vienen con el uso de una aplicación de respaldo habilitada para BOOST, como Netbackup, Networker y Avamar.
Para obtener más detalles concretos sobre la instalación y la utilización, consulte Data Domain: Pasos y detalles de configuración acelerada para DataDomain BOOST FS Artículo de la base de conocimientos.
Sin embargo, esta base de conocimientos contiene algunos de los problemas típicos que se pueden encontrar al configurar y usar BOOSTFS, para que los clientes tengan una referencia rápida de esos errores y mensajes de error típicos, y la manera de resolverlos. Normalmente, estos errores serían "No se puede instalar Boostfs en el servidor Linux", "El montaje de Boostfs falla con un error" o "El respaldo o la restauración fallan con un error", por nombrar algunos.
Resolution
1. Falta una dependencia necesaria cuando se instala el software
de BOOST FSSi no se puede instalar el RPM del software BOOSTFS proporcionado en el sistema operativo Linux del cliente, primero determine cuáles son las dependencias de paquetes necesarias para el software BOOSTFS:
# rpm -qpR DDBoostFS-1.0.0.1-539441.rhel.x86_64.rpm fusible >= 2.8 fuse-libs >= 2.8 /bin/sh /bin/sh /bin/sh /bin/sh rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(Nombres de archivos comprimidos) <= 3.0.4-1
En el ejemplo anterior, el paquete solicita que se instalen los binarios y bibliotecas FUSE (sistema de archivos en el espacio USEr) (BOOSTFS se basa en FUSE de Linux), así como cualquier paquete que proporcione un shell (sh) y las bibliotecas RPM predeterminadas. Por lo tanto, este paquete BOOSTFS debería instalarse normalmente en el sistema Linux en el que se ejecutó "rpm".
2. No se puede montar /mnt/mountpoint/: error
inesperadoCuando intenta montar la unidad de almacenamiento remota de DD localmente en el cliente Linux a través de BOOSTFS, es posible que reciba el error anterior. Revise el archivo de registro de BOOSTFS en el cliente Linux. Por ejemplo, en el primer ejemplo siguiente, el archivo de caja de seguridad no contiene una entrada para el dd2500-abc.datadomain.com de host:
# less /opt/emc/boostfs/log/ddboostfs_0_0.log Jul 29 03:45:25 22795 3267069888 [E] bfs_lockbox_get_user_info: No se pudo encontrar la entrada de clave dd2500-abc.datadomain.com:LSU2 en el archivo de configuración /opt/emc/boostfs/lockbox/boostfs.lockbox. La entrada de Lockbox solicitada no se pudo encontrar. Jul 29 03:45:25 22795 3267069888 [E] bfs_conn_lookup: la búsqueda de conexión falló para el archivo /.boostfs_sysinfo del nodo 0. (0 conexiones) Jul 29 03:45:25 22795 3267069888 [I] bfs_node_lookup: no se pudo obtener una conexión para el archivo /.boostfs_sysinfo Jul 29 03:45:25 22795 3267069888 [E] bfs_initialize_mntopts: inicialización fallida
La solución en este caso sería agregar una entrada de caja de seguridad para la unidad de almacenamiento y el host de DD de destino que se montarán localmente. La sintaxis sería similar al siguiente ejemplo:
# /opt/emc/boostfs/bin/boostfs lockbox set -u sysadmin -d dd2500-abc.datadomain.com -s LSU2 Ingrese la contraseña de usuario de la unidad de almacenamiento: Vuelva a ingresar la contraseña de usuario de la unidad de almacenamiento para confirmar: Conjunto de entradas de caja de seguridad
Otro posible error que se puede ver en los registros locales del cliente de BOOSTFS es que el nombre de host de DD no se resuelve desde el cliente, por ejemplo:
# less /opt/emc/boostfs/log/ddboostfs_0_0.log Jul 29 04:05:50 22882 3322156992 [E] bfs_conn_open: falló la conexión (0 conexiones): 5037 Jul 29 04:05:50 22882 3322156992 [E] bfs_conn_lookup: la búsqueda de conexión falló para el archivo /.boostfs_sysinfo del nodo 0. (0 conexiones) Jul 29 04:05:50 22882 3322156992 [I] bfs_node_lookup: no se pudo obtener una conexión para el archivo /.boostfs_sysinfo Jul 29 04:05:50 22882 3322156992 [E] bfs_initialize_mntopts: inicialización fallida
La solución en este caso sería agregar un enlace estático a la asignación de IP al archivo /etc/host del cliente de Linux o configurar la asignación en el servidor DNS que se está utilizando.
3. El punto de montaje /mnt/mountpoint no está vacío.
BoostFS no se puede montar en un punto de montaje que no esté vacío. Intente realizar el montaje en un punto de montaje vacío.
El mensaje anterior significa que el punto de montaje especificado (/mnt/mountpoint) no se puede usar para mostrar la unidad de almacenamiento de DD remoto, ya que el punto de montaje no puede tener otro sistema de archivos montado anteriormente ni tener contenido. /mnt/mountpoint/ debe ser un directorio vacío y no utilizado en el cliente Linux. Si la ruta ya tiene un punto de montaje, debe especificar otro punto de montaje. Por ejemplo:
# montar /dev/mapper/vg00-lv_root on / escriba ext4 (rw) /dev/sda1 en /boot type ext4 (rw) boostfs en /mnt/mountpoint, escriba fuse.boostfs (rw,nosuid,nodev)
En este caso, la unidad de almacenamiento de DD remota ya está montada en /mnt/mountpoint/ y, por lo tanto, no se puede volver a montar en el mismo directorio.
4. El montaje de DDBoostfs se bloquea (puede tardar incluso más de 10 minutos en regresar)
Esto podría ocurrir cuando un firewall entre el cliente Linux y el dispositivo DD de destino está descartando tráfico a los puertos TCP 111 y 2049. Asegúrese de que el cliente Linux pueda comunicarse con DD a los puertos TCP 111 y 2049 y, a continuación, vuelva a intentarlo, por ejemplo:
# /opt/emc/boostfs//bin/boostfs mount -d dd2500.domain.com -s LSU2 /mnt/mountpoint/
Este es un ejemplo de lo que vería en los registros de BOOSTFS del cliente Linux en tal caso:
# less /opt/emc/boostfs/log/ddboostfs_0_0.log Jul 27 06:34:53 32762 3724339136 [E] bfs_conn_open: falló la conexión (0 conexiones): 5037 Jul 27 06:34:53 32762 3724339136 [E] bfs_conn_lookup: la búsqueda de conexión falló para el archivo /.boostfs_sysinfo del nodo 0. (0 conexiones) Jul 27 06:34:53 32762 3724339136 [I] bfs_node_lookup: no se pudo obtener una conexión para el archivo /.boostfs_sysinfo Jul 27 06:34:53 32762 3724339136 [E] bfs_initialize_mntopts: inicialización fallida
5. No se permite la operación cuando se intenta acceder o enumerar contenidos en el punto de montaje
# ls -l /mnt/punto de montaje/ ls: directorio de lectura .: No se permite la operación Total 0
El problema podría ser que no haya conectividad TCP a los puertos DD remotos 111 y 2049 o que la autenticación de la caja de seguridad haya caducado de alguna manera. Asegúrese de que el cliente Linux aún pueda acceder a DD en los puertos especificados e intente configurar de nuevo la caja de seguridad para el DD remoto, la unidad de almacenamiento y el usuario de BOOST.
6. No existe acceso insuficiente a o no existe una unidad de almacenamiento mediante la autenticación Kerberos.
# boostfs mount -s LSU3 -d dd2500.domain.com /mnt/mountpoint/ Acceso insuficiente a LSU3 o unidad de almacenamiento no existe
Cuando se utiliza la autenticación Kerberos para la caja de seguridad, el motivo más probable del error sería que el vale de autenticación Kerberos haya caducado. Compruebe el ticket mencionado desde Linux, como se muestra a continuación:
# /opt/emc/boostfs/bin/boostfs kerberos query -s LSU3 -u username Director de cliente: username@DOMAIN.COM Inicio válido: Mar Aug 23 11:02:49 2016 Expira: Mar Aug 23 21:01:07 2016 Renovar hasta: Mar Aug 30 11:02:49 2016 Principal de servicio: krbtgt/DOMAIN. COM@DOMAIN.COM
En la DDR, verifique que el usuario de BOOST asignado a la unidad de almacenamiento coincida con el usuario en el cliente Linux cuando configure la caja de seguridad y monte BOOSTFS (el nombre de usuario de AD y el nombre de usuario de la unidad de almacenamiento deben ser exactamente los mismos):
# ddboost storage-unit show Nombre Estado previo a la compresión (GiB) Informe de usuario Unidad de grupo de usuarios física Tamaño (MiB) --------------- -------------- ------ -------- --------------- ----------- Nombre de usuario de LSU3 0.0 RW - - --------------- -------------- ------ -------- --------------- -----------
También asegúrese de confirmar que la fecha y hora en DD, el cliente Linux y el servidor Kerberos (AD) no tengan más de cinco minutos de diferencia, o pueden ocurrir problemas con vales vencidos debido a una hora incoherente.
A continuación, se muestra un ejemplo de lo que veríamos en los registros de DD si la diferencia de tiempo fuera superior a 5 minutos:
# log watch debug/ddfs.info 23/08 18:52:09.654 (TID 0x7f738141fb00): nfs3 aceptado 3000004b6 552 de 10.64.229.125:55042 23/08 18:52:09.660 (tid 0x7f738140c890): [dd_rpc2_nfs x3000004b6] dd_rpc_gss_print_error:117 - Evento gss_error, gss_accept_sec_context falló: maj=0xd0000, min=0x96c73a25 23/08 18:52:09.660 (tid 0x7f738140c890): [dd_rpc2_nfs x3000004b6] dd_rpc_gss_print_error:126: gss_error de eventos, falla de GSS no especificada. El código secundario puede proporcionar más información 23/08 18:52:09.660 (tid 0x7f738140c890): [dd_rpc2_nfs x3000004b6] dd_rpc_gss_print_error:141 - evento gss_error, sesgo del reloj demasiado grande 23/08 18:52:09.660 (tid 0x7f738140c890): [dd_rpc2_nfs x3000004b6] dd_rpc_gss_accept:217 - Evento gss_accept_failed, maj=851968, min2529638949 23/08 18:52:09.660 (TID 0x7f73814233f0): NFS3 destruyó TCP 3000004B6
Y estos son para los registros del host de Linux de BOOSTFS:
# less /opt/emc/boostfs/log/ddboostfs_0_0.log Aug 23 18:04:39 1044 2019465280 [E] bfs_conn_open: falló la conexión (0 conexiones): 5075 Aug 23 18:04:39 1044 2019465280 [E] bfs_conn_lookup: la búsqueda de conexión falló para el archivo /.boostfs_sysinfo del nodo 0. (0 conexiones) Aug 23 18:04:39 1044 2019465280 [I] bfs_node_lookup: no se pudo obtener una conexión para el archivo /.boostfs_sysinfo Aug 23 18:04:39 1044 2019465280 [E] bfs_initialize_mntopts: inicialización fallida
7. El montaje de Boostfs con autenticación de Kerberos falla y se muestra el siguiente error: "No se puede acceder a la caja de seguridad o no se puede encontrar la entrada de la caja de seguridad"
# /opt/emc/boostfs/bin/boostfs mount -s LSU3 -d dd2500.domain.com /mnt/mountpoint/ No se puede acceder a la caja de seguridad o no se puede encontrar la entrada de la caja de seguridad
Si tiene la intención de utilizar las opciones de configuración de BOOSTFS en "/opt/emc/boostfs/etc/boostfs.conf", verifique el ajuste "[global]" en el archivo y asegúrese de que no esté comentado (para que funcione cualquiera de las opciones globales, la palabra clave "[global]" debe estar sin comentarios). Esta palabra clave aparece como comentario de forma predeterminada.
Ejemplo de contenido del archivo de configuración "/opt/emc/boostfs/etc/boostfs.conf" de BOOSTFS:
# No se permiten comentarios después del par de valores de opción. # ############################################################################# [Global] # Nombre de host o dirección IP de Data Domain # data-domain-system=dd2500.domain.com
Ejemplo de salida que vería en los registros de BOOSTFS del cliente Linux:
# less /opt/emc/boostfs/log/ddboostfs_0_0.log 24 de agosto 08:23:35 27227 3565582272 [E] bfs_lockbox_get_user_info: No se pudo encontrar la entrada de clave dd2500-rtp2.techsupp.local:LSU3 en el archivo de configuración /opt/emc/boostfs/lockbox/boostfs.lockbox. La entrada de Lockbox solicitada no se pudo encontrar. Aug 24 08:23:35 27227 3565582272 [E] bfs_conn_lookup: la búsqueda de conexión falló para el archivo /.boostfs_sysinfo del nodo 0. (0 conexiones) Aug 24 08:23:35 27227 3565582272 [I] bfs_node_lookup: no se pudo obtener una conexión para el archivo /.boostfs_sysinfo Aug 24 08:23:35 27227 3565582272 [E] bfs_initialize_mntopts: inicialización fallida
Además, el error puede ser el resultado del uso de un nombre de host, un nombre de unidad de almacenamiento o un nombre de usuario de BOOST diferentes en el comando "mount" del cliente de Linux, en comparación con los utilizados para configurar la caja de seguridad o los que corresponden al DD de destino. Asegúrese de que todos los nombres coincidan en DD, la caja de seguridad de BOOSTFS y el comando "mount".
8. El intento de establecer la información de identificación de "boostfs" falla con el siguiente error :
bfs_krb5_err_handler: Error de Kerberos: -1765328360 [ERROR_MESSAGE= Error al obtener las credenciales iniciales.]
No se pueden configurar las credenciales de
Kerberos 1. Verifique que las credenciales de usuario de Active Directory sean correctas iniciando sesión en la DC con las credenciales de usuario de
Active Directory 2. Verifique que la hora en el cliente Linux y el servidor Kerberos no tengan más de 5 minutos de diferencia. La autenticación Kerberos requiere que los horarios del reloj no tengan más de 5 minutos de diferencia.
9. Cuando se monta BOOSTFS en el cliente Linux, se termina con el error "fusermount: mount failed: No se permite la operación".
Esto puede deberse a varias razones. "fusermount" es el comando subyacente de Linux que, en última instancia, utiliza FUSE para montar la unidad de almacenamiento de DD BOOST localmente en el espacio de nombres del cliente de Linux. Para ello, se requieren privilegios especiales. Es por eso que "fusermount" es un binario SUID en el cliente Linux:
# ls -l /usr/bin/fusermount -rwsr-xr-x. 1 raíz raíz 38680 11 de mayo de 2019 /usr/bin/fusermount
Ser un binario SUID significa que, independientemente de lo que el usuario esté ejecutando para intentar montar la unidad de almacenamiento, "fusermount" se ejecutará con privilegios de "root". Si "fusermount" no es SUID para root, solo el usuario root del cliente Linux puede montar la unidad de almacenamiento BOOST remota. Es posible que esto no sea un problema si se configura el montaje en /etc/fstab, pero sí lo sería cuando el montaje lo debe realizar un usuario no raíz.
Artículo 10. Los montajes de BOOSTFS son correctos, pero los intentos por acceder al contenido de la unidad de almacenamiento en el punto de montaje fallan con errores de permisos
.Cuando se monta la unidad de almacenamiento manualmente mediante el comando "boostfs" de Data Domain o /etc/fstab (o incluso "mount.fuse" desde la CLI), la implementación de FUSE subyacente del valor predeterminado es permitir solo el acceso a los archivos al ID de usuario del cliente Linux que montó BOOSTFS. Por lo tanto, si el montaje se realizó como raíz, solo el usuario raíz puede acceder a los archivos. Si el montaje se realizó como usuario "postgres" (para respaldar una base de datos PostgreSQL), solo este usuario tendría permiso para acceder a los archivos.
Si, por diferentes motivos, se necesita que otros usuarios puedan acceder a los archivos de la unidad de almacenamiento montada desde la nube de Linux, es posible que sea necesario ajustar /etc/fuse.conf. Vea más detalles aquí:
http://manpages.ubuntu.com/manpages/bionic/en/man8/mount.fuse.8.html
Deberá configurar la siguiente opción en /etc/fuse.conf:
user_allow_other
Permita que los usuarios no raíz especifiquen las opciones de montaje de allow_other o allow_root (consulte
más adelante).
Y, a continuación, utilice el siguiente cuando monte la unidad de almacenamiento BOOST, desde la línea de comandos:
allow_other
Esta opción reemplaza la medida de seguridad que restringe el acceso a los archivos al usuario
Montaje del sistema de archivos. Por lo tanto, todos los usuarios (incluido el raíz) pueden acceder a los archivos. Éste
De manera predeterminada, solo se permite rootear, pero esta restricción se puede eliminar con
La opción de configuración descrita anteriormente (user_allow_other).
Additional Information
1. ¿Cuál es el número máximo de secciones de punto de montaje que se pueden definir en el archivo de configuración de boostfs?
No hay límite para la cantidad de montajes en la sección de punto de montaje del archivo boostfs.conf.
# Las secciones del punto de montaje están separadas por etiquetas [mountpoint] # # [/ruta/a/montar] # [/mnt/bofs] # Nombre de host o dirección IP de Data Domain # data-domain-system=dd2500-1.yourdomain.com # Unidad de almacenamiento # unidad-de-almacenamiento =nombre-su # nombre de usuario de la unidad de almacenamiento # nombre-de-usuario-unidad-de-almacenamiento=sysadmin # Subdirectorio dentro de la unidad de almacenamiento en el que se montará # nombre-de-directorio=ruta/a/subdir
2. NetWorker es compatible con BOOSTFS de manera predeterminada y puede manejar montajes sobre la marcha para realizar ciertas tareas y respaldos
Incluso si NetWorker es una aplicación de respaldo habilitada para BOOST, también es compatible con BOOSTFS en los sistemas cliente Linux donde está instalada. Un ejemplo de respaldo de NW tomado de la línea de comandos del cliente de Linux, una vez que se ha configurado la caja de seguridad de BOOSTFS, sería el siguiente (respaldo de PostgreSQL):
# nsroappbackup -z /nsr/apps/config/backup_postgresql.cfg 174908:(pid 16487):Guardando los datos de copia de seguridad en el pool 'DB'. 175019:(pid 16487):Se recibió la información de enlace de administración de medios en el host 'dd.example.com'. 174910:(pid 16487):conectado al proceso nsrmmd en el host 'dd.example.com'. + /usr/pgsql-11/bin/pg_dump --file=/nsr/apps/tmp/e3106c82_294324_16487/dump.sql --format=plain Se continuó procesando con el valor devuelto 0. + /bin/cp /data/postgresql.conf /nsr/apps/tmp/e3106c82_294324_16487/ Se continuó procesando con el valor devuelto 0. Los archivos en el saveset 'PostgreSQL_postgres_backuppostgre_full' a la hora '01/04/20 15:40:36' son: Tamaño: Name: 2645 dump.sql 24000 postgresql.conf 2 Archivo(s) 26645 bytes El comando de respaldo "/nsr/apps/config/scripts/backup-postgre-dbon1-full.sh" se completó correctamente. El respaldo se completó correctamente.
Una vez que el trabajo de respaldo está configurado, también se puede iniciar desde la GUI de NW y el progreso se monitorea allí.messages.engineering mostrará entradas de registro como la que se muestra a continuación cuando se realiza el montaje emitido por NW:
Apr 1 15:20:49 dd.example.com ddfs[17040]: AVISO: ddboost-client.example.com-49808<>: Boostfs: Apr 1 15:22:52.395 16275 704915520 [I] La versión del plug-in de DDBoost es: [7.0.0.0.633508] Apr 1 15:20:49 dd.example.com ddfs[17040]: AVISO: ddboost-client.example.com-49808<>: Boostfs: Apr 1 15:22:52.395 16275 704915520 [I] Información de la versión de BoostFS: [BOOSTFS: 7.0.0.0-633922 FUSE: 2.9.7] Apr 1 15:20:49 dd.example.com ddfs[17040]: AVISO: ddboost-client.example.com-49808<>: Boostfs: Abr 1 15:22:52.395 16275 704915520 [I] bfs_lib_init: Montaje dd.example.com:LSU_NAME en /mnt/mountpoint