部分SystemLink Enterprise服务需要文件存储提供程序。

下表包含支持的提供程序:
  • Amazon S3存储
  • Amazon S3兼容存储
  • Azure Blob存储
备注 Amazon S3兼容的文件存储提供程序必须实施完整的Amazon S3 API。详细信息请参阅Amazon S3 API参考。Data Frame服务不支持GCS Amazon S3互操作XML API。

下表列出的Amazon S3存储和Azure Blob存储参数通常可在多种配置之间共享。该共享通过Helm值文件中的YAML锁定语法实现。该语法为值文件提供了便捷的通用配置共享方式,同时支持通过自定义值重写单独引用项。

Amazon S3和Amazon S3兼容存储提供程序

备注 可在Amazon S3存储中使用SSE-S3或SSE-KMS(配合存储桶密钥)对对象进行加密。有关详细信息,请参阅使用加密技术保护Amazon S3数据

AWS/aws-supplemental-values.yaml Helm配置文件或OnPrem/storage-values.yaml Helm配置文件中设置以下配置。有关部署配置到环境中的更多信息,请参阅更新SystemLink Enterprise

可在AWS/aws-secrets.yaml文件、OnPrem/storage-secrete.yaml文件或直接在簇上配置密钥引用。有关管理文件存储所需配置密钥的详细信息,请参阅必需的密钥

表 9. Amazon S3和Amazon S3兼容存储参数
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.端口
  • nbexecservice.s3.端口
  • 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 bucket所在的AWS区域。

  • dataframeservice.sldremio.distStorage

未改变

处理<ATTENTION>标记。

这些设置可配置Data Frame服务所需的分布式存储。

  • dataframeservice.storage.s3.auth.secretName
  • fileingestion.storage.s3.secretName
  • feedservice.storage.s3.secretName
  • nbexecservice.storage.s3.secretName

未改变

用于连接存储提供程序服务的凭据的密钥名称。

通过IAM将服务连接到S3

分配IAM角色以将服务连接到Amazon S3。

您的系统必须满足以下先决条件,才能通过IAM连接每个服务。
  • 为每个服务创建一个账户,方法是设置以下Helm值:serviceAccount: create: true
  • 创建一个包含以下声明的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 bucket的Amazon资源名称。
  • 创建一个应用新IAM策略的IAM角色。
    备注 每个IAM角色必须使用以下命名规范:<release-name>-<service-name>-role。例如,systemlink-feedservice-role

满足这些先决条件后,更新Helm值文件以包含以下配置。

服务 配置
DataFrame服务 此服务当前不支持IAM。
订阅源服务
feedservice: 
  storage: 
    s3: 
      authType: "AWS_WEB_IDENTITY_TOKEN"
feedservice: 
  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"
fileingestion: 
  serviceAccount: 
    annotations: 
      eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-fileingestion-role"
Notebook执行服务
nbexecservice: 
  storage: 
    s3: 
      authType: "AWS_WEB_IDENTITY_TOKEN"
nbexecservice: 
  serviceAccount: 
    annotations: 
      eks.amazonaws.com/role-arn: "arn:aws:iam::<account-id>:role/<release-name>-executions-role"

Azure Blob存储提供程序

备注 对于Data Frame服务存储帐户,必须禁用blob软删除层次命名空间

在Azure Blob存储的Azure/azure-supplemental-values.yaml Helm配置文件中设置以下配置。

可在Azure/azure-secrets.yaml文件中或直接在集群上配置密钥引用。有关部署这些配置到环境中的更多信息,请参阅更新SystemLink Enterprise

备注 对于Data Frame服务存储帐户,必须禁用blob软删除层次命名空间
表 10. Azure Blob存储参数
从2025-07版本开始的参数 详细信息
  • dataframeservice.storage.type
  • fileingestion.storage.type
  • feedservice.storage.type
  • nbexecservice.storage.type

该值表示服务存储类型。设置值为azure

  • dataframeservice.storage.azure.blobApiHost
  • fileingestion.storage.azure.blobApiHost
  • feedservice.storage.azure.blobApiHost
  • nbexecservice.storage.azure.blobApiHost

该值表示Azure Blob存储的主机(不含帐户名称)。例如,可将值设置为blob.core.windows.netblob.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
  • feedservice.storage.azure.accountName
  • nbexecservice.storage.azure.accountName

该值表示服务的存储帐户。NI建议对于不同的服务使用不同的存储帐户。

文件存储的限制和成本注意事项

如需调整文件存储服务的限制和成本注意事项,请参阅下列配置。

表 11. 文件存储注意事项
注意事项 配置
降低存储成本
如需清理未完成的分段上传,请配置服务。如果您使用的是Amazon S3,请在S3 bucket上配置AbortIncompleteMultipartUpload值。
备注 Azure存储将在七天后自动删除未提交的数据块。有关其他S3兼容提供程序的信息,请参阅提供程序文档。
调整单个用户每秒可上传的文件数量

配置fileingestion.rateLimits.upload值。

默认值为每个用户每秒3个文件。通过跨副本的负载平衡,有效速率高于指定速率。

调整用户可上传的最大文件大小

配置fileingestion.uploadLimitGB值。

默认情况下,值为2 GB。

调整单个副本用于获取数据的并发请求数量

配置dataframeservice.rateLimits.ingestion.requestLimit值。