一部のSystemLink Enterpriseサービスでは、オブジェクトストレージプロバイダが必要です。SystemLink Enterpriseは、以下のストレージプロバイダをサポートしています。

SystemLink Enterprise 以下のファイルストレージプロバイダ:
  • Amazon S3ストレージ
  • Amazon S3互換ストレージ
  • Azure Blobストレージ
メモ Amazon S3互換ファイルストレージプロバイダは、Amazon S3 API一式を実装している必要があります。詳細については、「Amazon S3 API リファレンス」を参照してください。データフレームサービスは、GCS Amazon S3相互運用性XML APIをサポートしていません。

Amazon S3ストレージおよびAzure Blobストレージの以下の表に記載されているパラメータは、通常、複数の構成で共有されます。共有は、Helm値ファイルのYAMLアンカー構文を介して行われます。この構文を使用すると、複数の値ファイルのすべてで共通の構成を簡単に共有できます。記載された個々の値はカスタム値でオーバーライドできます。

Amazon S3およびAmazon S3互換ストレージプロバイダ

メモ Amazon S3ストレージ内のオブジェクトは、SSE-S3またはバケットキーを使用したSSE-KMSを用いて暗号化できます。詳細については、「暗号化によるAmazon S3データの保護」を参照してください。

aws-supplemental-values.yaml Helm構成ファイルまたはstorage-values.yaml Helm構成ファイルで、以下の構成を設定します。

シークレットリファレンスは、aws-secrets.yamlファイル、storage-secrete.yamlファイル、またはクラスタ上で直接構成できます。

表 73. 構成可能なパラメータ
2025-07リリース前のパラメータ 2025-07リリース後のパラメータ 詳細
該当なし
  • dataframeservice.storage.type
  • fileingestion.storage.type
  • feedservice.storage.type
  • nbexecservice.storage.type
この値はサービスストレージタイプを表します。値をs3に設定します。
  • dataframeservice.s3.port
  • fileingestion.s3.port
  • feedservice.s3.port
  • nbexecservice.s3.port
  • dataframeservice.storage.s3.port
  • fileingestion.storage.s3.port
  • feedservice.storage.s3.port
  • nbexecservice.storage.s3.port
この値は、ストレージプロバイダサービスのポート番号を表します。
  • dataframeservice.s3.host
  • fileingestion.s3.host
  • feedservice.s3.host
  • nbexecservice.s3.host
  • dataframeservice.storage.s3.host
  • fileingestion.storage.s3.host
  • feedservice.storage.s3.host
  • nbexecservice.storage.s3.host
この値は、ストレージプロバイダサービスのホスト名を表します。
  • dataframeservice.s3.schemeName
  • fileingestion.s3.scheme
  • feedservice.s3.scheme
  • nbexecservice.s3.scheme
  • dataframeservice.storage.s3.schemeName
  • fileingestion.storage.s3.scheme
  • feedservice.storage.s3.scheme
  • nbexecservice.storage.s3.scheme
この値は、ストレージプロバイダサービスのスキームを表します。この値は通常、httpsです。
  • dataframeservice.s3.region
  • fileingestion.s3.region
  • feedservice.s3.region
  • nbexecservice.s3.region
  • dataframeservice.storage.s3.region
  • fileingestion.storage.s3.region
  • feedservice.storage.s3.region
  • nbexecservice.storage.s3.region
この値は、S3バケットがあるAWSリージョンを表します。
  • dataframeservice.sldremio.distStorage
変更なし

<ATTENTION>フラグを解決します。

これらの設定は、データフレームサービスに必要な分散ストレージを構成します。

  • dataframeservice.storage.s3.auth.secretName
  • fileingestion.storage.s3.secretName
  • feedservice.storage.s3.secretName
  • nbexecservice.storage.s3.secretName
変更なし ストレージプロバイダサービスとの接続に使用する、資格情報のシークレット名です。

2025-11リリースから、fileingestioncdcは以下のパラメータを追加します。

表 74. 2025-11 リリースパラメータ
パラメータ 詳細
fileingestioncdc.highAvailability.storage.s3.port この値は、ストレージプロバイダサービスのポート番号を表します。
fileingestioncdc.highAvailability.storage.s3.scheme この値は、ストレージプロバイダサービスのスキームを表します。この値は通常、httpsです。

IAMを介してサービスをS3に接続する

サービスをAmazon S3に接続するIAM役割を割り当てます。Helm値ファイルでサービスアカウントとIAM役割注釈を構成します。

  • Helm値でserviceAccount.create: trueを設定して、各サービス用のサービスアカウントを作成します。
    メモ Flinkサービスでは、この構成は必要ありません。Flink演算子はサービスアカウントを管理します。
  • 以下のステートメントでIAMポリシーを作成します。
    "Action": [
      "s3:PutObject",
      "s3:ListBucket",
      "s3:GetObject",
      "s3:DeleteObject",
      "s3:AbortMultipartUpload"
    ],
    "Effect": "Allow",
    "Resource": [
      "<s3_bucket_ARN>/*",
      "<s3_bucket_ARN>"
    ]
    メモ <s3_bucket_ARN>プレースホルダは、サービスのS3バケットのAmazonリソース名を表します。
  • IAMポリシーを適用するIAM役割を作成します。
    メモ ほとんどのIAM役割は、<release-name>-<service-name>-roleという命名規則を使用します。たとえば、systemlink-feedservice-roleなどです。FlinkサービスはFlink Operatorと同じ構成で、<release-name>-flink-roleを使用します。
