跳转到主要内容

先决条件检查清单

在安装 Vantage 之前,请准备并配置以下外部组件:
  • 一台已安装 Docker 且可访问互联网的机器(用于安装 Vantage)
  • 作为 Kubernetes 节点使用的虚拟机(在安装期间需可访问互联网)
  • 用于存储 Docker 镜像的容器注册表
  • 用于支撑 Vantage 运行的关系型数据库管理系统 (RDBMS)
  • 用于向 Vantage 用户发送电子邮件的 SMTP 服务器
  • 用于建立加密通信的 TLS 证书
  • 2 个静态 IP 地址——一个用于 Kubernetes 配置/管理,一个用于访问 Vantage
  • 用于访问 Vantage 的 DNS 记录
  • 外部存储(在“非高可用”配置中为可选项)

安装机器要求

用于安装 Vantage 的机器需满足以下条件:
  • Linux 操作系统或 Windows Subsystem for Linux (WSL)
  • Docker 版本 19.03 或更高
  • 能通过网络访问 abyvtgonprm27.azurecr.io
  • 本地文件中包含供 ansible 用户帐户使用的 SSH 私钥(无密码短语)
所有虚拟机必须使用相同的 SSH 密钥。

基础架构要求

所有虚拟机可以在 VMware 或 Hyper-V 上运行,并且必须具备:
  • 静态 IP 地址
  • 一个名为 ansible 的用户账户,且:
    • 具有共享 SSH 密钥访问权限
    • 具有带 NOPASSWD 选项的 sudo 访问权限
  • 在每个工作节点上有一个专用且可扩展的磁盘/lvm_volume,挂载到 /opt/local-path-provisioner
  • 在安装期间可以访问容器镜像仓库和软件包仓库的互联网连接:
    • 容器镜像仓库,其中包含作为安装 Vantage 的先决条件而已同步好的镜像。有关更多信息,请参见下载容器镜像
    • 软件包仓库:Ubuntu(archive.ubuntu.com)、RHEL(cdn.redhat.com)。如果无法访问这些软件包仓库,也可以配置访问您自己的仓库,该仓库应包含下方列出的所有必需软件包。
通用(所有发行版):
curl, socat, unzip, e2fsprogs, xfsprogs, ebtables, tar
操作系统特定软件包:
Ubuntu 20.04RHEL 8
python3-apt, apt-transport-https, software-properties-common, conntrack, libseccomp2device-mapper-libs, nss, conntrack, container-selinux, libseccomp

安装后网络访问

集群安装完成后,虚拟机需要能够访问:
  • https://licensing-us.abbyy.com
  • env_specific.yml 文件的 SMTP 设置中指定的邮件服务器(用于发送电子邮件邀请、找回密码等)。
  • 所有您计划在 Vantage 流程技能中用于导入电子邮件的邮件服务器。

高可用配置

下表列出了所需虚拟机的最小数量。具体性能需求可能需要不同数量的虚拟机。
Kubernetes 节点类型主节点工作节点(服务)工作节点(Workers)
操作系统Ubuntu 20.04 或 RHEL 8Ubuntu 20.04 或 RHEL 8Ubuntu 20.04 或 RHEL 8
虚拟机数量341
CPU 核心数(每台虚拟机)21212
内存,GB(每台虚拟机)44848
Kubernetes 磁盘存储空间,GB(每台虚拟机)508080
/opt/local-path-provisioner 挂载点的磁盘/卷,GB不需要至少 40至少 40
网络带宽,Gbps(每台虚拟机)111

未配置高可用性

Kubernetes 节点类型主节点工作节点(服务)工作节点(Workers)
操作系统Ubuntu 20.04 或 RHEL 8Ubuntu 20.04 或 RHEL 8Ubuntu 20.04 或 RHEL 8
虚拟机数量111
CPU 核心数(每个虚拟机)21212
内存,GB(每个虚拟机)44848
Kubernetes 磁盘存储,GB(每个虚拟机)508080
/opt/local-path-provisioner 挂载点的磁盘/卷,GB不需要至少 40至少 40
网络带宽,Gbps(每个虚拟机)111
在安装 Vantage 期间将安装 Kubernetes 1.33.3 版本。

