Skip To Content

Verschieben des Auftragsverzeichnisses eines Geoverarbeitungsservice in einen Microsoft Azure-Speicher

In ArcGIS Server 10.7 können Administratoren das Auftragsverzeichnis eines Geoverarbeitungsservice (oder mehrerer Geoverarbeitungsservices) von einem Festplattenspeicherort in einen Microsoft Azure-Cloud-Speicherort ändern. Sind die Ausgaben Ihrer Geoverarbeitungsservices durchweg sehr groß, können Sie Ihre Speicherressourcen mit dieser Option skalieren.

Hinweis:

War bei der Veröffentlichung des Webwerkzeugs die Option Ausgabe im Kartenbild-Layer anzeigen aktiviert, können Sie den Cloud-Speicher nicht als Auftragsverzeichnis für den resultierenden Geoverarbeitungsservice verwenden. Der Service würde beschädigt werden, wenn Sie die Änderung in diesem Workflow vornehmen.

Vorbereiten der Azure-Umgebung

Sie benötigen ein Microsoft Azure-Konto, um ein Speicherkonto einzurichten und BLOB-Container und -Tabellen darin zu erstellen.

Erstellen eines Azure-Speicherkontos

Ein Speicherkonto muss die folgenden Anforderungen erfüllen:

  • Es ist ein Standard-Performance-Speicherkonto erforderlich.
  • Dabei kann es sich um ein GPv2-Konto (General Purpose v2) (empfohlen) oder ein GPv1-Konto (General Purpose v1) handeln. BLOB-Speicher, Block-BLOB-Speicher und Azure Files-Speicherkonten werden nicht unterstützt.
  • Es wird empfohlen, die heiße Zugriffsebene zu wählen.
  • Zusätzliche erweiterte Einstellungen des Speicherkontos können den Anforderungen Ihrer Organisation entsprechend angepasst werden.

Nachdem das Speicherkonto bereitgestellt wurde, kopieren Sie den key1 der Zugriffsschlüssel Ihres Speicherkontos. Sie benötigen diesen, wenn Sie das Konto als Cloud-Speicher bei ArcGIS Server registrieren.

Erstellen eines BLOB-Containers und einer Tabelle

Erstellen Sie einen BLOB-Container und eine Tabelle in demselben Speicherkonto. Der Geoverarbeitungsservice kann diese nicht identifizieren, wenn sie sich in unterschiedlichen Speicherkonten befinden.

Darüber hinaus müssen Sie eine eindeutige Warteschlange für jeden asynchronen Geoverarbeitungsservice erstellen. Fügen Sie serviceProperties für jeden Service "jobsStoreQueue":"<name of the queue>" hinzu.

Notieren Sie sich die genauen Namen des Containers, der Tabelle und der optionalen Warteschlangen, die Sie erstellen; Sie benötigen sie in den folgenden Schritten.

Verschieben des Auftragsverzeichnisses nach Azure

Nachdem der Azure BLOB-Container und die Tabelle bereitgestellt wurden, registrieren Sie den BLOB-Container in ArcGIS Server, und ändern Sie die Service-Eigenschaften entsprechend.

  1. Melden Sie sich beim ArcGIS Server-Administratorverzeichnis an, und navigieren Sie zu Element registrieren
  2. Geben Sie die Verbindungsinformationen des Azure-BLOB-Containers und der Tabelle als JSON-Zeichenfolge an. Schauen Sie sich das nachfolgende Beispiel an.
  3. Kehren Sie zur Startseite des Administratorverzeichnisses zurück, und klicken Sie auf Services.
  4. Suchen Sie nach dem Geoverarbeitungsservice, den Sie für die Verwendung des Azure-BLOB-Containers konfigurieren möchten, klicken Sie auf den Service-Namen, und klicken Sie dann auf edit.
  5. Fügen Sie der JSON-Repräsentation des Service die folgenden Schlüsselpaare mit einem neuen eindeutigen serviceId, den Namen des Cloud-Speichers und die Warteschlange für den betreffenden Service hinzu:

    
      "serviceId": "<a unique service ID>",
      "jobQueueStore":"/cloudStores/<name of your cloud store>",
      "jobTableStore": "/cloudStores/<name of your cloud store>",
      "outputStore": "/cloudStores/<name of your cloud store>",
      "jobObjectStore": "/cloudStores/<name of your cloud store>",
      "jobsStoreQueue": "<name of the queue>",
    Tipp:

    Der Name des Cloud-Speichers befindet sich am Ende des Endpunkts der Datenelement-URL im Administratorverzeichnis.

  6. Klicken Sie zur Bestätigung auf Änderungen speichern. Der Geoverarbeitungsservice wird automatisch neu gestartet; das dauert einen Moment.
  7. Wenn Sie mehrere Geoverarbeitungsservices für die Verwendung des Azure BLOB-Containers als Auftragsverzeichnis konfigurieren möchten, wiederholen Sie die Schritte 4 bis 6 für jeden Service.

JSON-Beispiel

Ersetzen Sie in diesem Beispiel den dataname, myaccountkey, storageaccountname, containername, optionalfoldername und den tablename durch Ihre Artefakte.

Registrieren Sie das Element.

{
    "path": "/cloudStores/dataname",
    "type": "cloudStore",
    "provider": "azure",
    "info": {
      "isManaged": false,
      "connectionString": {
           "accountKey":"myaccontkey",
           "accountName":"mystorageaccountname",
           "defaultEndpointsProtocol":"https",
           "accountEndpoint":"core.windows.net",
           "credentialType":"accessKey"
           },
      "objectStore": "containername/optionalfoldername",
      "tableStore":"tablename"
    }
  }

Ändern Sie die JSON-Datei für die Service-Eigenschaften des Geoverarbeitungsservice, indem Sie die in vorstehendem Schritt 5 erforderlichen Schlüsselwertpaare hinzufügen.

Bearbeiten Sie den GPServer.

{
 "serviceName": "myGPService1",
<... removed to save space ...>
  "resultMapServer": "false",
  "maximumRecords": "1000",
  "virtualOutputDir": "/rest/directories/arcgisoutput",
<... below is the new key-values needed ...>
  "serviceId": "this_is_a_unique_serviceid",
  "jobQueueStore":"/cloudStores/azure",
  "jobTableStore": "/cloudStores/azure",
  "outputStore": "/cloudStores/azure",
  "jobObjectStore": "/cloudStores/azure",
  "jobsStoreQueue": "this_is_a_unique_queue_name",
<... end of new key-values needed ...>
  "portalURL": "https://domain/webadaptor/",
  "toolbox":  <... removed to save space ...>
 },
 "portalProperties": < ...removed to save space... >,
 "extensions": < ...removed to save space... >,
 "frameworkProperties": {},
 "datasets": []
}