Diese Seite gilt nur für Bereitstellungen mit Azure AKS. Für Bereitstellungen auf virtuellen Maschinen siehe den Leitfaden Installation.
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.
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.
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.
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
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>
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>
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.
-
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.
-
Notieren Sie sich die IP-Adresse für die
env_specific.yml-Konfiguration:
loadbalancer:
external_ip: <your_public_ip_address>
-
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:
| Ressource | Zweck |
|---|
| Resource Group | Container für alle Vantage-Ressourcen |
| AKS Cluster | Kubernetes-Cluster zum Ausführen von Vantage |
| Services Node Pool | Führt Vantage-Plattformdienste aus |
| Workers Node Pool | Führt Dokumentverarbeitungs-Worker aus |
| Skills Storage Account | Speichert Skill-Definitionen und -Konfigurationen |
| Processing Storage Account | Speichert Dokumente während der Verarbeitung |
| Temporary Storage Account | Temporärer Speicher für Vorgänge |
| Shared Folders Storage Account | Zugriff auf freigegebene Ordner für Import/Export |
| Archive Storage Account | Langfristiges Dokumentarchiv |
| Azure SQL Server | Datenbankserver |
| Azure SQL Database | Betriebliche Vantage-Datenbank |
| Public IP Address | Externer Zugriff auf Vantage |
Nach dem Erstellen der Infrastruktur:
-
env_specific.yml konfigurieren - Konfigurieren Sie die Datei mit den Werten aus diesem Leitfaden. Das vollständige Konfigurationsformat finden Sie unter Installation.
-
Container-Images herunterladen - Synchronisieren Sie die Vantage-Images mit Ihrer Container-Registry.
-
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.
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
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.