Zum Hauptinhalt springen
Diese Seite gilt nur für Bereitstellungen mit Azure AKS. Für Bereitstellungen auf virtuellen Maschinen siehe den Leitfaden Installation.

Überblick

In dieser Anleitung erfahren Sie, wie Sie mithilfe der Azure CLI und ARM-Vorlagen die erforderliche Azure-Infrastruktur für ABBYY Vantage bereitstellen. Die Infrastruktur wird direkt aus dem Vantage-Installer-Container heraus bereitgestellt.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
  • Ein Azure-Abonnement mit Berechtigungen zum Erstellen und Verwalten von Ressourcen
  • Docker ist auf Ihrem lokalen Computer installiert
  • Internetzugang zum Herunterladen von Container-Images
  • Für eine hochverfügbare Konfiguration: Ein Redis-Cluster, der auf VMs bereitgestellt ist (siehe System Requirements)
Sie können mit dem Herunterladen der Container-Images beginnen, während Sie die Infrastruktur erstellen, da dies ein zeitaufwändiger Vorgang ist.

Infrastrukturkomponenten

Die folgenden Azure-Ressourcen werden erstellt:
Azure Subscription
└── Resource Group
    ├── AKS Cluster
    │   ├── Services Node Pool (Standard_D8as_v5)
    │   └── Workers Node Pool (Standard_D16as_v5)
    ├── Storage Accounts (5)
    │   ├── Skills (Premium/Hot)
    │   ├── Processing (Standard/Hot)
    │   ├── Temporary (Standard/Hot)
    │   ├── Shared Folders (Premium FileStorage)
    │   └── Archive (Standard/Cool)
    ├── Azure SQL Server
    │   └── Elastic Pool Database
    └── Public IP Address

Schritt 1: Installer-Image herunterladen

Laden Sie zunächst das Vantage-Installer-Image herunter und laden Sie es in Ihre Container-Registry hoch.
# Bei der Vantage Docker Registry anmelden
docker login abyvtgonprm27.azurecr.io -u <username> -p <password>

# Pull the installer image
docker pull abyvtgonprm27.azurecr.io/vantage-azure:2.7.1

# Tag for your registry
docker tag abyvtgonprm27.azurecr.io/vantage-azure:2.7.1 \
  registry.yourdomain.tld/vantage/vantage-azure:2.7.1

# Push to your registry
docker push registry.yourdomain.tld/vantage/vantage-azure:2.7.1
Ersetzen Sie <username> und <password> durch die beim Erwerb bereitgestellten Anmeldedaten.

Schritt 2: Installer-Container starten

Starten Sie den Installer-Container. Alle weiteren Befehle in dieser Anleitung werden aus diesem Container heraus ausgeführt.
docker run -it registry.yourdomain.tld/vantage/vantage-azure:2.7.1

Schritt 3: Bei Azure anmelden

Melden Sie sich im Container bei Ihrem Azure-Konto an:
# Bei Azure anmelden (öffnet Browser für Authentifizierung)
az login

# Set the subscription
az account set --subscription <subscription_id>
Ersetzen Sie <subscription_id> durch Ihre Azure-Abonnement-ID.

Schritt 4: Ressourcengruppe erstellen

Erstellen Sie eine Ressourcengruppe in der gewünschten Azure-Region:
az group create --location <location> --resource-group <resource_group_name>
Beispiel:
az group create --location eastus --resource-group vantage-prod-rg
Häufig verwendete Azure-Regionen: eastus, eastus2, westus2, westeurope, northeurope

Schritt 5: AKS-Cluster erstellen

Bereitstellungsvorschau anzeigen

Überprüfen Sie zunächst, welche Ressourcen erstellt werden:
az deployment group what-if --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name>
Clusternamen dürfen höchstens 15 Zeichen lang sein.

Cluster erstellen

az deployment group create --name aks-cluster \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Cluster.Manual.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false
Dieser Befehl erstellt einen Cluster in der Konfiguration Ohne Hochverfügbarkeit, der in 8 Stunden 50.000 Seiten verarbeiten kann. Für andere Konfigurationen passen Sie nach der Erstellung des Clusters die Node-Pool-Einstellungen mithilfe des Performance-Leitfadens an.
Für FIPS-konforme Bereitstellungen setzen Sie enableFIPS=true. Weitere Konfigurationsinformationen finden Sie unter FIPS-Compliance.

Schritt 6: Speicherkonten erstellen

Bereitstellung in der Vorschau anzeigen

az deployment group what-if --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json

Speicherkonten erstellen

az deployment group create --name storage \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/StorageAccounts.Template.json \
  --parameters kubernetesClusterName=<cluster_name> \
  --parameters enableFIPS=false

Speicherkontoschlüssel abrufen

Rufen Sie die Zugriffs- und Geheimschlüssel ab, um den Abschnitt s3storage in env_specific.yml auszufüllen:
az deployment group show --name storage \
  --resource-group <resource_group_name> \
  --query properties.outputs -o yaml
Speichern Sie die Ausgabe – Sie benötigen diese Werte für die Konfigurationsdatei env_specific.yml.

