> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API-Referenz: 2026.11.06

> Feldreferenz für die Vantage-Custom-Resource vantage.abbyy.com/v1alpha1, die selbst gehostete Installationen von Vantage 3.0 steuert.

## Artefaktversionen

| Artefakt | Version |
| - | - |
| `vantage-operator` chart | `0.92.22` |
| `vantage-selfhosted` chart | `0.92.22` |
| `vantage-operator` Image | `v0.92.22` |

Das Installationsprogramm von Vantage 3.0 selbst gehostet wird über eine einzige Kubernetes-Custom-Resource gesteuert: ein `Vantage`-Objekt in der API-Gruppe `vantage.abbyy.com/v1alpha1`. Die unten aufgeführten Felder bilden den vollständigen Vertrag zwischen Ihnen und dem Bediener.

Einen konzeptionellen Überblick darüber, wie der Bediener diese Ressource verarbeitet, finden Sie unter [Architektur](https://docs.abbyy.com/de/vantage/self-hosted/v3.0/architecture.md). Eine Installationsanleitung finden Sie unter [Azure](https://docs.abbyy.com/de/vantage/self-hosted/v3.0/providers/azure.md) oder [Selbstverwaltetes Kubernetes](https://docs.abbyy.com/de/vantage/self-hosted/v3.0/providers/self-managed.md).

## API-Gruppe

| Gruppe | Version | Ressource |
| - | - | - |
| `vantage.abbyy.com` | `v1alpha1` | `Vantage` |

## Vantage

Vantage ist das Schema für die vantages-API

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `apiVersion` | `string` | Ja | vantage.abbyy.com/v1alpha1 |
| `kind` | `string` | Ja | Vantage |
| `metadata` | `object` | Ja | Informationen zu den Feldern von `metadata` finden Sie in der Dokumentation der Kubernetes-API. |
| `spec` | `object` | Ja | spec definiert den gewünschten Zustand von Vantage. Siehe [`spec`](#vantagespec). |
| `status` | `object` | Nein | status definiert den beobachteten Zustand von Vantage. Siehe [`status`](#vantagestatus). |

> [!NOTE]
>
> **`spec`-Validierung**: `!self.reportingEnabled || !has(self.databaseProvider) || self.databaseProvider == 'SqlServer'`: reportingEnabled erfordert databaseProvider 'SqlServer'; Reporting ist nur mit SQL Server verfügbar und kann nicht mit PostgreSQL verwendet werden

## Vantage.spec

spec definiert den gewünschten Zustand von Vantage

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `dnsRecord` | `string` | Ja | dnsRecord ist der DNS-Eintrag für die Vantage-Installation. Format: `hostname`. |
| `mailFrom` | `string` | Ja | mailFrom ist die E-Mail-Adresse, die als Absender für ausgehende E-Mails verwendet wird. Format: `email`. |
| `platformAdminEmail` | `string` | Ja | platformAdminEmail ist die E-Mail-Adresse des Plattform-Administrators. Format: `email`. |
| `secrets` | `object` | Ja | secrets wählt den Provider für Secrets aus und konfiguriert ihn. Es muss genau ein Provider angegeben werden. Siehe [`secrets`](#vantagespecsecrets). |
| `updatePolicy` | `object` | Ja | updatePolicy steuert, wie der Bediener Vantage-Upgrades durchführt. Siehe [`updatePolicy`](#vantagespecupdatepolicy). |
| `vantageVersion` | `string` | Ja | vantageVersion ist die Vantage-Cloud-Version, aus der das Release erstellt wurde. Der Wert dient nur zur Information und hat keinen Einfluss darauf, was installiert wird. |
| `workloads` | `object` | Ja | workloads konfiguriert die ConfigMap mit Daten zu charts und Images. Siehe [`workloads`](#vantagespecworkloads). |
| `argocd` | `object` | Nein | argocd konfiguriert die Argo-CD-Ressourcen, die der Bediener zur Installation der Vantage-Workloads erstellt. Lassen Sie das Feld weg, um in das Projekt "default" zu installieren. Siehe [`argocd`](#vantagespecargocd). |
| `databaseProvider` | `enum` | Nein | databaseProvider legt die Datenbank-Engine fest, die von allen Vantage-Services verwendet wird. Standard: `SqlServer` · Enum: `SqlServer, PostgreSQL`. |
| `debug` | `boolean` | Nein | debug legt fest, ob Workloads im Debug-Modus installiert werden. Standard: `false`. |
| `idReadingEnabled` | `boolean` | Nein | idReadingEnabled aktiviert die Funktionen zur ID-Erkennung. Standard: `false`. |
| `keda` | `object` | Nein | keda konfiguriert die KEDA-Einstellungen. Ist das Feld nicht angegeben, ist die KEDA-Unterstützung deaktiviert. Siehe [`keda`](#vantagespeckeda). |
| `minimalInstall` | `boolean` | Nein | minimalInstall sorgt dafür, dass Workloads mit minimaler Ressourcenkonfiguration bereitgestellt werden. Standard: `false`. |
| `ociMigration` | `object` | Nein | ociMigration konfiguriert das Kopieren von Artefakten aus einer Quell-Registry in ein Ziel vor der Installation. Lassen Sie das Feld ganz weg oder setzen Sie enabled=false, um die Migration zu überspringen. Ist die Migration aktiviert, ist destination erforderlich. Siehe [`ociMigration`](#vantagespecocimigration). |
| `reportingEnabled` | `boolean` | Nein | reportingEnabled aktiviert die Berichtsfunktionen von SQL Server. Nur für SQL Server – der Reporting-Workload führt SQL-Server-spezifische Migrationen aus und wird unter PostgreSQL nicht unterstützt. Wird dieser Wert auf true gesetzt, ist databaseProvider 'SqlServer' erforderlich (durch die obige Spec-Validierung erzwungen); in Kombination mit PostgreSQL wird er abgelehnt. Standard: `false`. |
| `reverseProxy` | `boolean` | Nein | reverseProxy stellt sicher, dass Vantage-Anwendungsservices für den Betrieb hinter einem Reverse-Proxy konfiguriert sind, der TLS terminiert. Standard: `false`. |
| `serviceAccountName` | `string` | Nein | serviceAccountName ist der Name des Dienstkontos, das für Vantage-Workloads verwendet wird. Lassen Sie das Feld weg, um das Standard-Dienstkonto zu verwenden. Einzelne Workloads können diesen Wert über workloads.serviceAccounts überschreiben. Standard: `default` · Minimale Länge: `1`. |
| `smtp` | `object` | Nein | smtp konfiguriert den SMTP-Mailserver. Ist das Feld nicht angegeben, wird Sendgrid als Mail-Provider verwendet. Siehe [`smtp`](#vantagespecsmtp). |
| `storage` | `object` | Nein | storage konfiguriert Advanced-Speicheroptionen. Siehe [`storage`](#vantagespecstorage). |
| `techcore` | `object` | Nein | techcore enthält die Konfiguration für die TechCore-Verarbeitungsengine. Siehe [`techcore`](#vantagespectechcore). |

> [!NOTE]
>
> **Validierung von `secrets`**: `has(self.kubernetes) != has(self.azure)`: Es muss genau ein Provider angegeben werden

> [!NOTE]
>
> **`updatePolicy`-Validierung**: `!has(self.auto)`: Automatische Updates werden noch nicht unterstützt

> [!NOTE]
>
> **`updatePolicy`-Validierung**: `(has(self.auto) ? 1 : 0) + (has(self.manual) ? 1 : 0) == 1`: Es muss genau eine Aktualisierungsrichtlinie angegeben werden

> [!NOTE]
>
> **`ociMigration`-Validierung**: `!has(self.enabled) || self.enabled == false || has(self.destination)`: Wenn ociMigration aktiviert ist, muss ein Ziel (destination) angegeben werden

> [!NOTE]
>
> **`storage`-Validierung**: `!has(self.s3)`: S3-Speicher wird noch nicht unterstützt

> [!NOTE]
>
> **`storage`-Validierung**: `(has(self.azure) ? 1 : 0) + (has(self.s3) ? 1 : 0) + (has(self.custom) ? 1 : 0) <= 1`: Es darf höchstens ein Speicher-Provider angegeben werden

## Vantage.spec.secrets

secrets wählt den Provider für Secrets aus und konfiguriert ihn.
Es muss genau ein Provider angegeben werden.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `azure` | `object` | Nein | azure konfiguriert Azure Key Vault (über den Secrets Store CSI-Treiber) als Quelle für Secrets. Siehe [`azure`](#vantagespecsecretsazure). |
| `kubernetes` | `object` | Nein | kubernetes konfiguriert Kubernetes-native Secrets als Quelle für Secrets. Siehe [`kubernetes`](#vantagespecsecretskubernetes). |

## Vantage.spec.secrets.azure

azure konfiguriert Azure Key Vault (über den Secrets Store CSI-Treiber) als Quelle für Secrets.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `keyVaultName` | `string` | Ja | keyVaultName ist der Azure Key Vault, in dem die Secrets gespeichert sind. |
| `tenantId` | `string` | Ja | tenantId ist der Azure AD-Mandant, dem der Key Vault gehört. |
| `clientId` | `string` | Nein | clientId ist die Azure AD-Client-ID der benutzerzugewiesenen verwalteten Identität, die Lesezugriff auf den Key Vault hat. Erforderlich, wenn identityMode „workloadIdentity“ ist (Standardwert). |
| `identityMode` | `enum` | Nein | identityMode legt fest, wie sich der CSI-Treiber bei Azure authentifiziert. Standard: `workloadIdentity` · Enum: `workloadIdentity, podIdentity, vmManagedIdentity`. |
| `objects` | `map[string]object` | Nein | objects überschreibt optional die Zuordnung eines Secret-Alias (wie in workloads-secrets.yml referenziert) zu einem bestimmten Key Vault-Objekt. Ist ein Alias nicht in dieser Map enthalten, wird der Alias selbst als Name des Key Vault-Objekts verwendet und das Objekt mit dem Typ „secret“ abgerufen. Siehe [`objects`](#vantagespecsecretsazureobjectskey). |
| `userAssignedIdentityID` | `string` | Nein | userAssignedIdentityID ist die Client-ID der benutzerzugewiesenen verwalteten Identität, die verwendet wird, wenn identityMode „vmManagedIdentity“ ist. |

## Vantage.spec.secrets.azure.objects\[key]

AzureSecretObjectConfig beschreibt ein einzelnes Key-Vault-Objekt, das einem
Secret-Alias zugrunde liegt.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `objectName` | `string` | Ja | objectName ist der Name des Objekts in Azure Key Vault. |
| `objectType` | `enum` | Nein | objectType gibt die Art des Key-Vault-Objekts an. Standardwert ist „secret“. Standard: `secret` · Enum: `secret, key, cert`. |
| `objectVersion` | `string` | Nein | objectVersion legt eine bestimmte Version des Key-Vault-Objekts fest. Standardmäßig wird die neueste Version verwendet. |

## Vantage.spec.secrets.kubernetes

kubernetes konfiguriert Kubernetes-native Secrets als Quelle für Secrets.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `objects` | `map[string]object` | Nein | objects legt die verwendeten Kubernetes-Secrets fest. Ist dieser Wert nicht definiert, werden die Standardnamen der Secrets verwendet. Siehe [`objects`](#vantagespecsecretskubernetesobjectskey). |

## Vantage.spec.secrets.kubernetes.objects\[key]

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `secretName` | `string` | Ja | secretName ist der Name des Kubernetes-Secrets |

## Vantage.spec.updatePolicy

updatePolicy legt fest, wie der Bediener Vantage-Upgrades handhabt.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `manual` | `object` | Nein | manual deaktiviert automatische Upgrades. Upgrades erfolgen durch die Installation einer neuen Version des Helm-Charts des Bedieners. |

Noch nicht unterstützt. Der Bediener lehnt jede Ressource ab, in der diese Felder gesetzt sind.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `auto` | `object` | Nein | `auto` aktiviert automatische Versions-Upgrades. Noch nicht implementiert. Siehe [`auto`](#vantagespecupdatepolicyauto). |

## Vantage.spec.updatePolicy.auto

auto aktiviert automatische Versions-Upgrades. Noch nicht implementiert.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `releaseURL` | `string` | Ja | releaseURL ist die URL, von der das Vantage-Release-Bundle abgerufen wird. Format: `uri`. |

## Vantage.spec.workloads

workloads konfiguriert die ConfigMap, die Daten zu charts und Images enthält

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `configMap` | `string` | Ja | configMap ist der Name der ConfigMap, die die Workloads-Daten enthält |
| `metadataTemplateKey` | `string` | Ja | metadataTemplateKey ist der Schlüssel in der ConfigMap, der die Metadatenvorlage für die Installation der charts enthält |
| `secretsKey` | `string` | Ja | secrets ist der Schlüssel in der ConfigMap, der die Metadaten der secrets enthält. |
| `workloadsKey` | `string` | Ja | workloadsKey ist der Schlüssel in der ConfigMap, der die Liste der charts und Images enthält |
| `additionalMetadataKey` | `string` | Nein | additionalMetadataKey ist der Schlüssel in der ConfigMap, der zusätzliche Metadaten zur Installation der charts enthält |
| `pods` | `object` | Nein | pods konfiguriert Metadaten, die den pods der Workloads hinzugefügt werden. Siehe [`pods`](#vantagespecworkloadspods). |
| `serviceAccounts` | `object` | Nein | serviceAccounts überschreibt spec.serviceAccountName für bestimmte Workloads. Siehe [`serviceAccounts`](#vantagespecworkloadsserviceaccounts). |

## Vantage.spec.workloads.pods

pods konfiguriert Metadaten, die den pods der Workloads hinzugefügt werden.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `charts` | `map[string]object` | Nein | charts ordnet chart-Namen Metadaten zu, die den pods der Workloads des jeweiligen charts hinzugefügt werden – zusätzlich zu den Metadaten für alle Workloads (und mit Vorrang vor diesen). Siehe [`charts`](#vantagespecworkloadspodschartskey). |
| `labels` | `map[string]string` | Nein | labels werden den pods aller Workloads hinzugefügt. |

## Vantage.spec.workloads.pods.charts\[key]

ChartPodsConfig definiert Metadaten, die den pods der Workloads innerhalb eines einzelnen Vantage-Helm-Charts hinzugefügt werden.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `deployment` | `object` | Nein | Bereitstellung konfiguriert die pods der Bereitstellung des Charts. Siehe [`deployment`](#vantagespecworkloadspodschartskeydeployment). |
| `migrator` | `object` | Nein | migrator konfiguriert die pods des Migrator-Jobs des Charts. Siehe [`migrator`](#vantagespecworkloadspodschartskeymigrator). |
| `statefulSet` | `object` | Nein | statefulSet konfiguriert die pods des StatefulSets des Charts. Siehe [`statefulSet`](#vantagespecworkloadspodschartskeystatefulset). |

## Vantage.spec.workloads.pods.charts\[key].deployment

`deployment` konfiguriert die pods der Bereitstellung des charts.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `labels` | `map[string]string` | Nein | `labels` werden den pods des workloads hinzugefügt. |

## Vantage.spec.workloads.pods.charts\[key].migrator

`migrator` konfiguriert die pods des Migrator-Jobs des charts.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `labels` | `map[string]string` | Nein | `labels` werden den pods des workloads hinzugefügt. |

## Vantage.spec.workloads.pods.charts\[key].statefulSet

statefulSet konfiguriert die pods des StatefulSets im chart.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `labels` | `map[string]string` | Nein | labels werden zu den pods des workloads hinzugefügt. |

## Vantage.spec.workloads.serviceAccounts

serviceAccounts überschreibt spec.serviceAccountName für bestimmte Workloads.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `charts` | `map[string]object` | Nein | charts ordnet Chart-Namen die Dienstkonten zu, die von den Workloads des jeweiligen Charts verwendet werden. Workloads ohne Eintrag verwenden spec.serviceAccountName. Siehe [`charts`](#vantagespecworkloadsserviceaccountschartskey). |

## Vantage.spec.workloads.serviceAccounts.charts\[key]

ChartServiceAccountsConfig definiert die Konfiguration der Dienstkonten für Workloads innerhalb eines einzelnen Vantage-Helm-Charts.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `deployment` | `object` | Nein | Bereitstellung konfiguriert das Dienstkonto, das von der Bereitstellung (Bereitstellung) des Charts verwendet wird. Siehe [`deployment`](#vantagespecworkloadsserviceaccountschartskeydeployment). |
| `migrator` | `object` | Nein | migrator konfiguriert das Dienstkonto, das vom Migrator-Job des Charts verwendet wird. Siehe [`migrator`](#vantagespecworkloadsserviceaccountschartskeymigrator). |
| `statefulSet` | `object` | Nein | statefulSet konfiguriert das Dienstkonto, das vom StatefulSet des Charts verwendet wird. Siehe [`statefulSet`](#vantagespecworkloadsserviceaccountschartskeystatefulset). |

## Vantage.spec.workloads.serviceAccounts.charts\[key].deployment

`deployment` konfiguriert das Dienstkonto, das von der Bereitstellung des charts verwendet wird.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | Name des Dienstkontos. Minimale Länge: `1` · Maximale Länge: `253` · Muster: `^[a-z0-9]([-a-z0-9.]*[a-z0-9])?$`. |

## Vantage.spec.workloads.serviceAccounts.charts\[key].migrator

`migrator` konfiguriert das Dienstkonto, das vom Migrator-Job des charts verwendet wird.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | Name des Dienstkontos. Minimale Länge: `1` · Maximale Länge: `253` · Muster: `^[a-z0-9]([-a-z0-9.]*[a-z0-9])?$`. |

## Vantage.spec.workloads.serviceAccounts.charts\[key].statefulSet

statefulSet konfiguriert das Dienstkonto, das vom StatefulSet des charts verwendet wird.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | Name des Dienstkontos. Minimale Länge: `1` · Maximale Länge: `253` · Muster: `^[a-z0-9]([-a-z0-9.]*[a-z0-9])?$`. |

## Vantage.spec.argocd

argocd konfiguriert die Argo-CD-Ressourcen, die der Bediener erstellt, um Vantage-Workloads zu installieren.
Wenn Sie es weglassen, erfolgt die Installation im Projekt „default“.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `namespace` | `string` | Nein | namespace ist der Namensraum, in dem Argo CD installiert ist. Dort erstellt der Bediener das ApplicationSet und Argo CD die Applications. Er kann nach dem Festlegen nicht mehr geändert werden. Standard: `argocd` · Minimale Länge: `1`. |
| `project` | `string` | Nein | project ist das Argo-CD-AppProject, zu dem die generierten Applications gehören. Das Projekt muss den Ziel-Cluster und -Namensraum zulassen, andernfalls verweigert Argo CD deren Synchronisierung. Standard: `default` · Minimale Länge: `1`. |

> [!NOTE]
>
> **Validierung von `namespace`**: `self == oldSelf`: namespace ist unveränderlich

## Vantage.spec.keda

keda konfiguriert die KEDA-Einstellungen. Ohne Angabe ist die KEDA-Unterstützung deaktiviert.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `enabled` | `boolean` | Nein | enabled legt fest, ob für Workloads, die dies unterstützen, eine KEDA-basierte automatische Skalierung verwendet wird. Standard: `false`. |

## Vantage.spec.ociMigration

ociMigration konfiguriert das Kopieren von Artefakten aus einer Quell-Registry in ein Ziel vor der Installation.
Lassen Sie den Abschnitt vollständig weg oder setzen Sie enabled=false, um die Migration zu überspringen.
Wenn die Migration aktiviert ist, ist destination erforderlich.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `concurrency` | `integer` | Ja | concurrency gibt an, wie viele Artefakte parallel kopiert werden. Standard: `5` · Minimum: `1`. |
| `destination` | `object` | Nein | destination ist das Ziel, in das die Artefakte kopiert werden. Siehe [`destination`](#vantagespecocimigrationdestination). |
| `enabled` | `boolean` | Nein | enabled aktiviert die OCI-Migration. Standard: `true`. |
| `imagePullSecrets` | `[]object` | Nein | imagePullSecrets ist eine optionale Liste von Verweisen auf secrets im selben Namensraum, die zum Abrufen des Bediener-Images verwendet werden, mit dem der OCI-Migrations-Job in diesem Namensraum ausgeführt wird. Siehe [`imagePullSecrets`](#vantagespecocimigrationimagepullsecretsindex). |
| `labels` | `map[string]JSON` | Nein | labels ist die Gruppe von labels, die auf den OCI-Migrations-Job und das pod-Template angewendet werden. Werte, die keine strings sind, werden mit \[fmt.Sprint] in Zeichenfolgen konvertiert |
| `resources` | `object` | Nein | resources sind die Rechenressourcen des Containers des OCI-Migrations-Jobs. Standardmäßig ist die CPU nicht begrenzt, sodass der Kopiervorgang kurzzeitig mehr Leistung abrufen kann. Legen Sie ein CPU-Limit fest, wenn die Richtlinien Ihres Clusters ein solches für jeden Container vorschreiben. Nur requests und limits werden berücksichtigt: Da der Job keine resourceClaims auf pod-Ebene deklariert, werden claims abgelehnt. Standard: `{"limits":{"memory":"512Mi"},"requests":{"cpu":"100m","memory":"128Mi"}}`. Siehe [`resources`](#vantagespecocimigrationresources). |
| `serviceAccountName` | `string` | Nein | serviceAccountName ist der Name des ServiceAccount, unter dem der OCI-Migrations-Job ausgeführt wird. |
| `sources` | `[]object` | Nein | sources sind die Anmeldedaten für den Zugriff auf Registries, aus denen Artefakte kopiert werden (z. B. JFrog). (Maximale Länge 20) Maximale Anzahl an Elementen: `20`. Siehe [`sources`](#vantagespecocimigrationsourcesindex). |

> [!NOTE]
>
> **`destination`-Validierung**: `!self.host.contains('/')`: host darf keinen Pfad enthalten – verwenden Sie für den Registry-Pfad das Feld repository

> [!NOTE]
>
> **`destination`-Validierung**: `!self.host.contains('://')`: host darf kein Schema enthalten (z. B. https\://)

> [!NOTE]
>
> **`resources`-Validierung**: `!has(self.claims) || size(self.claims) == 0`: resources.claims wird vom OCI-Migrations-Job nicht unterstützt

## Vantage.spec.ociMigration.destination

destination ist das Ziel, in das die Artefakte kopiert werden.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `host` | `string` | Ja | host ist der Hostname der Registry, optional mit Port (z. B. registry.example.com, registry.example.com:5000). Mindestlänge: `1`. |
| `credentialsRef` | `object` | Nein | credentialsRef verweist auf ein Secret, das Schlüssel für Benutzername und Kennwort enthält, oder auf ein Secret vom Typ kubernetes.io/dockerconfigjson. Hat, sofern angegeben, Vorrang vor username/password. Siehe [`credentialsRef`](#vantagespecocimigrationdestinationcredentialsref). |
| `password` | `string` | Nein | Kennwort für die Authentifizierung bei der Registry (im Klartext; verwenden Sie in Produktionsumgebungen credentialsRef) |
| `repository` | `string` | Nein | repository ist der Registry-Pfad bzw. Namensraum für die Artefakte (z. B. „abbyy-docker“, „vantage/images“). Muster: `^[a-z0-9]+([._-][a-z0-9]+)*(/[a-z0-9]+([._-][a-z0-9]+)*)*$`. |
| `username` | `string` | Nein | Benutzername für die Authentifizierung bei der Registry (im Klartext; verwenden Sie in Produktionsumgebungen credentialsRef) |
| `workloadIdentity` | `object` | Nein | workloadIdentity legt die Einstellungen fest, mit denen die Identität der Workload (Kubernetes-Dienstkonto) für den Zugriff auf die Registry verwendet wird. Siehe [`workloadIdentity`](#vantagespecocimigrationdestinationworkloadidentity). |

## Vantage.spec.ociMigration.destination.credentialsRef

credentialsRef verweist auf ein Secret, das Schlüssel für Benutzername und Kennwort enthält, oder auf ein Secret vom Typ kubernetes.io/dockerconfigjson.
Hat, sofern angegeben, Vorrang vor username/password.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | name ist der Name des Secrets |

## Vantage.spec.ociMigration.destination.workloadIdentity

workloadIdentity definiert Einstellungen, mit denen über die Identität der Workload (Kubernetes-Dienstkonto)
auf die Registry zugegriffen wird.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `audience` | `string` | Nein | audience ist der Endpunkt, über den das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |
| `clientId` | `string` | Nein | clientId ist die Client-ID, mit der das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |
| `tokenEndpoint` | `string` | Nein | tokenEndpoint ist der Endpunkt, über den das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |

## Vantage.spec.ociMigration.imagePullSecrets\[index]

LocalObjectReference enthält genügend Informationen, um das
referenzierte Objekt im selben Namensraum zu finden.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Nein | Name des referenzierten Objekts. Dieses Feld ist faktisch erforderlich, darf aus Gründen der Abwärtskompatibilität jedoch leer sein. Instanzen dieses Typs, bei denen dieses Feld leer ist, sind mit großer Wahrscheinlichkeit fehlerhaft. Weitere Informationen: [https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names) Standard: \`\`. |

## Vantage.spec.ociMigration.resources

resources sind die Rechenressourcen des Containers des OCI-Migrations-Jobs. Standardmäßig bleibt die
CPU unbegrenzt, damit der Kopiervorgang bei Bedarf mehr Leistung abrufen kann. Legen Sie auf Clustern, deren Richtlinien für
jeden Container ein CPU-Limit vorschreiben, ein solches Limit fest. Nur requests und limits werden berücksichtigt: Der Job deklariert keine resourceClaims auf pod-Ebene,
daher werden claims abgelehnt.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `limits` | `map[string]intorstring` | Nein | Limits gibt die maximal zulässige Menge an Rechenressourcen an. Weitere Informationen: [https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) |
| `requests` | `map[string]intorstring` | Nein | Requests gibt die mindestens erforderliche Menge an Rechenressourcen an. Wird Requests für einen Container nicht angegeben, wird standardmäßig der Wert von Limits verwendet, sofern dieser explizit festgelegt ist, andernfalls ein implementierungsabhängiger Wert. Requests darf Limits nicht überschreiten. Weitere Informationen: [https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) |

Noch nicht unterstützt. Der Bediener lehnt jede Ressource ab, in der diese Felder festgelegt sind.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `claims` | `[]object` | Nein | Claims führt die Namen der in spec.resourceClaims definierten Ressourcen auf, die dieser Container verwendet. Dieses Feld setzt das Feature-Gate DynamicResourceAllocation voraus. Dieses Feld ist unveränderlich. Es kann nur für Container festgelegt werden. Siehe [`claims`](#vantagespecocimigrationresourcesclaimsindex). |

## Vantage.spec.ociMigration.resources.claims\[index]

ResourceClaim verweist auf einen Eintrag in PodSpec.ResourceClaims.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | Der Name muss mit dem Namen eines Eintrags in pod.spec.resourceClaims des Pods übereinstimmen, in dem dieses Feld verwendet wird. Dadurch wird die entsprechende Ressource innerhalb eines Containers verfügbar. |
| `request` | `string` | Nein | Request ist der Name, der für eine Anfrage im referenzierten Claim gewählt wurde. Ist der Wert leer, wird alles aus dem Claim bereitgestellt, andernfalls nur das Ergebnis dieser Anfrage. |

## Vantage.spec.ociMigration.sources\[index]

ContainerRegistryConfig definiert die Verbindungseinstellungen für die Container-Registry.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `host` | `string` | Ja | host ist der Hostname der Registry, optional mit Port (z. B. registry.example.com, registry.example.com:5000). Minimale Länge: `1`. |
| `credentialsRef` | `object` | Nein | credentialsRef verweist auf ein Secret, das die Schlüssel für Benutzername und Kennwort enthält, oder auf ein Secret vom Typ kubernetes.io/dockerconfigjson. Hat, sofern angegeben, Vorrang vor username/password. Siehe [`credentialsRef`](#vantagespecocimigrationsourcesindexcredentialsref). |
| `password` | `string` | Nein | Kennwort für die Authentifizierung bei der Registry (Klartext; verwenden Sie in Produktionsumgebungen credentialsRef) |
| `repository` | `string` | Nein | repository ist der Registry-Pfad bzw. Namensraum für Artefakte (z. B. „abbyy-docker“, „vantage/images“). Muster: `^[a-z0-9]+([._-][a-z0-9]+)*(/[a-z0-9]+([._-][a-z0-9]+)*)*$`. |
| `username` | `string` | Nein | Benutzername für die Authentifizierung bei der Registry (Klartext; verwenden Sie in Produktionsumgebungen credentialsRef) |
| `workloadIdentity` | `object` | Nein | workloadIdentity definiert Einstellungen, um mit der Identität der Workload (Kubernetes-Dienstkonto) auf die Registry zuzugreifen. Siehe [`workloadIdentity`](#vantagespecocimigrationsourcesindexworkloadidentity). |

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

credentialsRef verweist auf ein Secret, das Schlüssel für Benutzername und Kennwort enthält, oder auf ein Secret vom Typ kubernetes.io/dockerconfigjson.
Falls angegeben, hat dieses Feld Vorrang vor username/password.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `name` | `string` | Ja | name ist der Name des Secrets |

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

workloadIdentity definiert die Einstellungen, mit denen die Identität der Workload (Kubernetes-Dienstkonto)
für den Zugriff auf die Registry verwendet wird.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `audience` | `string` | Nein | audience ist der Endpunkt, über den das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |
| `clientId` | `string` | Nein | clientId ist die Client-ID, mit der das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |
| `tokenEndpoint` | `string` | Nein | tokenEndpoint ist der Endpunkt, über den das Dienstkonto-Token gegen ein OAuth-Zugriffstoken ausgetauscht werden soll. |

## Vantage.spec.smtp

smtp konfiguriert den SMTP-Mailserver. Ist nichts angegeben, wird Sendgrid als Mail-Provider verwendet.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `host` | `string` | Ja | host ist der Hostname des SMTP-Servers |
| `login` | `string` | Nein | Anmeldename für die SMTP-Authentifizierung |
| `password` | `string` | Nein | Kennwort für die SMTP-Authentifizierung |
| `port` | `integer` | Nein | port ist der Port des SMTP-Servers. Standard: `587` · Format: `int32`. |
| `useSSL` | `boolean` | Nein | useSSL aktiviert TLS für SMTP-Verbindungen. Standard: `false`. |

## Vantage.spec.storage

`storage` konfiguriert Advanced-Speicheroptionen.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `azure` | `object` | Nein | `azure` konfiguriert das Azure-Speicher-Backend. |
| `custom` | `object` | Nein | `custom` konfiguriert ein benutzerdefiniertes Speicher-Backend. Siehe [`custom`](#vantagespecstoragecustom). |

Noch nicht unterstützt. Der Bediener lehnt jede Ressource ab, in der diese Felder gesetzt sind.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `s3` | `object` | Nein | s3 konfiguriert das S3-Speicher-Backend. Siehe [`s3`](#vantagespecstorages3). |

## Vantage.spec.storage.custom

custom konfiguriert ein benutzerdefiniertes Speicher-Backend.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `size` | `intorstring` | Ja | size legt die Größe des PVC fest. Standard: `300Gi` · Muster: `^(\+\|-)?(([0-9]+(\.[0-9]*)?)\|(\.[0-9]+))(([KMGTPE]i)\|[numkMGTPE]\|([eE](\+\|-)?(([0-9]+(\.[0-9]*)?)\|(\.[0-9]+))))?$`. |
| `storageClass` | `string` | Ja | storageClass legt die Storage-Klasse fest, die PVCs zum Mounten von Volumes des benutzerdefinierten Speicher-Backends verwenden. |

## Vantage.spec.storage.s3

s3 konfiguriert das S3-Speicher-Backend.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `buckets` | `object` | Nein | buckets konfiguriert die Namen der Speicher-Buckets. Siehe [`buckets`](#vantagespecstorages3buckets). |
| `region` | `string` | Nein | region konfiguriert die AWS-Region, die von S3-Clients verwendet wird |
| `scopedClientCredentials` | `object` | Nein | scopedClientCredentials konfiguriert den Speicher-Service so, dass er Clients kurzlebige Anmeldedaten im Gültigkeitsbereich eines einzelnen Speichers (STS AssumeRole) ausstellt, statt ihnen seine eigene schlüssellose Verbindung bereitzustellen. Siehe [`scopedClientCredentials`](#vantagespecstorages3scopedclientcredentials). |
| `uri` | `string` | Nein | uri konfiguriert den S3-Endpunkt (z. B. [https://s3.us-east-1.amazonaws.com](https://s3.us-east-1.amazonaws.com) oder einen S3-kompatiblen Service). Muster: `^https?://`. |

## Vantage.spec.storage.s3.buckets

`buckets` konfiguriert die Namen der Speicher-Buckets.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `archive` | `string` | Nein | `archive` konfiguriert den Namen des Archive-Buckets. |
| `permanent` | `string` | Nein | `permanent` konfiguriert den Namen des Permanent-Buckets. |
| `standard` | `string` | Nein | `standard` konfiguriert den Namen des Standard-Buckets. |
| `temporary` | `string` | Nein | `temporary` konfiguriert den Namen des Temporary-Buckets. |

## Vantage.spec.storage.s3.scopedClientCredentials

scopedClientCredentials konfiguriert den Speicher-Service so, dass er Clients statt seiner eigenen schlüssellosen Verbindung kurzlebige Anmeldedaten im Gültigkeitsbereich eines einzelnen Speichers (STS AssumeRole) bereitstellt.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `credentialsExpiration` | `string` | Nein | credentialsExpiration ist die Gültigkeitsdauer der jeweils ausgestellten Anmeldedaten als .NET-TimeSpan (z. B. 01:00:00). Standardwert: eine Stunde. Muster: `^([0-9]+\.)?[0-9]{1,2}:[0-9]{2}:[0-9]{2}$`. |
| `enabled` | `boolean` | Nein | enabled aktiviert die bereichsbezogenen Client-Anmeldedaten. |
| `roleArn` | `string` | Nein | roleArn ist die IAM-Rolle, die zum Ausstellen der Anmeldedaten übernommen wird. Auf AWS erforderlich. |
| `roleSessionName` | `string` | Nein | roleSessionName ist der Sitzungsname, der beim Übernehmen von roleArn verwendet wird. |
| `stsUri` | `string` | Nein | stsUri überschreibt den STS-Endpunkt, der andernfalls anhand der Region ermittelt wird. Muster: `^https?://`. |

## Vantage.spec.techcore

techcore enthält die Konfiguration für die TechCore-Verarbeitungsengine

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `versions` | `[]integer` | Ja | versions gibt die bereitzustellenden TechCore-Versionen an (verfügbar sind die Versionen 2, 3 und 4). Mindestanzahl an Elementen: `1` · Enum: `2, 3, 4`. |
| `nnTrainingWorkers` | `object` | Nein | nnTrainingWorkers konfiguriert die Trainings-Worker für neuronale Netze. Siehe [`nnTrainingWorkers`](#vantagespectechcorenntrainingworkers). |
| `workers` | `object` | Nein | workers dient zur Feinabstimmung der Bereitstellungen der TechCore-Worker und ihrer automatischen Skalierung. Alle Felder werden nur wirksam, wenn keda.enabled auf true gesetzt ist. Eine Ausnahme bildet replicaCount, das zusätzlich die Replikate des Deployments festlegt. Siehe [`workers`](#vantagespectechcoreworkers). |

## Vantage.spec.techcore.nnTrainingWorkers

nnTrainingWorkers konfiguriert die Trainings-Worker für neuronale Netze.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `enabled` | `boolean` | Nein | enabled aktiviert die Trainings-Worker für neuronale Netze. Standard: `false`. |
| `gpu` | `boolean` | Nein | gpu aktiviert die GPU-Beschleunigung für die Trainings-Worker. Standard: `false`. |

## Vantage.spec.techcore.workers

workers konfiguriert die Bereitstellungen der TechCore-Worker und deren automatische Skalierung. Alle Felder werden nur wirksam,
wenn keda.enabled auf true gesetzt ist. Einzige Ausnahme ist replicaCount, das zusätzlich die Replikate des Deployments festlegt.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `defaults` | `object` | Nein | defaults gilt für alle TechCore-Worker aller bereitgestellten Versionen. Siehe [`defaults`](#vantagespectechcoreworkersdefaults). |
| `overrides` | `map[string]object` | Nein | overrides gilt für einen einzelnen Worker-Typ und wird über alle bereitgestellten TechCore-Versionen hinweg mit defaults zusammengeführt, wobei die Werte aus overrides Vorrang haben. Die Schlüssel sind Worker-Typen ohne Versionspräfix, z. B. „ocr“, „extraction“, „classification-training“. Ein Schlüssel, der keinem bereitgestellten Worker entspricht, hat keine Auswirkung. Siehe [`overrides`](#vantagespectechcoreworkersoverrideskey). |

## Vantage.spec.techcore.workers.defaults

defaults gilt für jeden TechCore-Worker jeder bereitgestellten Version.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `kedaActiveThreadsThreshold` | `integer` | Nein | kedaActiveThreadsThreshold ist die Anzahl freier Worker, die verfügbar gehalten werden. Standardwert: 1. Minimum: `1`. |
| `kedaThreshold` | `integer` | Nein | kedaThreshold ist die Warteschlangenlänge pro Replikat, ab der hochskaliert wird. Bei niedrigeren Werten wird früher skaliert. Standardwert: 5. Minimum: `1`. |
| `maxReplicaCount` | `integer` | Nein | maxReplicaCount ist die Obergrenze, bis zu der die automatische Skalierung hochskaliert. Die Worker-Charts verwenden bei einer Minimalinstallation standardmäßig 20; für eine vollständige Installation kann jedes Chart einen eigenen Wert festlegen. Minimum: `1`. |
| `replicaCount` | `integer` | Nein | replicaCount ist die Anzahl der Worker, die bereits vor dem Eintreffen von Last laufen, und zugleich die Untergrenze, von der aus die automatische Skalierung hochskaliert. Erfordert keda.enabled. Die Worker-Charts verwenden bei einer Minimalinstallation standardmäßig 1; für eine vollständige Installation kann jedes Chart einen eigenen Wert festlegen. Verwenden Sie scaling.scaleInactiveToZero, damit ein Worker auf null herunterskaliert werden kann: Ein replicaCount von 0 wird bei einer Minimalinstallation als nicht gesetzt und bei einer vollständigen Installation als null interpretiert. Minimum: `1`. |
| `resources` | `object` | Nein | resources legt fest, welche Ressourcen ein einzelner Worker erhält. Aus diesen Werten pro Worker werden die Summen im Dimensionierungsleitfaden berechnet; Änderungen wirken sich daher auf den Ressourcenbedarf der Installation aus. Siehe [`resources`](#vantagespectechcoreworkersdefaultsresources). |
| `scaleDownStabilizationWindowSecs` | `integer` | Nein | scaleDownStabilizationWindowSecs gibt an, wie lange die Last niedrig bleiben muss, bevor Replikate entfernt werden. Standardwert: 300. Minimum: `0`. |
| `scaleUpPolicyPodsCount` | `integer` | Nein | scaleUpPolicyPodsCount gibt an, wie viele Replikate alle 30 Sekunden hinzugefügt werden dürfen. Standardwert: 15. Minimum: `1`. |
| `scaling` | `object` | Nein | scaling konfiguriert das Verhalten der automatischen Skalierung; ohne keda.enabled hat diese Einstellung keine Wirkung. Siehe [`scaling`](#vantagespectechcoreworkersdefaultsscaling). |

## Vantage.spec.techcore.workers.defaults.resources

resources legt fest, welche Ressourcen einem einzelnen Worker zugewiesen werden. Aus diesen Werten pro Worker setzen sich die Summen im
Leitfaden zur Dimensionierung zusammen. Wenn Sie sie ändern, ändert sich daher auch der Ressourcenbedarf der Installation.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `cpu` | `integer` | Nein | cpu ist das CPU-Limit in Kernen. Die Anfrage wird daraus abgeleitet: 90 % des Limits oder ein Kern weniger, je nachdem, welcher Wert höher ist. Bei den meisten Workern ist der Standardwert 1; bei den trainings-Workern ist er höher. Minimum: `1`. |
| `gpu` | `integer` | Nein | gpu ist die Anzahl der GPUs und wird sowohl als Anfrage als auch als Limit festgelegt. Setzt GPU-Knoten voraus, auf denen der Worker eingeplant werden kann. Minimum: `1`. |
| `memoryGB` | `integer` | Nein | memoryGB ist das Arbeitsspeicher-Limit in GiB. Der Wert unterscheidet sich je nach Worker; bei OCR ist der Standardwert 8. Minimum: `1`. |
| `memoryRequestGB` | `integer` | Nein | memoryRequestGB ist die Arbeitsspeicher-Anfrage in GiB. Wenn der Wert nicht gesetzt ist, beträgt er das 0,9-Fache von memoryGB. Bringt das chart des Workers jedoch eine eigene Anfrage mit, wird diese unverändert übernommen und richtet sich nicht nach memoryGB. Setzen Sie diesen Wert immer dann, wenn Sie memoryGB auf einen anderen Wert als den Standardwert des Workers setzen. Minimum: `1`. |

## Vantage.spec.techcore.workers.defaults.scaling

scaling konfiguriert das Verhalten der automatischen Skalierung, das ohne keda.enabled keine Auswirkung hat.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `cooldown` | `integer` | Nein | cooldown gibt in Sekunden an, wie lange ein Worker aktiv bleibt, nachdem seine Warteschlange geleert wurde. Standardwert: 300. Minimum: `0`. |
| `cron` | `object` | Nein | cron hält Worker während der Arbeitszeiten betriebsbereit und lässt sie außerhalb dieser Zeiten auf null skalieren. Erfordert scaleInactiveToZero und hat keine Auswirkung auf Worker, die ausschließlich die Warteschlange mit niedriger Priorität bedienen. Siehe [`cron`](#vantagespectechcoreworkersdefaultsscalingcron). |
| `growRate` | `string` | Nein | growRate skaliert Replikate vorausschauend über den aktuellen Bedarf hinaus – als Multiplikator der Worker, die in den letzten fünf Minuten ausgelastet waren. Werte kleiner oder gleich 1 deaktivieren die Funktion. Standardwert: 1.3 für Worker mit hoher Priorität, für alle übrigen deaktiviert. Muster: `^[0-9]+(\.[0-9]+)?$`. |
| `scaleInactiveToZero` | `boolean` | Nein | scaleInactiveToZero entfernt alle Replikate eines inaktiven Workers. Dadurch werden in der Zwischenzeit Prozessorkerne eingespart, beim nächsten Dokument ist jedoch ein Kaltstart erforderlich. |

## Vantage.spec.techcore.workers.defaults.scaling.cron

cron hält Worker während der Arbeitszeiten aktiv und lässt sie außerhalb dieser Zeiten auf null skalieren. Setzt
scaleInactiveToZero voraus und hat keine Auswirkung auf Worker, die ausschließlich die Warteschlange mit niedriger Priorität bedienen.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `dayEnd` | `string` | Nein | dayEnd gibt im cron-Format an, ab wann Worker wieder auf null skaliert werden dürfen. Standardwert: „0 22 \* \* 1-5“. |
| `dayStart` | `string` | Nein | dayStart gibt im cron-Format an, wann Worker hochgefahren werden. Standardwert: „0 7 \* \* 1-5“. |
| `timezone` | `string` | Nein | timezone ist die Zeitzone, in der die unten stehenden Uhrzeiten angegeben werden, als IANA-Name, z. B. „America/New\_York“. Erforderlich, sobald die Standardwerte und etwaige Überschreibungen zusammengeführt wurden; kann hier weggelassen und geerbt werden. |

## Vantage.spec.techcore.workers.overrides\[key]

WorkerConfig definiert die anpassbaren Einstellungen eines TechCore-Workers. Bei nicht gesetzten Feldern bleibt der Standardwert des jeweiligen Worker-charts
erhalten.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `kedaActiveThreadsThreshold` | `integer` | Nein | kedaActiveThreadsThreshold ist die Anzahl freier Worker, die verfügbar gehalten werden. Standardwert: 1. Minimum: `1`. |
| `kedaThreshold` | `integer` | Nein | kedaThreshold ist die Warteschlangenlänge pro Replikat, ab der hochskaliert wird. Bei niedrigeren Werten wird früher skaliert. Standardwert: 5. Minimum: `1`. |
| `maxReplicaCount` | `integer` | Nein | maxReplicaCount ist die Obergrenze, bis zu der die automatische Skalierung hochskaliert. Die Worker-charts verwenden bei einer Minimalinstallation standardmäßig 20; bei einer vollständigen Installation kann jedes chart einen eigenen Wert festlegen. Minimum: `1`. |
| `replicaCount` | `integer` | Nein | replicaCount ist die Anzahl der Worker, die bereits vor dem Eintreffen von Last ausgeführt werden, und zugleich die Untergrenze, von der aus die automatische Skalierung hochskaliert. Erfordert keda.enabled. Die Worker-charts verwenden bei einer Minimalinstallation standardmäßig 1; bei einer vollständigen Installation kann jedes chart einen eigenen Wert festlegen. Verwenden Sie scaling.scaleInactiveToZero, damit ein Worker auf null herunterskaliert werden kann: Ein replicaCount von 0 wird bei einer Minimalinstallation als nicht gesetzt und bei einer vollständigen Installation als null interpretiert. Minimum: `1`. |
| `resources` | `object` | Nein | resources legt fest, welche Ressourcen ein einzelner Worker erhält. Aus diesen Werten pro Worker werden die Summen im Dimensionierungsleitfaden berechnet; Änderungen wirken sich daher auf den Ressourcenbedarf der Installation aus. Siehe [`resources`](#vantagespectechcoreworkersoverrideskeyresources). |
| `scaleDownStabilizationWindowSecs` | `integer` | Nein | scaleDownStabilizationWindowSecs gibt an, wie lange die Last niedrig bleiben muss, bevor Replikate entfernt werden. Standardwert: 300. Minimum: `0`. |
| `scaleUpPolicyPodsCount` | `integer` | Nein | scaleUpPolicyPodsCount gibt an, wie viele Replikate alle 30 Sekunden hinzugefügt werden dürfen. Standardwert: 15. Minimum: `1`. |
| `scaling` | `object` | Nein | scaling konfiguriert das Verhalten der automatischen Skalierung; ohne keda.enabled haben diese Einstellungen keine Wirkung. Siehe [`scaling`](#vantagespectechcoreworkersoverrideskeyscaling). |

## Vantage.spec.techcore.workers.overrides\[key].resources

resources legt fest, welche Ressourcen einem einzelnen Worker zugewiesen werden. Aus diesen Werten pro Worker setzen sich die Summen im
Dimensionierungsleitfaden zusammen. Wenn Sie sie ändern, ändert sich also auch der Ressourcenbedarf der Installation.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `cpu` | `integer` | Nein | cpu ist das CPU-Limit in Kernen. Die Anfrage wird daraus abgeleitet und beträgt 90 % des Limits oder einen Kern weniger, je nachdem, welcher Wert höher ist. Bei den meisten Workern ist der Standardwert 1, bei den Trainings-Workern höher. Minimum: `1`. |
| `gpu` | `integer` | Nein | gpu ist die Anzahl der GPUs und wird sowohl als Anfrage als auch als Limit gesetzt. Erfordert GPU-Knoten, auf denen der Worker eingeplant werden kann. Minimum: `1`. |
| `memoryGB` | `integer` | Nein | memoryGB ist das Arbeitsspeicherlimit in GiB. Der Wert variiert je nach Worker; für Optical Character Recognition (OCR) beträgt der Standardwert 8. Minimum: `1`. |
| `memoryRequestGB` | `integer` | Nein | memoryRequestGB ist die Arbeitsspeicher-Anfrage in GiB. Ist der Wert nicht gesetzt, beträgt er das 0,9-Fache von memoryGB – es sei denn, das chart des Workers bringt eine eigene Anfrage mit. Diese wird dann unverändert übernommen und richtet sich nicht nach memoryGB. Setzen Sie diesen Wert immer dann, wenn memoryGB vom Standardwert des Workers abweicht. Minimum: `1`. |

## Vantage.spec.techcore.workers.overrides\[key].scaling

scaling konfiguriert das Verhalten der automatischen Skalierung, das ohne keda.enabled keine Auswirkung hat.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `cooldown` | `integer` | Nein | cooldown gibt in Sekunden an, wie lange ein Worker aktiv bleibt, nachdem seine Warteschlange leer ist. Standardwert: 300. Minimum: `0`. |
| `cron` | `object` | Nein | cron hält Worker während der Arbeitszeiten betriebsbereit und lässt sie außerhalb dieser Zeiten auf null skalieren. Erfordert scaleInactiveToZero und hat keine Auswirkung auf Worker, die ausschließlich die Warteschlange mit niedriger Priorität bedienen. Siehe [`cron`](#vantagespectechcoreworkersoverrideskeyscalingcron). |
| `growRate` | `string` | Nein | growRate skaliert Replikate vorausschauend über den aktuellen Bedarf hinaus, und zwar als Multiplikator der Worker, die in den letzten fünf Minuten ausgelastet waren. Werte kleiner oder gleich 1 deaktivieren diese Funktion. Standardwert: 1.3 für Worker mit hoher Priorität, für alle anderen deaktiviert. Muster: `^[0-9]+(\.[0-9]+)?$`. |
| `scaleInactiveToZero` | `boolean` | Nein | scaleInactiveToZero entfernt alle Replikate eines inaktiven Workers. Dadurch werden in der Zwischenzeit Kerne frei, beim nächsten Dokument ist jedoch ein Kaltstart erforderlich. |

## Vantage.spec.techcore.workers.overrides\[key].scaling.cron

cron hält Worker während der Arbeitszeiten aktiv und erlaubt, sie außerhalb dieser Zeiten auf null herunterzuskalieren. Setzt
scaleInactiveToZero voraus und hat keine Auswirkung auf Worker, die ausschließlich die Warteschlange mit niedriger Priorität bedienen.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `dayEnd` | `string` | Nein | dayEnd legt im cron-Format fest, ab wann Worker wieder auf null herunterskaliert werden dürfen. Standardwert: "0 22 \* \* 1-5". |
| `dayStart` | `string` | Nein | dayStart legt im cron-Format fest, wann Worker hochgefahren werden. Standardwert: "0 7 \* \* 1-5". |
| `timezone` | `string` | Nein | timezone ist die Zeitzone, in der die zugehörigen Uhrzeiten angegeben sind, als IANA-Name, z. B. "America/New\_York". Erforderlich, sobald die Standardwerte und etwaige Überschreibungen zusammengeführt wurden; kann hier weggelassen und geerbt werden. |

## Vantage.status

status definiert den beobachteten Zustand von Vantage

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `availableVersions` | `[]string` | Nein | availableVersions ist die Liste der Versionen, die über die Release-URL verfügbar sind. |
| `conditions` | `[]object` | Nein | conditions beschreiben den aktuellen Zustand der Vantage-Ressource. Jede Bedingung hat einen eindeutigen Typ und gibt den Status eines bestimmten Aspekts der Ressource wieder. Zu den Standard-Bedingungstypen gehören: - „Available“: Die Ressource ist voll funktionsfähig - „Progressing“: Die Ressource wird erstellt oder aktualisiert - „Degraded“: Die Ressource konnte ihren gewünschten Zustand nicht erreichen oder aufrechterhalten. Der Status jeder Bedingung ist True, False oder Unknown. Siehe [`conditions`](#vantagestatusconditionsindex). |
| `degradationReasons` | `[]object` | Nein | degradationReasons geben die Gründe für den beeinträchtigten Zustand der Installation an. Siehe [`degradationReasons`](#vantagestatusdegradationreasonsindex). |
| `installedVantageVersion` | `string` | Nein | installedVantageVersion ist die aktuell ausgeführte Version. |
| `observedGeneration` | `integer` | Nein | observedGeneration ist die Generation der Spec, die vom Controller „verarbeitet“ wurde. Format: `int64`. |

## Vantage.status.conditions\[index]

Eine Bedingung enthält Details zu einem Aspekt des aktuellen Zustands dieser API-Ressource.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `lastTransitionTime` | `string` | Ja | lastTransitionTime ist der Zeitpunkt, zu dem die Bedingung zuletzt von einem Status in einen anderen gewechselt ist. Dies sollte der Zeitpunkt sein, zu dem sich die zugrunde liegende Bedingung geändert hat. Ist dieser nicht bekannt, kann stattdessen der Zeitpunkt verwendet werden, zu dem sich das API-Feld geändert hat. Format: `date-time`. |
| `message` | `string` | Ja | message ist eine für Menschen lesbare Nachricht mit Details zum Übergang. Sie kann ein leerer String sein. Maximale Länge: `32768`. |
| `reason` | `string` | Ja | reason enthält einen programmatischen Bezeichner, der den Grund für den letzten Übergang der Bedingung angibt. Produzenten bestimmter Bedingungstypen können erwartete Werte und deren Bedeutungen für dieses Feld definieren und festlegen, ob die Werte als garantierte API gelten. Der Wert sollte eine CamelCase-Zeichenfolge sein. Dieses Feld darf nicht leer sein. Minimale Länge: `1` · Maximale Länge: `1024` · Muster: `^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$`. |
| `status` | `enum` | Ja | Status der Bedingung; einer der Werte True, False oder Unknown. Enum: `True, False, Unknown`. |
| `type` | `string` | Ja | Typ der Bedingung in CamelCase oder im Format foo.example.com/CamelCase. Maximale Länge: `316` · Muster: `^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$`. |
| `observedGeneration` | `integer` | Nein | observedGeneration gibt die .metadata.generation an, auf deren Grundlage die Bedingung festgelegt wurde. Ist .metadata.generation beispielsweise aktuell 12, .status.conditions\[x].observedGeneration jedoch 9, ist die Bedingung gemessen am aktuellen Zustand der Instanz veraltet. Format: `int64` · Minimum: `0`. |

## Vantage.status.degradationReasons\[index]

DegradationReason gibt den Grund an, warum eine einzelne Komponente der Installation beeinträchtigt ist.

| Feld | Typ | Erforderlich | Beschreibung |
| - | - | - | - |
| `component` | `string` | Ja | component ist der Teil der Installation, der beeinträchtigt ist. |
| `message` | `string` | Ja | message ist eine für Menschen lesbare Beschreibung der Beeinträchtigung der Komponente. |
| `reason` | `string` | Ja | reason enthält einen programmatischen Bezeichner, der den Grund für die Beeinträchtigung der Komponente angibt. Der Wert sollte eine CamelCase-Zeichenfolge sein. |
