Sie können Routing-Services in ArcGIS Enterprise on Kubernetes auf der Grundlage eines Netzwerk-Datasets veröffentlichen, das Ihre Straßendaten modelliert. Nach der Veröffentlichung können die Routing-Services mit verschiedenen Anwendungen, z. B. ArcGIS Pro, verwendet werden. Außerdem dienen sie dazu, in Map Viewer Classic Wegbeschreibungen abzurufen und Analysen durchzuführen. Mithilfe von ArcGIS-Web-APIs und Runtime SDKs können Sie darüber hinaus Anwendungen schreiben, die diese Routing-Services verwenden.
Um Routing-Services zu veröffentlichen, müssen Sie das Web-Werkzeug "Routing-Services veröffentlichen" ausführen, das im Geoverarbeitungsservice "PublishingTools" in ArcGIS Enterprise on Kubernetes enthalten ist. Das Werkzeug erstellt alle Routing-Services auf der Grundlage Ihres Netzwerk-Datasets und registriert sie als Utility-Services in Ihrem Enterprise-Portal, sodass verschiedene Anwendungen diese Routing-Services finden und verwenden können.
Stellen Sie vor der Ausführung des Web-Werkzeugs sicher, dass das für die Veröffentlichung der Routing-Services verwendete Netzwerk-Dataset für alle Knoten in der Bereitstellung verfügbar ist. Speichern Sie hierzu die File-Geodatabase oder die mobile Geodatabase, die das Netzwerk-Dataset enthält, in einem Ordner, der für Ihre Bereitstellung als Data Store vom Typ "Ordner" registriert wurde. Sie können auch für die Enterprise-Geodatabase, in der das Netzwerk-Dataset gespeichert ist, ein Data-Store-Element vom Typ "Datenbank" hinzufügen. Außerdem müssen Sie für einen Benutzer mit Administratorberechtigungen ein Token abrufen, das mindestens 60 Minuten lang gültig ist.
Beispiel-Workflow
In diesem Abschnitt wird beschrieben, wie Sie Routing-Services unter Verwendung eines Netzwerk-Datasets in einer File-Geodatabase veröffentlichen. Die Schritte referenzieren bestimmte Datenpfade und URLs, die sich allerdings unterscheiden, wenn Sie Routing-Services direkt veröffentlichen. Ersetzen Sie die angezeigten Datenpfade und URLs basierend auf Ihrer Bereitstellung.
Die Schritte referenzieren eine ArcGIS Enterprise on Kubernetes-Bereitstellung, die unter https://dev0017162.esri.com/arcgis ausgeführt wird. Die Routing-Services werden aus einem Netzwerk-Dataset namens "Routing_ND" veröffentlicht, das im Feature-Dataset "Routing" in der File-Geodatabase NorthAmerica.gdb enthalten ist.
- Melden Sie sich mit den Anmeldeinformationen des primären Administratorkontos beim Services-Verzeichnis für die Bereitstellung (z. B. https://dev0017162.esri.com/arcgis/rest/services) an.
- Navigieren Sie zum Publishing Routing Services-Endpunkt des Geoverarbeitungsservice "PublishingTools" im Ordner "System" (z. B. https://dev0017162.esri.com/arcgis/rest/services/System/PublishingTools/GPServer/Publish%20Routing%20Services).
- Klicken Sie unten auf der Seite auf den Link Auftrag senden.
- Führen Sie im Webformular "Auftrag senden" die folgenden Schritte aus:
- Geben Sie den Wert für den Parameter networkDataset als JSON-Zeichenfolge an, die die Eigenschaften "datastoreId" und "path" enthält. Der Wert "datastoreId" ist die ID des Data-Store-Elements, das den Workspace des Netzwerk-Datasets referenziert. Er wurde während der Erstellung der ArcGIS Enterprise-Organisation beim Konfigurieren der freigegebenen Ordner erstellt. "path" ist der relative Pfad zu dem Netzwerk-Dataset im Data Store. Wenn der Katalogpfad des Netzwerk-Datasets in einer File-Geodatabase auf der Dateifreigabe beispielsweise /net/data/NorthAmerica.gdb/Routing/Routing_ND lautet und das Data-Store-Element mit der ID 3eba512c2a0841d5adcc4c83029d8bf6 /net/data referenziert, wird der Wert für den Parameter folgendermaßen angegeben:
{ "datastoreId": "3eba512c2a0841d5adcc4c83029d8bf6", "path": "/NorthAmerica.gdb/Routing/Routing_ND" }
- Geben Sie für den Parameter networkDatasetExtents keinen Wert an.
- Geben Sie für den Parameter serviceFolder einen Namen für einen Serverordner an, der alle von diesem Werkzeug erstellten Routing-Services enthält.
- Wählen Sie für den Parameter solverTypes den Standardwert aus, denn dieser gibt an, dass das Werkzeug Routing-Services für alle Network Analyst-Solver erstellt.
- Geben Sie für den Parameter configFile keinen Wert an.
- Geben Sie für den Parameter authenticationInfo die Authentifizierungsinformationen an, z. B. das Token, das beim Veröffentlichen der Services verwendet werden soll. Geben Sie den Wert für diesen Parameter als eine JSON-Zeichenfolge mit der Eigenschaft "token" und ggf. der Eigenschaft "referer" an. Diese enthält den Wert "referer", der beim Generieren des Token angegeben wurde.
Vorsicht:
Wenn für den Parameter authenticationInfo kein Wert angegeben wurde, verwendet das Werkzeug das Token des Benutzers, der sich beim Services-Verzeichnis angemeldet hat. In den meisten Fällen läuft dieses Token ab, bevor die Ausführung des Werkzeugs abgeschlossen ist, und es tritt ein Werkzeugfehler auf.
Um ein Token zu erhalten, rufen Sie über das Enterprise-Portal den Vorgang Token generieren auf. Navigieren Sie zum Endpunkt für das Generieren von Token Ihres Enterprise-Portals (z. B. https://dev0017162.esri.com/arcgis/sharing/rest/generateToken), und generieren Sie ein Token, das einen Tag lang gültig ist, indem Sie im Webformular "Token generieren" folgende Werte angeben:
- Username: Der Benutzername des primären Administrators.
- Password: Das Kennwort für den primären Administratorbenutzer.
- Client: Wählen Sie die Option Webanwendungs-URL aus, und geben Sie die URL des Enterprise-Portals an (z. B. https://dev0017162.esri.com/arcgis).
- Expiration: 1 Tag.
- Format: JSON
Klicken Sie auf die Schaltfläche Token generieren. Es wird eine JSON-Zeichenfolge generiert, die etwa folgendermaßen aussieht:
Ausgabe des Vorgangs "Token generieren"
{ "token": "Ci4vgz18Vto2bK7mXVXLOE3XREXmt4sUI-QR60jApa0-Abr9UDZCWtnphxXKcQwJzh6RnHfxnkuIqQtLMVRK5OMXuFEK2E_AQtQMfTldvMagR1pPnWCPXms13QR_kMaLo_gh9gxAAi3t7xfE8RY7xPUIY5cuqGYP-WxWRp_IUgJD29FOXvVtLLisTu1THMpF-g0hlc3W5wJJ67SHGGqm8w.D", "expires": 1635360389770, "ssl": true }
Der Wert für den Parameter authenticationInfo ist die JSON-Zeichenfolge, die Sie nach der Ausführung des Vorgangs Generate Token erhalten haben, wobei der JSON-Zeichenfolge die Eigenschaft "referer" hinzugefügt wurde. Wenn Sie beim Generieren des Token beispielsweise https://dev0017162.esri.com/arcgis als Wert für Webanwendungs-URL angegeben haben, sollte die JSON-Zeichenfolge für den Wert des Parameters authenticationInfo folgendermaßen lauten:
Beispielwert für den Parameter authenticationInfo
{ "token": "Ci4vgz18Vto2bK7mXVXLOE3XREXmt4sUI-QR60jApa0-Abr9UDZCWtnphxXKcQwJzh6RnHfxnkuIqQtLMVRK5OMXuFEK2E_AQtQMfTldvMagR1pPnWCPXms13QR_kMaLo_gh9gxAAi3t7xfE8RY7xPUIY5cuqGYP-WxWRp_IUgJD29FOXvVtLLisTu1THMpF-g0hlc3W5wJJ67SHGGqm8w.D", "expires": 1635360389770, "ssl": true, "referer": "https://dev0017162.esri.com/arcgis" }
Vorsicht:
Die als Wert für den Parameter authenticationInfo angegebene JSON-Zeichenfolge muss die Eigenschaft "referer" enthalten, die mit dem Wert für Webanwendungs-URL übereinstimmt, wenn das Token generiert wird. Andernfalls schlägt das Werkzeug "Routing-Services veröffentlichen" fehl, und es wird ein Fehler bezüglich des ungültigen Token angezeigt.
- Klicken Sie auf die Schaltfläche Auftrag senden (POST).
Die Ausführung des Werkzeugs "Routing-Services veröffentlichen" wird gestartet. Es kann bis zu einer Stunde dauern, bis die Ausführung des Werkzeugs abgeschlossen ist. Um den Fortschritt des Werkzeugs während der Ausführung zu überwachen, klicken Sie auf den Link Auftragsdetails erneut prüfen um die neuesten Statusmeldungen anzuzeigen. Verwenden Sie den Wert Auftrags-ID für die Werkzeugausführung, um den Status und die Ergebnisse zu überprüfen, indem Sie zur URL navigieren (z. B. https://dev0017162.esri.com/arcgis/rest/services/System/PublishingTools/GPServer/Publish%20Routing%20Services/jobs/jd891ca3b935d4ed9a6fd38646d31a99c).
- Geben Sie den Wert für den Parameter networkDataset als JSON-Zeichenfolge an, die die Eigenschaften "datastoreId" und "path" enthält. Der Wert "datastoreId" ist die ID des Data-Store-Elements, das den Workspace des Netzwerk-Datasets referenziert. Er wurde während der Erstellung der ArcGIS Enterprise-Organisation beim Konfigurieren der freigegebenen Ordner erstellt. "path" ist der relative Pfad zu dem Netzwerk-Dataset im Data Store. Wenn der Katalogpfad des Netzwerk-Datasets in einer File-Geodatabase auf der Dateifreigabe beispielsweise /net/data/NorthAmerica.gdb/Routing/Routing_ND lautet und das Data-Store-Element mit der ID 3eba512c2a0841d5adcc4c83029d8bf6 /net/data referenziert, wird der Wert für den Parameter folgendermaßen angegeben:
Sobald das Werkzeug abgeschlossen ist, werden die Routing-Services veröffentlicht und als Utility-Services in Ihrem Enterprise-Portal konfiguriert. Basierend auf der erwarteten Nutzung in Ihrer Organisation können Sie den Routing-Services nun entsprechende Ressourcen zuweisen.