Skip to main content
The Vantage 3.0 self-hosted installer is driven by a single Kubernetes custom resource: a Vantage object in the vantage.abbyy.com/v1alpha1 API group. The fields below are the full contract between you and the operator. For a conceptual overview of how the operator consumes this resource, see Architecture. For an installation procedure, choose Azure or Self-Managed Kubernetes.

API group

Vantage

The top-level Vantage resource. The vantage-selfhosted chart contains a Vantage CR instance, created in the namespace where you installed that chart.

Vantage.spec

spec defines the desired state of Vantage
secrets validation: has(self.kubernetes) != has(self.azure): exactly one provider must be specified.
updatePolicy validation: !has(self.auto): automatic updates are not yet supported.
updatePolicy validation: (has(self.auto) ? 1 : 0) + (has(self.manual) ? 1 : 0) == 1: exactly one update policy must be specified.
ociMigration validation: !has(self.enabled) || self.enabled == false || has(self.destination): destination is required when ociMigration is enabled.
Database and reporting validation: PostgreSQL is selected with the exact value PostgreSQL. Reporting is SQL Server-only; the resource is rejected when databaseProvider is PostgreSQL and reportingEnabled is true.
techcore validation: !self.keepPreviousVersion || has(self.previousVersion): previousVersion is required when keepPreviousVersion is true.

Vantage.spec.keda

keda configures KEDA-based autoscaling for supported Vantage workloads. Install KEDA and the required Prometheus service before enabling it. The current Vantage workload charts require KEDA 2.17.x. Some ScaledObject resources query http://prometheus-operated.observability.svc.cluster.local:9090; see Autoscaling with KEDA.

Vantage.spec.smtp

smtp configures the SMTP mail server. Optional alternative to SendGrid; used only when set.

Vantage.spec.workloads

workloads configures the ConfigMap containing data about charts and images

Vantage.spec.secrets

secrets configures the secrets provider used to supply application secrets (database connection strings, API keys, certificates) to Vantage workloads. Exactly one provider must be specified. See Secrets and Key Vault for the conceptual model and the full alias inventory.

Vantage.spec.secrets.azure

azure configures Azure Key Vault (via the Secrets Store CSI Driver) as the secrets source.

Vantage.spec.secrets.azure.objects[alias]

AzureSecretObjectConfig describes a single Key Vault object that backs a secret alias.

Vantage.spec.secrets.kubernetes

kubernetes uses pre-existing Kubernetes Secret resources in the install namespace.

Vantage.spec.secrets.kubernetes.objects[alias]

Each entry maps a secret alias to a Kubernetes Secret name.

Vantage.spec.storage

storage configures advanced storage options. When omitted, Vantage uses the default Azure Blob backend and reads connection strings from the storage*ConnectionString secret aliases. See Secrets and Key Vault.

Vantage.spec.storage.custom

custom configures a custom storage backend (PVC-backed via a Kubernetes StorageClass).
The referenced Kubernetes StorageClass must already be configured in the cluster before you install Vantage with a custom storage backend. Its provisioned volumes must be writable by a non-root user; see Configure persistent storage.

Vantage.spec.updatePolicy

updatePolicy controls how the operator handles Vantage upgrades.

Vantage.spec.updatePolicy.auto

auto enables automatic version upgrades. Not yet implemented.

Vantage.spec.ociMigration

ociMigration configures copying artifacts from a source registry to a destintion before install. Omit entirely or set enabled=false to skip migration. When enabled, destination is required.
destination validation: !self.host.contains(’/’): host must not contain a path; use the repository field for the registry path
destination validation: !self.host.contains(’://’): host must not include a scheme (e.g., https://)
Image pull access for the migration job: run the job under a ServiceAccount that carries your registry pull secret (serviceAccountName), or reference the secret on the source entry (sources[].credentialsRef.name). On Azure, granting AcrPull to the AKS managed identity is the simpler alternative to pull secrets. ArgoCD’s access to your registry is configured separately, as an ArgoCD repository connection. See Image pull access and Connect ArgoCD to your OCI registry.

Vantage.spec.ociMigration.destination

destination is where artifacts are copied to.

Vantage.spec.ociMigration.destination.credentialsRef

credentialsRef references a Secret containing username and password keys or a kubernetes.io/dockerconfigjson-type Secret. Takes precedence over username/password if specified.

Vantage.spec.ociMigration.destination.workloadIdentity

workloadIdentity defines settings for using the identity of the workload (Kubernetes service account) to access the registry.

Vantage.spec.ociMigration.imagePullSecrets[index]

LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.

Vantage.spec.ociMigration.sources[index]

ContainerRegistryConfig defines container registry connection settings.

Vantage.spec.ociMigration.sources[index].credentialsRef

credentialsRef references a Secret containing username and password keys or a kubernetes.io/dockerconfigjson-type Secret. Takes precedence over username/password if specified.

Vantage.spec.ociMigration.sources[index].workloadIdentity

workloadIdentity defines settings for using the identity of the workload (Kubernetes service account) to access the registry.

Vantage.spec.techcore

techcore contains configuration for the TechCore processing engine

Vantage.spec.techcore.nnTrainingWorkers

nnTrainingWorkers configures neural network training workers

Vantage.status

status defines the observed state of Vantage
Skill installation runs as a separate Kubernetes job that is not reflected in status.conditions[] and is not surfaced via ArgoCD. Vantage is usable while the job runs. See Lifecycle for the monitoring commands.

Vantage.status.conditions[index]

Condition contains details for one aspect of the current state of this API Resource.

Vantage.status.degradationReasons[index]

DegradationReason represents a reason why a single component of the installation is degraded.