So lösen Sie das Problem, dass der Open Xchange-Befehl `/opt/open-xchange/sbin/registerserver` den Fehler `Suche fehlgeschlagen. Dienst "OXUtil_V2" ist nicht verfügbar.` ausgibt

So lösen Sie das Problem, dass der Open Xchange-Befehl `/opt/open-xchange/sbin/registerserver` den Fehler `Suche fehlgeschlagen. Dienst "OXUtil_V2" ist nicht verfügbar.` ausgibt

Ich bin neu bei Open Xchange und versuche, es auf einer sauberen Debian 10.7 VM zu installieren, indem ich denoffizielle Installationsanweisungen.

Ich habe MariaDB auf demselben Server installiert, dem Root-Benutzer ein Passwort ( root_db_pass#Beispiel) gegeben, eine neue Datenbank ( open_xchange) und einen Benutzer ( open_xchange_user) mit Passwort ( ox_db_pass#Beispiel) erstellt.

Habe alle Schritte der Installationsanleitung befolgt und alles funktioniert einwandfrei, bis ich den lokalen Server in der Open-Xchange configdb-Datenbank registrieren muss ( /opt/open-xchange/sbin/registerserver -n oxserver -A oxadminmaster -P admin_master_password), dann erhalte ich die Fehlermeldung

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)


Ich habe dieses Problem gegoogelt, aber dazu fast nichts gefunden. Ich habe die Passwörter dreimal überprüft, um sicherzugehen, dass ich keinen Tippfehler gemacht habe! Wie kann ich das beheben?


Einige zusätzliche Informationen, die möglicherweise erforderlich sind, um mir zu helfen

verwendeter initconfigdbBefehl

/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 

verwendeter oxinstallerBefehl

/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

Wenn weitere Daten benötigt werden, lassen Sie es mich wissen und ich werde meine Frage aktualisieren …


AKTUALISIERUNG 1

Ich habe gerade festgestellt, dass auch etwas protokolliert wird, das sich von der Meldung unterscheidet, die ich in der Konsole erhalte. Die folgenden Protokolleinträge werden angezeigt, nachdem ich die Meldung ausgeführt habe, service open-xchange restartdie nach der Ausführung erforderlich ist/opt/open-xchange/sbin/oxinstaller --no-license --servername=oxserver

Protokolle:

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)
...
...

Beachten Sie diese Zeile: Caused by: java.sql.SQLException: Access denied for user 'openexchange'@'localhost' (using password: YES). Dies ist interessant, da dies openexchange@localhostnicht der Benutzer ist, den ich während des initconfigdbBefehls angebe, und auch nicht mit dem Datenbankbenutzer übereinstimmt, den ich in MariaDB erstellt habe.

Ich habe versucht, einen solchen Benutzer mit demselben Passwort wie den von mir erstellten Benutzer zu erstellen und alles erneut auszuführen, aber leider tritt dabei derselbe Fehler auf. Ich habe keine Ahnung, woher Open Xchange diesen Benutzer hat...???

Antwort1

Ich habe festgestellt, dass bei dem in Update 1 beschriebenen Fehler der Standardbenutzername verwendet wird. Dies liegt daran, dass der Parameter --configdb-username=open_xchange_userim Befehl fehlt oxinstaller.

Dies brachte mich auch zu dem Schluss, dass dies --configdb-database=open_xchangewahrscheinlich auch erforderlich ist.

Ich habe den Parameter auch --configdb-writehost=localhostzum oxinstaller-Befehl hinzugefügt, da dies ebenfalls erforderlich zu sein scheint, wenn Sie nur einen Datenbankserver anstelle eines Clusters verwenden. (siehehttps://oxpedia.org/wiki/index.php?title=OXLoadBalancingClustering_Database#Configure_OX_to_use_with_a_standalone_database)

Mein aktualisierter oxinstallerBefehl sieht also folgendermaßen aus:

/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

Danach funktioniert alles einwandfrei.

verwandte Informationen