VMWare: usbarbitrator

Los host VMWare ESXi disponen del servicio usbarbitrator.

Por defecto este servicio está configurado para que se inicie de forma automática al iniciar el host VMWare ESXi.

El servicio usbarbitrator administra las peticiones a dispositivos USB del host ESXi.

usbarbitrator detecta los dispositivos USB del host ESXi y envía el tráfico a la VM que tenga configurado el puerto virtual USB con pass-through, también evita que varias VMs puedan acceder al mismo dispositivo USB.

Si tenemos problemas con esta funcionalidad, podemos administrar este servicio utilizando SSH o consola:

- Verificar que el servicio usbarbitrator esté iniciado:

/etc/init.d/usbarbitrator status
usbarbitrator is running

 
- Reiniciar el servicio usbarbitrator:

/etc/init.d/usbarbitrator restart
watchdog-usbarbitrator: Terminating watchdog process with PID 33669
usbarbitrator stopped
usbarbitrator started

 
- Verificar que el servicio usbarbitrator esté configurado con inicio automático:

chkconfig usbarbitrator --list
usbarbitrator  on

- Configurar el inicio automático del servicio usbarbitrator:

chkconfig usbarbitrator on

- Revisar los logs referentes a USB.

El comando tail, muestra por defecto las últimas diez lineas del fichero de texto especificado.

tail /var/log/usb.log
 
2015-07-19T21:32:15Z usbarb[2693829]: I120: DICT      authd.proxy.vpxa-nfc = vmware-vpxa:vpxa-nfc
2015-07-19T21:32:15Z usbarb[2693829]: I120: DICT            authd.fullpath = /sbin/authd
2015-07-19T21:32:15Z usbarb[2693829]: I120: DICT --- SITE DEFAULTS /usr/lib/vmware/config
2015-07-19T21:32:15Z usbarb[2693829]: W110: USBArb: Error in rules file at line 1:0, '[' or '{' expected near end of file.
2015-07-19T21:32:15Z usbarb[2693829]: I120: VMware USB Arbitration Service Version 11.1.6
2015-07-19T21:32:15Z usbarb[2693829]: I120: USBArb: Attempting to connect to existing arbitrator on /var/run/vmware/usbarbitrator-socket.
2015-07-19T21:32:15Z usbarb[2693829]: I120: SOCKET creating new socket, connecting to /var/run/vmware/usbarbitrator-socket
2015-07-19T21:32:15Z usbarb[2693829]: W110: SOCKET connect failed, error 2: No such file or directory
2015-07-19T21:32:15Z usbarb[2693829]: I120: USBArb: Failed to connect to the existing arbitrator.
2015-07-19T21:32:18Z usbarb[2693829]: I120: USB: Unable to open "/vmfs/devices/char/vmkdriver/usbdevices" (No such file or directory).

- Revisar los logs referentes al servicio usbarbitrator:

cat /var/log/usb.log |grep USBArb
 
2015-06-26T06:24:59Z usbarb[34063]: W110: USBArb: Error in rules file at line 1:0, '[' or '{' expected near end of file.
2015-06-26T06:24:59Z usbarb[34063]: I120: USBArb: Attempting to connect to existing arbitrator on /var/run/vmware/usbarbitrator-socket.
2015-06-26T06:24:59Z usbarb[34063]: I120: USBArb: Failed to connect to the existing arbitrator.
2015-06-26T06:25:20Z usbarb[34063]: I120: USBArb: UsbArbPipeConnected: Connected to client, socket:13
2015-06-26T06:25:20Z usbarb[34063]: I120: USBArb: Client 34306 connected (version: 6)
2015-06-26T06:32:15Z usbarb[34063]: I120: USBArb: Closing client, error:2
2015-06-26T06:46:55Z usbarb[33823]: W110: USBArb: Error in rules file at line 1:0, '[' or '{' expected near end of file.
2015-06-26T06:46:55Z usbarb[33823]: I120: USBArb: Attempting to connect to existing arbitrator on /var/run/vmware/usbarbitrator-socket.
2015-06-26T06:46:55Z usbarb[33823]: I120: USBArb: Failed to connect to the existing arbitrator.

- Si reiniciamos todos los servicios del host ESXi, utilizando services.sh:


El servicio usbarbitrator, también se reiniciará.

- Para un diagnostico avanzado del servicio, podemos analizar los parámetros del comando:

vmware-usbarbitrator -h
 

vmware-usbarbitrator: invalid option -- 'h'
VMware USB Arbitration Service Version 11.1.6
Usage: vmware-usbarbitrator options
Options:
  -f, --foreground    run in foreground
                      sends logs to stderr as well as normal log target
  -t                  same as --foreground
  -v                  display version and exit
  -k, --kill          stop service (implies -f)
      --usage         display usage message and exit
      --info          display info log messages
      --verbose       display verbose log messages
      --trivia        display trivia log messages
      --debug {0,10}  display debug log messages
      --max-clients   specify the max number of clients to allow

Por ejemplo, con el parámetro -f, lanzamos el servicio en foreground y vemos en directo que sucede:

vmware-usbarbitrator -f

VTHREAD initialize main thread 2 "usbArb" pid 2728889
PREF Optional preferences file not found at /usr/lib/vmware/config. Using default values.
PREF Optional preferences file not found at //.vmware/config. Using default values.
PREF Disabling user preferences because disableUserPreferences is set.
PREF Failed to load user preferences.
DICT --- USER PREFERENCES
DICT --- USER DEFAULTS //.vmware/config
DICT --- HOST DEFAULTS /etc/vmware/config
DICT                    libdir = /usr/lib/vmware
DICT           authd.proxy.nfc = vmware-hostd:ha-nfc
DICT        authd.proxy.nfcssl = vmware-hostd:ha-nfcssl
DICT   authd.proxy.vpxa-nfcssl = vmware-vpxa:vpxa-nfcssl
DICT      authd.proxy.vpxa-nfc = vmware-vpxa:vpxa-nfc
DICT            authd.fullpath = /sbin/authd
DICT --- SITE DEFAULTS /usr/lib/vmware/config
VMware USB Arbitration Service Version 11.1.6
USBArb: Attempting to connect to existing arbitrator on /var/run/vmware/usbarbitrator-socket.
SOCKET creating new socket, connecting to /var/run/vmware/usbarbitrator-socket
USBArb: Connected to the existing arbitrator.
USBArb: An instance of the arbitrator is already running.
USBArb: Exiting with error:1

---
Por otro lado, sobre VMWare Workstation:

También encontramos el servicio usbarbitrator, con la misma funcionalidad.

Propiedades del servicio desde GUI (services.msc):

VMWare usbarbitrator

Propiedades del servicio desde CMD:

sc queryex VMUSBArbService

NOMBRE_SERVICIO: VMUSBArbService
        TIPO               : 10  WIN32_OWN_PROCESS
        ESTADO             : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        CÓD_SALIDA_WIN32   : 0  (0x0)
        CÓD_SALIDA_SERVICIO: 0  (0x0)
        PUNTO_COMPROB.     : 0x0
        INDICACIÓN_INICIO  : 0x0
        PID                : 2536
        MARCAS         :

Proceso en el administrador de tareas (taskmgr.exe):

VMWare: usbarbitrator


No hay comentarios:

Publicar un comentario