Objektspeicher
- Aktualisiert2026-05-15
- 5 Minute(n) Lesezeit
Mehrere SystemLink Enterprise erfordern einen Objektspeicheranbieter. SystemLink Enterprise unterstützt die folgenden Speicheranbieter:
- Amazon S3 Storage
- Amazon S3-kompatibler Speicher
- Azure Blob Storage
Die in den folgenden Tabellen aufgeführten Parameter für Amazon S3 Storage und Azure Blob Storage werden in der Regel von mehreren Konfigurationen gemeinsam genutzt. Die gemeinsame Nutzung erfolgt über die YAML-Anchor-Syntax in den Helm-Wertedateien. Diese Syntax bietet eine komfortable Möglichkeit, eine gemeinsame Konfiguration in Ihren Wertedateien zu teilen. Einzelne Referenzen auf diese Werte können mit benutzerdefinierten Werten überschrieben werden.
Amazon S3- und mit Amazon S3 kompatible Speicherprovider
Legen Sie die folgende Konfiguration in der Helm-Konfigurationsdatei aws-supplemental-values.yaml oder der Helm-Konfigurationsdatei Storage-values.yaml fest.
Sie können Referenzen auf Secrets in der Datei aws-secrets.yaml, der Datei storage-secrete.yaml oder direkt auf dem Cluster konfigurieren.
| Parameter vor dem Release 2025-07 | Parameter nach dem Release 2025-07 | Details |
|---|---|---|
| Nicht zutreffend |
|
Dieser Wert steht für den Dienstspeichertyp. Setzen Sie den Wert auf s3. |
|
|
Dieser Wert steht für die Portnummer des Dienstes des Speicherproviders. |
|
|
Dieser Wert steht für den Host-Namen des Dienstes des Speicherproviders. |
|
|
Dieser Wert steht für das Schema des Dienstes des Speicherproviders. Dieser Wert ist in der Regel https. |
|
|
Dieser Wert steht für den AWS-Bereich, in dem sich der S3-Bucket befindet. |
|
Unverändert |
Lösen Sie die <ATTENTION>-Flags. Diese Einstellungen konfigurieren den verteilten Speicher, der für den DataFrame-Dienst erforderlich ist. |
|
Unverändert | Secret-Name für Zugangsdaten, die für die Verbindung mit dem Speicherproviderdienst verwendet werden. |
Ab der Version 2025-11 fügt fileingestioncdc die folgenden Parameter hinzu.
| Parameter | Details |
|---|---|
| fileingestioncdc.highAvailability.storage.s3.port | Dieser Wert steht für die Portnummer des Dienstes des Speicherproviders. |
| fileingestioncdc.highAvailability.storage.s3.scheme | Dieser Wert steht für das Schema des Dienstes des Speicherproviders. Dieser Wert ist in der Regel https. |
Verbinden von Diensten mit S3 über IAM
Weisen Sie eine IAM-Rolle zu, um Dienste mit Amazon S3 zu verbinden. Konfigurieren Sie Servicekonten und IAM-Rollennotizen in Ihrer Helm-Wertedatei.
-
Erstellen Sie für jeden Dienst ein Servicekonto, indem Sie serviceAccount.create: true in Ihren Helm-Werten festlegen.Hinweis Für Flink-Dienste ist diese Konfiguration nicht erforderlich. Der Flink-Operator verwaltet das Servicekonto.
- Erstellen Sie eine IAM-Richtlinie mit folgender Anweisung:
"Action": [ "s3:PutObject", "s3:ListBucket", "s3:GetObject", "s3:DeleteObject", "s3:AbortMultipartUpload" ], "Effect": "Allow", "Resource": [ "<s3_bucket_ARN>/*", "<s3_bucket_ARN>" ]
Hinweis Der Platzhalter <s3_bucket_ARN> steht für den Amazon-Ressourcennamen für den S3-Bucket des Dienstes. - Erstellen Sie eine IAM-Rolle, die die IAM-Richtlinie anwendet.Hinweis Die meisten IAM-Rollen verwenden die folgende Benennungskonvention: <release-name>-<service-name>-role. Beispiel: systemlink-feedservice-role. Flink-Dienste haben die gleiche Konfiguration wie der Flink-Operator und verwenden: <release-name>-flink-role.
| Dienst | Konfiguration |
|---|---|
| DataFrame-Dienst | Dieser Dienst unterstützt derzeit IAM nicht. |
| Feed-Dienst |
feedservice:
storage:
s3:
authType: "AWS_WEB_IDENTITY_TOKEN"
serviceAccount:
annotations:
eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-feedservice-role"
|
| Datei-Ingestion-Dienst |
fileingestion:
storage:
s3:
authType: "AWS_WEB_IDENTITY_TOKEN"
serviceAccount:
annotations:
eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-fileingestion-role"
|
| Datei-Ingestion-CDC |
fileingestioncdc:
highAvailability:
storage:
s3:
authType: "AWS_WEB_IDENTITY_TOKEN"
flinkoperator:
flink-kubernetes-operator:
jobServiceAccount:
annotations:
eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-flink-role"
|
| Notebook-Ausführungsdienst |
nbexecservice:
storage:
s3:
authType: "AWS_WEB_IDENTITY_TOKEN"
serviceAccount:
annotations:
eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-executions-role"
|
Verbinden von Serviceleistungen mit S3 über Zugriffsschlüssel
Zugriffsschlüssel-Authentifizierung ist erforderlich, wenn keine IAM-Authentifizierung verfügbar ist:
- DataFrame-Dienst: Dieser Dienst unterstützt derzeit keine IAM-Authentifizierung.
- S3-kompatible Speicheranbieter: IAM-Authentifizierung ist nur für AWS S3 verfügbar.
Geben Sie in Ihrer Datei systemLink-values.yaml oder aws-supplemental-values.yaml die S3-Verbindungsparameter und die Geheimreferenz an:
feedservice:
storage:
s3:
secretName: "feeds-s3-credentials"
accessKeyIdName: "aws-access-key-id"
accessKeyName: "aws-secret-access-key"
authType: "ACCESS_KEY"
bucket: "systemlink-feeds"
scheme: "https://"
host: "s3.amazonaws.com"
port: 443
region: "us-east-1"Geben Sie in Ihrer systemlink-secrets.yaml- oder aws-secrets.yaml-Datei die Zugangsdaten an:
feedservice:
secrets:
s3:
accessKeyId: "<your-access-key-id>"
accessKey: "<your-secret-access-key>"Das gleiche Muster gilt auch für andere Dienste, wenn keine IAM-Authentifizierung verfügbar ist.
Azure Blob Storage-Provider
Legen Sie die folgende Konfiguration in der Helm-Konfigurationsdatei azure-supplemental-values.yaml oder der Helm-Konfigurationsdatei storage-values.yaml fest.
Sie können Referenzen auf Secrets in der Datei azure-secrets.yaml, der Datei storage-secrets.yaml oder direkt auf dem Cluster konfigurieren.
| Parameter ab dem Release 2025-07 | Details |
|---|---|
|
Dieser Wert steht für die Speicherart des Dienstes. Setzen Sie den Wert auf azure. |
|
Dieser Wert steht für den Host von Azure Blob Storage ohne Kontonamen. Sie können den Wert beispielsweise auf blob.core.windows.net oder blob.core.usgovcloudapi.net setzen. Wenn Ihr Speicher nicht den Standardport verwendet, fügen Sie den Port am Ende des Hosts hinzu. Zum Beispiel blob.core.windows.net:1234. |
|
Dieser Wert steht für den Host und den Port des Azure Data Lake Storage, mit dem eine Verbindung ohne Kontonamen hergestellt werden soll. Sie können den Wert beispielsweise auf „dfs.core.windows.net“ setzen. Wenn Ihr Speicher nicht den Standardport verwendet, fügen Sie den Port am Ende des Hosts hinzu. Zum Beispiel: dfs.core.windows.net:1234. |
|
Dieser Wert steht für das Speicherkonto Ihres Dienstes. NI empfiehlt die Verwendung unterschiedlicher Speicherkonten für unterschiedliche Dienste. |
Verbinden von Diensten mit Azure Blob Storage
Zur Konfiguration der Azure Blob Storage-Authentifizierung müssen Sie sowohl die Wertedatei als auch die Secrets-Datei konfigurieren.
Konfigurieren Sie die Azure Blob Storage-Authentifizierung mit Hilfe der Datei values und secrets.
Geben Sie in Ihrer Datei azure-supplemental-values.yaml oder storage-values.yaml die Azure-Speicherparameter an:
feedservice:
storage:
type: "azure"
azure:
accountName: "<your-azure-storage-account-name>"
blobApiHost: "blob.core.windows.net"Geben Sie in Ihrer Datei azure-secrets.yaml die Zugangsdaten an:
feedservice:
secrets:
azure:
accessKey: "<your-azure-storage-access-key>"Das gleiche Muster gilt für andere Dienste.
Hinweise zu Grenzwerten und Kosten für die Dateispeicherung
Um Grenzwerte anzupassen und Kosten zu reduzieren, nutzen Sie die unten beschriebenen Konfigurationen.
| Überlegung | Konfiguration |
|---|---|
| Reduzierung der Speicherkosten |
Um unvollständige Multipart-Uploads zu bereinigen, konfigurieren Sie Ihren Dienst. Wenn Sie Amazon S3 verwenden, konfigurieren Sie den Wert AbortIncompleteMultipartUpload auf Ihren S3-Buckets.
Hinweis Azure Storage löscht nicht übernommene Blöcke automatisch nach sieben Tagen. Ob andere Provider S3-kompatibel sind, erfahren Sie in der Dokumentation des jeweiligen Providers. |
| Anpassung der Anzahl der Dateien, die ein einzelner Benutzer pro Sekunde hochladen kann |
Konfigurieren Sie den Wert fileingestion.rateLimits.upload. Standardmäßig ist der Wert 3 Dateien pro Sekunde pro Benutzer. Durch Lastverteilung zwischen Replikaten ist die effektive Rate höher als die angegebene Rate. |
| Anpassung der maximalen Dateigröße, die Benutzer hochladen können |
Konfigurieren Sie den Wert fileingestion.uploadLimitGB. Standardmäßig ist der Wert 2 GB. |
| Anpassung der Anzahl der gleichzeitigen Anfragen, die ein einzelnes Replikat zum Aufnehmen von Daten verwenden kann |
Konfigurieren Sie den Wert dataframeservice.rateLimits.ingestion.requestLimit. |
Verwandte Inhalte
- Vorbereitung auf das Hosting und den Betrieb von SystemLink Enterprise
Bevor Sie SystemLink Enterprise installieren, stellen Sie sicher, dass die folgende Netzwerk-, Rechen-, Speicher- und Sicherheitsinfrastruktur vorhanden ist.
- Rotierende Secrets
SystemLink Enterprise Secrets müssen möglicherweise aufgrund von Änderungen an Ihrer Umgebung, den Sicherheitsrichtlinien Ihres Unternehmens oder anderen betrieblichen Anforderungen geändert oder rotiert werden. Unterschiedliche Secrets erfordern unterschiedliche Verfahren, um den ordnungsgemäßen Betrieb nach der Änderung sicherzustellen.
- systemlink-values.yaml
- azure-supplemental-values.yaml
- aws-supplemental-values.yaml
- systemlink-secrets.yaml
- azure-secrets.yaml
- aws-secrets.yaml
- Amazon S3 API-Referenz
- Schützen von Amazon S3-Daten mit Verschlüsselung
- Bucket-Lifecycle-Konfiguration zum Löschen unvollständiger Multipart-Uploads
- Vorläufiges Löschen von Blobs
- Hierarchischer Namensraum von Azure Data Lake
- SystemLink Enterprise in AWS EKS
Amazon Elastic Kubernetes Service (EKS) ist ein verwalteter Kubernetes-Dienst, der die Ausführung von Kubernetes auf AWS vereinfacht, ohne dass ein eigenes Kubernetes-Steuerflugzeug installiert und betrieben werden muss.
- SystemLink Enterprise in Azure AKS
Azure Kubernetes Service (AKS) ist ein verwalteter Kubernetes-Dienst, der die Ausführung von Kubernetes in Azure vereinfacht, ohne dass eine eigene Kubernetes-Steuerebene installiert und betrieben werden muss.