Schritt 7: Erstellen eines Azure SQL-Servers

Bereitstellung vorab anzeigen

az deployment group what-if --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>

SQL-Server erstellen

az deployment group create --name dbservers \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/DB.Server.Template.json \
  --parameters serverBaseName=<cluster_name> \
  --parameters dbAdminLogin=<db_username> \
  --parameters dbAdminPassword=<db_password>
Die dbAdminLogin- und dbAdminPassword-Parameter sind die Anmeldeinformationen für den Zugriff auf die Datenbanken. Speichern Sie diese für die Konfigurationsdatei env_specific.yml.

Schritt 8: Azure SQL-Datenbank erstellen

Bereitstellung überprüfen

az deployment group what-if --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>

Datenbank erstellen

az deployment group create --name databases \
  --resource-group <resource_group_name> \
  --template-file files/infrastructure/azure/arms/Databases/SQL.Databases.Template.json \
  --parameters serverBaseName=<cluster_name>

Schritt 9: Knotenressourcengruppe abrufen

Rufen Sie den Namen der Knotenressourcengruppe für den AKS-Cluster ab:
az aks show --name <cluster_name> -g <resource_group_name> \
  --query nodeResourceGroup -o tsv
Merken Sie sich diesen Wert – Sie werden die öffentliche IP-Adresse in dieser Ressourcengruppe erstellen.

Schritt 10: Öffentliche IP-Adresse konfigurieren

  1. Erstellen Sie eine Azure Public IP (Standard Static IPv4) in der Knotenressourcengruppe aus Schritt 9, oder verschieben Sie eine vorhandene Public IP in diese Ressourcengruppe.
  2. Notieren Sie sich die IP-Adresse für die env_specific.yml-Konfiguration:
    loadbalancer:
      external_ip: <your_public_ip_address>
    
  3. Erstellen Sie einen DNS-A-Eintrag, der Ihre Domain auf diese IP-Adresse zeigt.

Schritt 11: GPU-Treiber installieren (optional)

Wenn Sie planen, GPU-Worker zum Trainieren von Skills mit Deep Learning bereitzustellen:
ansible-playbook -i inventories/azure -v \
  playbooks/infrastructure/azure/02_install_gpu_driver.yml
Informationen zu den Anforderungen für die GPU-Bereitstellung finden Sie in den System Requirements.

Zusammenfassung der erstellten Ressourcen

Nachdem Sie diese Schritte abgeschlossen haben, verfügen Sie über:
RessourceZweck
Resource GroupContainer für alle Vantage-Ressourcen
AKS ClusterKubernetes-Cluster zum Ausführen von Vantage
Services Node PoolFührt Vantage-Plattformdienste aus
Workers Node PoolFührt Dokumentverarbeitungs-Worker aus
Skills Storage AccountSpeichert Skill-Definitionen und -Konfigurationen
Processing Storage AccountSpeichert Dokumente während der Verarbeitung
Temporary Storage AccountTemporärer Speicher für Vorgänge
Shared Folders Storage AccountZugriff auf freigegebene Ordner für Import/Export
Archive Storage AccountLangfristiges Dokumentarchiv
Azure SQL ServerDatenbankserver
Azure SQL DatabaseBetriebliche Vantage-Datenbank
Public IP AddressExterner Zugriff auf Vantage

Nächste Schritte

Nach dem Erstellen der Infrastruktur:
  1. env_specific.yml konfigurieren - Konfigurieren Sie die Datei mit den Werten aus diesem Leitfaden. Das vollständige Konfigurationsformat finden Sie unter Installation.
  2. Container-Images herunterladen - Synchronisieren Sie die Vantage-Images mit Ihrer Container-Registry.
  3. Installation ausführen - Schließen Sie die Installation mithilfe der Playbooks ab.
Fahren Sie mit Installation fort, um eine Beschreibung des vollständigen Installationsprozesses zu erhalten.

Fehlerbehebung

Bereitstellung schlägt mit einem Berechtigungsfehler fehl

Stellen Sie sicher, dass Ihr Azure-Konto über die folgenden Berechtigungen verfügt:
  • Contributor-Zugriff auf das Abonnement oder die Ressourcengruppe
  • Berechtigung zum Erstellen von AKS-Clustern, Speicherkonten und SQL-Datenbanken

Clustername zu lang

Clusternamen dürfen höchstens 15 Zeichen umfassen. Verwenden Sie einen kürzeren Namen.

Speicherkontoname ist bereits vorhanden

Azure-Speicherkontonamen müssen global eindeutig sein. Die ARM-Vorlage generiert Namen auf Basis Ihres Clusternamens. Wenn es zu einem Konflikt kommt, verwenden Sie einen anderen Clusternamen.

Keine Verbindung zur SQL-Datenbank möglich

Stellen Sie sicher, dass die Firewallregeln der Azure SQL-Datenbank Verbindungen von den ausgehenden (Outbound-) IP-Adressen des AKS-Clusters zulassen. Gegebenenfalls müssen Sie eine virtuelle Netzwerkregel hinzufügen oder Azure-Dienste zulassen.