Vantage 3.0 uses a different deployment model than 2.7 and earlier. Previous releases required ABBYY’s exact specified infrastructure, created and configured by ABBYY-provided Ansible and Azure CLI scripts. That model is not supported in 3.0:
- You provision your own infrastructure: the Kubernetes cluster, databases, storage accounts, and key vault. ABBYY does not provide provisioning scripts, templates, or other infrastructure automation for 3.0.
- The installer deploys Vantage Core only. Third-party software that Vantage relies on, such as ArgoCD, your service mesh and ingress controller, your secrets integration, and your monitoring stack, is installed and maintained by you, usually via Helm.
- The documented configurations are scenarios ABBYY has tested. You can adapt your installation based on the documented examples; validating an adaptation is your responsibility.
Operator requirements
The Vantage operator runs on top of Kubernetes and ArgoCD.Cluster-level requirements
These services and components must be present in the cluster before you install Vantage. Concrete tested versions are listed on Compatibility.KEDA Support
Some Vantage KEDAScaledObject resources depend on a Prometheus instance in the observability namespace. The Prometheus service must be reachable at http://prometheus-operated.observability.svc.cluster.local:9090, and it must scrape Vantage application metrics through the chart-created ServiceMonitor. See Autoscaling with KEDA for trigger behavior and verification, and Monitoring for the metrics pipeline.
Kubernetes Node Requirements
Vantage schedules its workloads across three node pools: a default pool for UI, API, and platform services, a TechCore pool for document processing workers, and a training pool for training-related workers. Label and taint the TechCore and training pools as described below so that processing work is isolated from the rest of the application.TechCore Worker Nodes
Vantage includes several workloads referred to as “techcore workers”. These workloads carry out much of the main processing of the application (as opposed to workloads running UI and API applications). It is recommended to dedicate a pool of Kubernetes nodes specifically to these workloads. Do so by adding the labelk8s.abbyy.com/techcore=true to the set of nodes on which techcore worker workloads should be scheduled, and by tainting those nodes with:
Training Worker Nodes
Further segment TechCore worker nodes by designating specific nodes that should run training-related work. Training-related workloads possess the following toleration:k8s.abbyy.com/techcore=training:NoSchedule. Only training-related workloads tolerate this taint, so no other Vantage workloads are scheduled on those nodes.
See official Kubernetes documentation for more details on taints and tolerations.
Kubernetes Node Sizes and Counts
Node counts and sizes depend on the install profile and on which optional components you enable. See the Sizing guide for per-node-pool CPU, memory, and pod-count requirements for minimal and production installs.External services
Provision these before installing. Concrete tested products are listed on Compatibility.
† SendGrid and SMTP are mutually exclusive; only one is required.
¶ Required only when using the Azure secrets provider (
vantage.secrets.azure). The Kubernetes Secrets provider (vantage.secrets.kubernetes) reads from pre-existing Secret resources in the install namespace and needs neither the CSI driver nor a cloud key vault.
What’s next
Install on Azure
AKS prerequisites, identity setup, and the install procedure.
Self-Managed Kubernetes
Bring-your-own mesh, ingress, secrets, data services, and registry.
Compatibility
Supported Kubernetes versions, distributions, and dependency versions.
Sizing
CPU, memory, and pod-count requirements per node pool.