容器注册表

您可以使用任何容器注册表。

数据库要求

需要具有以下配置的 Microsoft SQL Server 或 PostgreSQL 数据库:选项 1:Microsoft SQL Server
版本操作系统CPU 核心数内存 (GB)磁盘存储 (GB)全文搜索 (Full-Text Search)
Enterprise 2022Linux44推荐:400,最小值:200启用
选项 2:PostgreSQL
版本CPU 核心数内存 (GB)磁盘存储 (GB)
14+44推荐:400,最小值:200
必须先准备一个外部数据库服务器,并且您需要具备创建和管理新数据库的相应凭据。安装程序需要 SQL Server 的 IP 地址,以及用于连接数据库的用户名和密码。

SMTP 服务器

服务器应使用 SMTP 协议进行通信。 安装程序需要提供 SMTP 服务器的 IP 地址/DNS 名称、端口,以及连接该服务器的密码(如果服务器需要身份验证)。必须允许 SMTP 服务器向 Vantage 用户发送电子邮件。 env_specific.yml 中配置启用或不启用身份验证的 SMTP。
我们建议使用启用身份验证(使用用户名和密码)的方式。
启用身份验证(推荐) 使用用户名和密码。在这种情况下,env_specific.yml 文件中的 smtp 部分应定义如下:
smtp:
  host: X.X.X.X
  login: email
  password: password
  port: 587
  useSSL: false
  secureSocketOptions: null
无需身份验证 不使用 登录凭据(用户名和密码)。在这种情况下,env_specific.yml 文件中的 smtp 部分应按如下方式定义:
mailFrom: email
smtp:
  host: X.X.X.X
  login: null
  password: null
  port: 25
  useSSL: false
  secureSocketOptions: None
请务必在根节点添加 mailFrom Parameter。
我们建议使用需要身份验证(登录名和密码)的选项。

TLS 证书

您需要准备通配符证书或特定域证书。 如果您的 Vantage 安装需要使用 Custom 活动连接外部服务,或将数据导出到外部系统,则证书应由公共证书授权机构(CA)签发,例如 https://letsencrypt.org/。

静态 IP 地址

1. Kubernetes API 访问。 一个静态 IP 地址,将用作虚拟 IP 地址以访问 Kubernetes API 服务器端点,以便配置和管理集群。该 IP 地址应在 env_specific.yml 文件中按如下方式定义。有关更多信息,请参阅“配置文件设置”:
k8s:
  api:
    ip: X.X.X.X
2. Vantage 服务访问。 一个静态 IP 地址,将用于通过 HTTPS 访问 Vantage 服务。必须事先创建相应的 DNS A 记录。该 IP 地址应在 env_specific.yml 文件中按如下方式定义。有关更多信息,请参阅安装
loadbalancer:
  external_ip: X.X.X.X

用于访问 Vantage 的 DNS 记录

没有特定要求。 安装程序需要一个主域名和一个用于访问 Vantage 的 DNS 名称。该 DNS 记录必须指向为访问 Vantage 专用的 IP 地址。

存储要求

仅对于无高可用性配置,外部存储是一个可选要求。高可用性配置的磁盘大小要求在《性能指南》中进行了说明。ABBYY Vantage 会在所提供虚拟机的硬盘上部署本地存储,从而加快产品的安装。不过,此选项仍可能受到意外重启和虚拟机崩溃的影响。由于这可能导致正在存储的数据丢失,因此在安装时建议使用外部存储。ABBYY Vantage 允许您按下述方式定义特定存储类型的使用。

使用本地存储

