跳转到主要内容
本页仅适用于 Azure AKS 部署。对于虚拟机部署,请参阅安装指南。

概述

本指南将逐步引导您使用 Azure CLI 和 ARM 模板,为 ABBYY Vantage 创建所需的 Azure 基础架构。该基础架构是在 Vantage 安装程序容器内创建的。

前提条件

在开始之前,请确保您具备:
  • 具有创建和管理资源权限的 Azure 订阅
  • 在本地计算机上安装了 Docker
  • 可访问互联网,以便下载容器镜像
  • 对于高可用性配置:在虚拟机(VM)上部署的 Redis 集群(参见 系统要求
在创建基础架构的同时,您可以开始下载容器镜像,因为该操作可能耗时较长。

基础架构组件

将创建下列 Azure 资源:
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

步骤 1:下载安装程序镜像

首先,下载 Vantage 安装程序镜像,并将其推送到您的容器注册表。
# 登录 Vantage Docker 注册表
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
<username><password> 替换为购买时提供的凭据。

步骤 2:运行安装程序容器

启动安装程序容器。本指南中所有后续命令均在此容器内执行。
docker run -it registry.yourdomain.tld/vantage/vantage-azure:2.7.1

步骤 3:登录 Azure

在容器中登录到你的 Azure 帐户:
# 登录 Azure(打开浏览器进行身份验证)
az login

# Set the subscription
az account set --subscription <subscription_id>
<subscription_id> 替换为您的 Azure 订阅 ID。

步骤 4:创建资源组

在所需的 Azure 区域中创建资源组:
az group create --location <location> --resource-group <resource_group_name>
示例:
az group create --location eastus --resource-group vantage-prod-rg
常见的 Azure 区域:eastuseastus2westus2westeuropenortheurope

步骤 5:创建 AKS 集群

预览部署

首先,查看将会创建的资源:
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>
集群名称不得超过 15 个字符

创建集群

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
此命令在 无高可用性 配置下创建一个集群,可在 8 小时内处理 50,000 个页面。对于其他配置,请在集群创建后使用性能指南修改节点池设置。
针对符合 FIPS 要求的部署,请设置 enableFIPS=true。有关其他配置,请参阅 FIPS 合规性

步骤 6:创建存储账户

预览该部署

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

获取存储帐户密钥

获取用于在 env_specific.yml 文件中填充 s3storage 部分的访问密钥和私密密钥:
az deployment group show --name storage \
  --resource-group <resource_group_name> \
  --query properties.outputs -o yaml
保存输出结果——在配置 env_specific.yml 文件时将用到这些值。

步骤 7:创建 Azure SQL 服务器

预览部署

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 服务器

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>
dbAdminLogindbAdminPassword 这两个 Parameter 是用于访问数据库的凭据。请将它们保存到 env_specific.yml 配置文件中。

步骤 8:创建 Azure SQL 数据库

预览部署

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>

步骤 9:获取节点资源组

获取 AKS 集群的节点资源组名称:
az aks show --name <cluster_name> -g <resource_group_name> \
  --query nodeResourceGroup -o tsv
保存此值——稍后您将在该资源组中创建公共 IP 地址。

步骤 10:配置公共 IP 地址

  1. 在第 9 步中创建的节点资源组内创建一个 Azure 公共 IP(Standard Static IPv4),或将现有的 Public IP 移动到该资源组。
  2. 记录该 IP 地址,用于 env_specific.yml 配置:
    loadbalancer:
      external_ip: <your_public_ip_address>
    
  3. 创建 DNS A 记录,将你的域名指向此 IP 地址。

步骤 11:安装 GPU 驱动程序(可选)

如果计划部署 GPU worker 节点用于训练深度学习技能:
ansible-playbook -i inventories/azure -v \
  playbooks/infrastructure/azure/02_install_gpu_driver.yml
有关 GPU 部署要求,请参阅系统要求

已创建资源概览

完成这些步骤后,您将获得以下资源:
资源用途
资源组所有 Vantage 相关资源的容器
AKS 集群用于运行 Vantage 的 Kubernetes 集群
服务节点池运行 Vantage 平台服务
工作节点池运行文档处理工作节点
技能存储账户存储技能定义和配置
处理存储账户在处理过程中存储文档
临时存储账户事务的临时存储
共享文件夹存储账户用于访问导入/导出的共享文件夹
归档存储账户长期文档归档
Azure SQL Server数据库服务器
Azure SQL DatabaseVantage 运行时数据库
公共 IP 地址用于从外部访问 Vantage

后续步骤

完成基础架构创建后:
  1. 配置 env_specific.yml - 使用本指南中提供的值进行填充。完整的配置格式请参见 安装
  2. 下载容器镜像 - 将 Vantage 镜像同步到容器镜像仓库(注册表)。
  3. 运行安装 - 使用 playbook 完成安装。
继续前往 安装 了解完整的安装流程。

疑难解答

部署因权限不足而失败

请确保您的 Azure 帐户具备以下权限:
  • 在订阅或资源组上拥有“参与者 (Contributor)”访问权限
  • 创建 AKS 集群、存储帐户和 SQL 数据库的权限

群集名称过长

群集名称不得超过 15 个字符。请使用更短的名称。

存储帐户名称已存在

Azure 存储帐户名称在全局范围内必须唯一。ARM 模板会根据你的集群名称生成名称。如果存在冲突,请尝试使用其他集群名称。

无法连接到 SQL 数据库

请确保 Azure SQL 数据库的防火墙规则允许来自 AKS 集群出站 IP 地址的连接。您可能需要添加虚拟网络规则或允许 Azure 服务访问。