Cómo solucionar que el comando Open Xchange `/opt/open-xchange/sbin/registerserver` muestre `Error en la búsqueda. El servicio "OXUtil_V2" no está disponible.` error

Cómo solucionar que el comando Open Xchange `/opt/open-xchange/sbin/registerserver` muestre `Error en la búsqueda. El servicio "OXUtil_V2" no está disponible.` error

Soy nuevo en Open Xchange y estoy intentando instalarlo en una máquina virtual Debian 10.7 limpia siguiendo las instruccionesinstrucciones de instalación oficiales.

Instalé MariaDB en el mismo servidor, le di una contraseña al usuario root ( root_db_pass#ejemplo), creé una nueva base de datos ( open_xchange) y un usuario ( open_xchange_user) con contraseña ( ox_db_pass#ejemplo).

Seguí todos los pasos de las instrucciones de instalación, que funcionan bien hasta que necesito registrar el servidor local en la base de datos configdb de Open-Xchange ( /opt/open-xchange/sbin/registerserver -n oxserver -A oxadminmaster -P admin_master_password), luego recibo el error.

root@axx-oxch-srv01:~# /opt/open-xchange/sbin/registerserver -n oxserver -A oxadminmaster -P admin_master_password

server could not be registered:
Server response:
 Look-up failed. Service "OXUtil_V2" is not available.
        at sun.rmi.registry.RegistryImpl.lookup(RegistryImpl.java:227)
        at sun.rmi.registry.RegistryImpl_Skel.dispatch(RegistryImpl_Skel.java:133)
        at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:469)
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:301)
        at sun.rmi.transport.Transport$1.run(Transport.java:200)
        at sun.rmi.transport.Transport$1.run(Transport.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
        at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:303)
        at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:279)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:380)
        at sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:123)
        at java.rmi.Naming.lookup(Naming.java:101)
        at com.openexchange.admin.console.util.server.RegisterServer.<init>(RegisterServer.java:77)
        at com.openexchange.admin.console.util.server.RegisterServer.main(RegisterServer.java:91)


Busqué en Google este problema pero no hay casi nada que encontrar al respecto. ¡Revisé las contraseñas 3 veces para asegurarme de no haber cometido un error tipográfico! Cómo puedo arreglar esto ?


Alguna información adicional que puede ser necesaria para ayudarme.

initconfigdbcomando usado

/opt/open-xchange/sbin/initconfigdb --configdb-dbname open_xchange --configdb-user open_xchange_user --configdb-pass ox_db_pass --mysql-root-passwd root_db_pass 

oxinstallercomando usado

/opt/open-xchange/sbin/oxinstaller --no-license --servername=oxserver --configdb-pass=ox_db_pass --master-pass=admin_master_password --network-listener-host=localhost --servermemory 1024

Si se necesitan más datos, hágamelo saber y actualizaré mi pregunta...


ACTUALIZACIÓN 1

Descubrí que también se registró algo que difiere del mensaje que recibo en la consola. Las siguientes entradas de registro aparecen después de i, lo service open-xchange restartcual se requiere después de ejecutar/opt/open-xchange/sbin/oxinstaller --no-license --servername=oxserver

Registros:

2021-01-07T01:56:55,546-0600 INFO  [pool-8-thread-1] com.openexchange.startup.impl.osgi.DBMigrationMonitorTracker$1.run(DBMigrationMonitorTracker$1.java:132)


        Open-Xchange Server v7.10.4-Rev14 initialized. The server should be up and running...

