Seite 1 von 1

RPC Error "getDepotSelectionAlgorithm" bei Dynamischen Depot

Verfasst: 10 Jan 2025, 11:24
von Dirk Uebe
Hallo zusammen,

wir verwenden bei unserem Opsi Server 4.3 die dynamische Depotzuweisung via Netzwerkadressen.

Jedoch scheint es hier einen Fehler bei den RPC Berechtigungen zu geben. Im clientconnect-Log steht folgendes:

Code: Alles auswählen

(13526)   [6] [2025-01-10 11:20:43.364] [event processing on_demand{user_logged_in}] Using the following network config for depot selection algorithm: iface={33A34326-4CCA-41CE-B4A2-F4EFB4A14186} addr=10.16.49.113/255.255.255.0 gw={2: ('10.16.49.1', '{33A34326-4CCA-41CE-B4A2-F4EFB4A14186}')}   (Config.py:816)
(13527)   [6] [2025-01-10 11:20:43.365] [event processing on_demand{user_logged_in}] Passing client configuration to depot selection algorithm: {'clientId': 'gba-nb01.ggsd-pn.local', 'opsiHostKey': '***secret***', 'ipAddress': '10.16.49.113', 'netmask': '255.255.255.0', 'defaultGateway': '10.16.49.1'}   (Config.py:826)
(13528)   [6] [2025-01-10 11:20:43.366] [event processing on_demand{user_logged_in}] JSONRPC request to https://opsiserver.ggsd-pn.local:4447: id='b43b0d23-e20b-402d-9544-c6bafdefcc66', method=getDepotSelectionAlgorithm, Content-Type=application/msgpack, Content-Encoding=lz4, timeout=300.0   (opsiservice.py:1268)
(13529)   [6] [2025-01-10 11:20:43.417] [event processing on_demand{user_logged_in}] Got response status=200, id='b43b0d23-e20b-402d-9544-c6bafdefcc66', method=getDepotSelectionAlgorithm, Content-Type=application/msgpack, Content-Encoding=, duration=0.050s   (opsiservice.py:1291)
(13530)   [3] [2025-01-10 11:20:43.419] [event processing on_demand{user_logged_in}] Failed to select depot: Opsi rpc error: Opsi service permission error: No permission for method 'getDepotSelectionAlgorithm'   (Config.py:839)
(13531)   Traceback (most recent call last):
(13532)     File "opsiclientd\Config.py", line 828, in getDepot
(13533)     File "<string>", line 1, in getDepotSelectionAlgorithm
(13534)     File "opsicommon\client\opsiservice.py", line 1336, in jsonrpc
(13535)   opsicommon.exceptions.OpsiRpcError: Opsi rpc error: Opsi service permission error: No permission for method 'getDepotSelectionAlgorithm'
(13536)   [5] [2025-01-10 11:20:43.422] [event processing on_demand{user_logged_in}] Selected depot for mode 'mount' is '<OpsiConfigserver(id='opsiserver.ggsd-pn.local', isMasterDepot=True)>', protocol 'cifs'   (Config.py:875)
Die Depotserver sind aber erreichbar und funktionieren soweit ich das sehen kann.
Hat jemand eine Idee für einen Angriffspunkt, wie ich das lösen kann?

Vielen Dank schonmal!

Re: RPC Error "getDepotSelectionAlgorithm" bei Dynamischen Depot

Verfasst: 13 Jan 2025, 08:43
von j.schneider
Hallo,

mit opsi 4.3 hat sich der Mechanismus geändert.
Scheinbar wird noch eine Erweiterungs-Datei in /etc/opsi/backendManager/extend.d verwendet.
Diese wir nur noch benötigt wenn man eigene Algorithmen für die Depotauswahl schreiben möchte.
Um die Standard-Algorithmen zu verwenden muss die Erweiterungs-Datei gelöscht werden.
Danach kann der Algorithmus einfach über 'clientconfig.depot.selection_mode' festgelegt werden:

https://docs.opsi.org/opsi-docs-de/4.3/ ... figuration

Grüße
Jan Schneider

Re: RPC Error "getDepotSelectionAlgorithm" bei Dynamischen Depot

Verfasst: 13 Jan 2025, 10:04
von Dirk Uebe
Wow, perfekt! Das war das Problem!
Vielen herzlichen Dank für die schnelle Unterstützung!