在这种情况下,将在每个 Kubernetes 节点上本地提供具有 ReadWriteOnce POSIX 兼容访问模式的卷,并将其挂载到 /opt/local_path_provisioner 目录。对于 ReadWriteMany 卷类型,Vantage 会在第一个 abbyy_services 节点上部署一个 in-cluster nfs-kernel-server(此节点的 IP 在 inventory 文件中对应块的第一个位置)。NFS 服务器的数据将存储在 /opt/local_path_provisioner 目录中,因此请确保在第一个 abbyy_services 节点(该组中的第一个节点在 inventory 文件中定义)上为此路径准备一个专用卷/磁盘,大小至少为 500 GB。对于高可用性配置,第一个 abbyy_services 节点还将承载本地持久卷存储。根据处理负载,它将需要额外的硬盘容量。有关所需容量的详细信息,请参见性能指南
如果本地持久卷存储空间耗尽,Vantage 可能会停止工作并丢失部分数据。我们建议您在自己这边监控可用空间,并为空间不足设置告警,以便及时增加存储容量,防止数据丢失。

使用外部 NFS 存储

Vantage 安装程序允许您自动配置一个 NFS 存储,将其用作特定服务的 Vantage 存储,例如导入和导出到共享文件夹,以及存储监控收集的数据。env_specific.yml 文件中的相关部分如下所示:
k8s:
  storage:
    rwx:
      external:
        enabled: true
        type: "nfs"
        nfs:
          address: <您的 NFS 服务器 IP 地址>
          path: <您的 NFS 服务器导出共享路径>
为了确保 Vantage 正常工作,我们建议将 NFS 服务器上的根目录(例如 /opt/nfs)设置为具有以下权限和属主:
drwxr-xr-x 4 65532 65532 4096 Dec 12 09:25 /opt/nfs/
下面是在 Linux 机器作为 NFS 服务器时,/etc/exports 文件中的示例目录配置:
/opt/nfs *(rw,sync,all_squash,insecure,no_subtree_check,anonuid=65532,anongid=65532)
如果需要连接其他存储类型,请参阅下文的 自定义存储类 部分。

自定义存储类

如果您想使用非 NFS 的外部存储,请按照以下步骤操作:
  1. 在安装过程中,在创建 Kubernetes 集群之后(Running the installation scripts 的第 4 步),部署相应的 CSI(Container Storage Interface)驱动程序,并为其创建存储类。
  2. 使用以下代码填写 env_specific.yml 文件中的 k8s 部分:
k8s:
  storage:
    rwo:
      class_name: "<rwo posix 兼容存储类>"
    rwx:
      class_name: "<读写多存储类>"
  1. 继续完成安装。
如果本地持久卷的存储空间耗尽,Vantage 可能会停止运行并导致数据丢失。请监控可用空间并设置告警。

Redis 集群(仅限 Azure AKS)

Redis 集群仅在 Azure AKS 高可用配置中是必需的。对于虚拟机部署或非高可用的 Azure 部署,则无需配置。
对于 Azure AKS 高可用部署,需要一个外部 Redis 集群,并满足以下配置要求:
ConfigurationRequirement
Redis Version6.2 or later
Number of Nodes6 or more
RAM per Node4 GB (minimum)
Cluster ModeEnabled
Cluster PasswordRequired
SSH Port22 (for configuration)
redis.conf 中必须设置以下选项:
appendonly yes
cluster-config-file nodes-6379.conf
cluster-enabled yes
cluster-node-timeout 5000
cluster-require-full-coverage no
maxclients 10000
maxmemory 2048mb
maxmemory-policy noeviction
repl-backlog-size 256mb
repl-ping-slave-period 5
save ""
slave-serve-stale-data yes
stop-writes-on-bgsave-error no
supervised auto
masterauth <password>
requirepass <password>
maxmemory 值应设置为每个 Redis 节点可用内存的一半。将 <password> 替换为集群密码。
目前尚不支持 Azure Cache for Redis。必须在 AKS 集群之外的虚拟机上部署 Redis。对 Azure Cache for Redis 的支持计划在未来版本中提供。