2021-01-07T01:57:01,425-0600 INFO  [OXTimer-0000006] com.openexchange.push.impl.balancing.reschedulerpolicy.PermanentListenerRescheduler.cancelTimerTask(PermanentListenerRescheduler.java:207)
Canceled timer task for rescheduling checks
2021-01-07T01:57:01,439-0600 WARN  [OXTimer-0000006] com.openexchange.database.internal.ReplicationMonitor.checkActualAndFallback(ReplicationMonitor.java:181)
DBP-0001 Categories=SERVICE_DOWN Message='Cannot get connection to config DB.' exceptionID=808265395-5
com.openexchange.exception.OXException: DBP-0001 Categories=SERVICE_DOWN Message='Cannot get connection to config DB.' exceptionID=808265395-5
        at com.openexchange.database.DBPoolingExceptionCodes.create(DBPoolingExceptionCodes.java:260)
        at com.openexchange.database.internal.ReplicationMonitor.createException(ReplicationMonitor.java:245)
        at com.openexchange.database.internal.ReplicationMonitor.checkActualAndFallback(ReplicationMonitor.java:174)
        at com.openexchange.database.internal.ReplicationMonitor.checkActualAndFallback(ReplicationMonitor.java:157)
        at com.openexchange.database.internal.ConfigDatabaseServiceImpl.get(ConfigDatabaseServiceImpl.java:138)
        at com.openexchange.database.internal.ConfigDatabaseServiceImpl.get(ConfigDatabaseServiceImpl.java:133)
        at com.openexchange.database.internal.ConfigDatabaseServiceImpl.getReadOnly(ConfigDatabaseServiceImpl.java:173)
        at com.openexchange.database.internal.DatabaseServiceImpl.getReadOnly(DatabaseServiceImpl.java:152)
        at com.openexchange.push.impl.PushDbUtils.getContextsWithPushRegistrations(PushDbUtils.java:296)
        at com.openexchange.push.impl.PushDbUtils.getPushRegistrations(PushDbUtils.java:256)
        at com.openexchange.push.impl.PushManagerRegistry.getUsersWithPermanentListeners(PushManagerRegistry.java:834)
        at com.openexchange.push.impl.balancing.reschedulerpolicy.PermanentListenerRescheduler.reschedule(PermanentListenerRescheduler.java:364)
        at com.openexchange.push.impl.balancing.reschedulerpolicy.PermanentListenerRescheduler.doReschedule(PermanentListenerRescheduler.java:341)
        at com.openexchange.push.impl.balancing.reschedulerpolicy.PermanentListenerRescheduler.checkReschedule(PermanentListenerRescheduler.java:327)
        at com.openexchange.push.impl.balancing.reschedulerpolicy.PermanentListenerRescheduler$1.run(PermanentListenerRescheduler.java:284)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$ScheduledFutureTask.runPeriodic(CustomThreadPoolExecutor.java:1016)
        at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$ScheduledFutureTask.run(CustomThreadPoolExecutor.java:1041)
        at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$Worker.runTask(CustomThreadPoolExecutor.java:834)
        at com.openexchange.threadpool.internal.CustomThreadPoolExecutor$Worker.run(CustomThreadPoolExecutor.java:861)
        at java.lang.Thread.run(Thread.java:748)
Caused by: com.openexchange.pooling.PoolingException: Cannot create pooled object.
        at com.openexchange.pooling.ReentrantLockPool.get(ReentrantLockPool.java:320)
        at com.openexchange.database.internal.AbstractMetricAwarePool.get(AbstractMetricAwarePool.java:149)
        at com.openexchange.database.internal.AbstractMetricAwarePool.get(AbstractMetricAwarePool.java:72)
        at com.openexchange.database.internal.TimeoutFetchAndSchema.get(TimeoutFetchAndSchema.java:93)
        at com.openexchange.database.internal.ReplicationMonitor.checkActualAndFallback(ReplicationMonitor.java:167)
        ... 19 common frames omitted
===>>> Caused by: java.sql.SQLException: Access denied for user 'openexchange'@'localhost' (using password: YES) <<<===
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
...
...

Tenga en cuenta esta línea: Caused by: java.sql.SQLException: Access denied for user 'openexchange'@'localhost' (using password: YES). Esto es interesante ya que openexchange@localhostno es el usuario que proporcioné durante el initconfigdbcomando y tampoco se corresponde con el usuario de la base de datos que creé en MariaDB.

Intenté crear dicho usuario con la misma contraseña que el usuario que creé y ejecuté todo nuevamente, pero desafortunadamente esto resulta en el mismo error. ¿No tengo idea de dónde obtiene Open Xchange este usuario...???

Respuesta1

Descubrí que el nombre de usuario predeterminado se usa en el error, descrito en la actualización 1. Esto se debe a que --configdb-username=open_xchange_userfalta el parámetro en el oxinstallercomando.

Esto también me hizo pensar que --configdb-database=open_xchangeprobablemente también sea necesario.

También agregué el parámetro --configdb-writehost=localhostal comando oxinstaller ya que parece ser necesario también si solo usa 1 servidor de base de datos en lugar de un clúster. (verhttps://oxpedia.org/wiki/index.php?title=OXLoadBalancingClustering_Database#Configure_OX_to_use_with_a_standalone_database)

Entonces mi oxinstallercomando actualizado se ve así:

/opt/open-xchange/sbin/oxinstaller --no-license --servername=oxserver --configdb-server=open_xchange --configdb-user=open_xchange_user --configdb-pass=ox_db_pass --configdb-writehost=localhost --master-pass=admin_master_password --network-listener-host=localhost --servermemory 1024

Después de esto todo funciona bien.

información relacionada