表 75. サービス構成
サービス 構成
DataFrameサービス このサービスは現在IAMをサポートしていません。
フィードサービス
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"
ファイル取り込みサービス
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"
ファイル取り込み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実行サービス
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"

アクセスキーを使用してサービスをS3に接続する

IAM認証が使用できない場合、アクセスキー認証が必要です。

  • DataFrameサービス: このサービスは現在IAM認証をサポートしていません。
  • S3互換ストレージプロバイダ: IAM認証はAWS S3でのみ使用できます。

systemlink-values.yamlまたはaws-supplemental-values.yamlファイルで、S3接続パラメータとシークレットリファレンスを指定します。

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"

systemlink-secrets.yamlまたはaws-secrets.yamlファイルにアクセス資格情報を指定します。

feedservice:
  secrets:
    s3:
      accessKeyId: "<your-access-key-id>"
      accessKey: "<your-secret-access-key>"

IAM認証が使用できない場合、同じパターンが他のサービスにも適用されます。

メモ Amazon S3でAWSにデプロイする場合、セキュリティと資格情報管理を向上させるために、サポートされている場合はIAM認証を使用することをお勧めします。

Azure Blobストレージプロバイダ

メモ DataFrameサービスのストレージアカウントでは、BLOBソフト削除階層型ネームスペースを無効にする必要があります。

azure-supplemental-values.yaml Helm構成ファイルまたはstorage-values.yaml Helm構成ファイルで、以下の構成を設定します。

シークレットリファレンスは、azure-secrets.yamlファイル、storage-secrets.yamlファイル、またはクラスタ上で直接構成できます。

表 76. 構成可能なパラメータ
2025-07リリース以降のパラメータ 詳細
  • dataframeservice.storage.type
  • fileingestion.storage.type
  • fileingestioncdc.highAvailability.storage.type
  • feedservice.storage.type
  • nbexecservice.storage.type
この値は、サービスのストレージタイプを表します。値をazureに設定します。
  • dataframeservice.storage.azure.blobApiHost
  • fileingestion.storage.azure.blobApiHost
  • fileingestioncdc.highAvailability.storage.azure.blobApiHost
  • feedservice.storage.azure.blobApiHost
  • nbexecservice.storage.azure.blobApiHost

この値は、アカウント名のない、Azure Blobストレージのホストを表します。たとえば、blob.core.windows.netまたはblob.core.usgovcloudapi.netという値を設定できます。

ストレージがデフォルトポートを使用していない場合は、ホストの末尾にポートを追加します。例: blob.core.windows.net:1234

  • dataframeservice.storage.azure.dataLakeApiHost

この値は、アカウント名のない、接続先のAzure Data Lake Storageのホストとポートを表します。たとえば、dfs.core.windows.netという値を設定できます。

ストレージがデフォルトポートを使用していない場合は、ホストの末尾にポートを追加します。例: dfs.core.windows.net:1234

  • dataframeservice.storage.azure.accountName
  • fileingestion.storage.azure.accountName
  • fileingestioncdc.highAvailability.storage.azure.accountName
  • feedservice.storage.azure.accountName
  • nbexecservice.storage.azure.accountName
この値は、サービスのストレージアカウントを表します。NIでは、サービスごとに異なるストレージアカウントを使用することを推奨します。

サービスをAzure Blobストレージに接続する

Azure Blobストレージ認証を構成するには、値ファイルとシークレットファイルの両方を構成する必要があります。

値ファイルとシークレットファイルを使用してAzure Blobストレージ認証を構成します。

azure-supplemental-values.yamlまたはstorage-values.yamlファイルで、Azureストレージパラメータを指定します。

feedservice:
  storage:
    type: "azure"
    azure:
      accountName: "<your-azure-storage-account-name>"
      blobApiHost: "blob.core.windows.net"

azure-secrets.yamlファイルで、アクセス資格情報を指定します。

feedservice:
  secrets:
    azure:
      accessKey: "<your-azure-storage-access-key>"

同じパターンが他のサービスにも適用されます。

ファイルストレージの制限とコストに関する注意事項

ファイルストレージサービスの制限とコストに関する注意事項を調整するには、以下の構成を参照してください。

表 77. ファイルストレージに関する注意事項
注意事項 構成
ストレージコストを削減する
不完全なマルチパートアップロードをクリーンアップするようにサービスを構成します。Amazon S3を使用している場合は、S3バケットでAbortIncompleteMultipartUpload値を構成します。
メモ Azureストレージでは、コミットされていないブロックが7日後に自動的に削除されます。その他のS3互換プロバイダについては、プロバイダのドキュメントを参照してください。
1人のユーザが1秒にアップロードできるファイル数を調整する

fileingestion.rateLimits.upload値を構成します。

デフォルトでは、1ユーザあたり3ファイル/秒です。複数のレプリカ間で負荷を分散すると、指定されたレートよりも有効レートが高くなります。

ユーザがアップロードできる最大ファイルサイズを調整する

fileingestion.uploadLimitGB値を構成します。

デフォルト値は2 GBです。

1つのレプリカがデータを取り込むために処理できる同時要求数を調整する

dataframeservice.rateLimits.ingestion.requestLimit値を構成します。