安裝IBM Cloud Object Storage叢集插件
您可以透過 IBM Cloud 控制台或命令列介面 (CLI) 啟用「IBM Cloud Object Storage」附加元件。
必要條件:
- IBM Cloud Object Storage 附加元件至少需要 0.3 vCPU 和 360 MB 記憶體。
- 該附加元件適用於 Red Hat CoreOS (RHCOS) 和 Ubuntu 工作者節點。 如果您的群集同時有 RHEL 和 RHCOS 節點,則只會在 RHCOS 節點上部署附加元件。
- 建立 IBM Cloud Object Storage 實例。
- 可選如果您打算使用儲存桶版本控制,您的服務憑證必須具有 Manager 或 Writer 權限,才能在儲存桶上啟用或停用儲存桶版本控制。 如需更多資訊,請參閱《 版本控制入門 》。
了解儲存桶的建立和刪除
- 您可以透過在 PVC 中指定儲存桶名稱來使用現有儲存桶。
- 如果您提供儲存桶名稱,但該儲存桶不存在,則會建立具有該名稱的儲存桶。
- 如果您不提供儲存桶名稱,則會建立具有命名約定
temp-xxx的儲存桶。 - 根據儲存類別中定義的回收策略刪除儲存桶。
- 如果設定了
reclaimPolicy: Delete,則刪除PVC時,該桶也會被刪除。 - 如果設定了
reclaimPolicy: Retain,則即使刪除PVC,該桶仍會保留。
- 如果設定了
從主控台啟用「IBM Cloud Object Storage」附加元件
- 在 Red Hat OpenShift on IBM Cloud 叢集儀表板中,選取您要為其啟用此附加元件的叢集。
- 在「附加元件」區段中,找到該 Cloud Object Storage 擴充功能,然後點擊「安裝」。
- 在「安裝附加元件:Cloud Object Storage」面板中,請從「版本」下拉式選單中選擇一個版本。
- (可選):請設定以下參數。
maxVolumesPerNode- 設定單一節點上可掛載的 IBM Cloud Object Storage 卷最大數量。 預設值為
0,這表示未設定任何限制。 restrictNodeServerScheduling- 將設定值設為
true,以限制 nodeserver Pod 僅能在標記為cos.csi.ibm.io/csi-node=true`` 的節點上執行。 預設值為false,這表示 nodeserver Pod 會被排程至所有節點上。
- 按一下安裝。 附加程式可能需要幾分鐘的時間完成部署並備妥以供使用。
- 驗證安裝。 在「附加元件」區段中,請確認該 Cloud Object Storage 此擴充功能顯示為「正常」的健康狀態。
從 CLI 啟用 IBM Cloud Object Storage 附加元件
開始之前:造訪您的Red Hat OpenShift叢集。
- 將「
container-service」外掛程式更新至最新版本。ibmcloud update && ibmcloud plugin update container-service - 列出附加元件並找到您要安裝的版本。
ibmcloud oc cluster addon versions - 檢視附加選項。
ibmcloud oc cluster addon options --addon ibm-object-csi-driver [--version VERSION] - 安裝附加元件。
ibmcloud oc cluster addon enable ibm-object-csi-driver --cluster CLUSTER [--version VERSION] - 驗證安裝。
ibmcloud oc cluster addon ls --cluster CLUSTEROK Name Version Health State Health Status ibm-object-csi-driver 1.0 normal Addon Ready. For more info: http://ibm.biz/addon-state (H1500) - 列出可用的儲存類別。 此驅動程式同時支援「
s3fs」與「rclone」掛載器的區域性及跨區域儲存類別。oc get sc | grep objectibm-object-storage-smart-cross-region-rclone cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-smart-cross-region-rclone-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-smart-cross-region-s3fs cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-smart-cross-region-s3fs-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-smart-rclone cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-smart-rclone-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-smart-s3fs cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-smart-s3fs-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-standard-cross-region-rclone cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-standard-cross-region-rclone-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-standard-cross-region-s3fs cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-standard-cross-region-s3fs-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-standard-rclone cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-standard-rclone-retain cos.s3.csi.ibm.io Retain Immediate false 17h ibm-object-storage-standard-s3fs cos.s3.csi.ibm.io Delete Immediate false 17h ibm-object-storage-standard-s3fs-retain cos.s3.csi.ibm.io Retain Immediate false 17h
限制節點伺服器 Pod 的調度
預設情況下,COS CSI 驅動程式節點伺服器 Pod 會被排程至叢集中的所有節點上。 您可以使用 restrictNodeServerScheduling 參數,將 nodeserver 的 Pod 調度限制在僅標有 cos.csi.ibm.io/csi-node=true`` 標籤的節點上。
您可以在啟用此附加元件時設定 restrictNodeServerScheduling ,或稍後透過修補 ConfigMap 來更新該設定。
- 若要在啟用附加元件時設定
restrictNodeServerScheduling,請在啟用指令中加入--param標誌。ibmcloud oc cluster addon enable ibm-object-csi-driver --cluster CLUSTER --param "restrictNodeServerScheduling=true" - 若要在已啟用該附加元件後更新「
restrictNodeServerScheduling」,請依照以下步驟操作。
- 列出叢集中的節點,並決定要讓 COS 驅動程式 Pod 在何處執行。
輸出範例oc get nodesNAME STATUS ROLES AGE VERSION 10.241.0.11 Ready <none> 5d2h v1.35.5+IKS 10.241.0.12 Ready <none> 5d2h v1.35.5+IKS 10.241.0.13 Ready <none> 5d2h v1.35.5+IKS 10.241.128.10 Ready <none> 5d2h v1.35.5+IKS 10.241.128.11 Ready <none> 5d2h v1.35.5+IKS 10.241.128.9 Ready <none> 5d2h v1.35.5+IKS 10.241.65.12 Ready <none> 5d2h v1.35.5+IKS 10.241.65.13 Ready <none> 5d2h v1.35.5+IKS 10.241.65.14 Ready <none> 5d2h v1.35.5+IKS - 請確認所有節點上目前都有節點伺服器 Pod 正在執行。
輸出範例oc get pods -n ibm-object-csi-operator -l app.kubernetes.io/component=node -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ibm-object-csi-node-2pj2j 3/3 Running 0 145m 172.17.14.10 10.241.0.12 <none> <none> ibm-object-csi-node-7bhwh 3/3 Running 0 145m 172.17.1.72 10.241.65.12 <none> <none> ibm-object-csi-node-7l9hc 3/3 Running 0 145m 172.17.17.6 10.241.128.9 <none> <none> ibm-object-csi-node-cxzt7 3/3 Running 0 145m 172.17.39.72 10.241.0.11 <none> <none> ibm-object-csi-node-dw6qs 3/3 Running 0 145m 172.17.46.77 10.241.128.10 <none> <none> ibm-object-csi-node-rpcvr 3/3 Running 0 145m 172.17.32.198 10.241.65.13 <none> <none> ibm-object-csi-node-swqtg 3/3 Running 0 145m 172.17.16.69 10.241.0.13 <none> <none> ibm-object-csi-node-sxbbs 3/3 Running 0 145m 172.17.26.7 10.241.65.14 <none> <none> ibm-object-csi-node-xm8bt 3/3 Running 0 145m 172.17.20.200 10.241.128.11 <none> <none> - 請為您希望將 nodeserver Pod 排程至其中的節點加上標籤。
輸出範例oc label nodes NODE-NAME-1 NODE-NAME-2 cos.csi.ibm.io/csi-node=truenode/10.241.0.11 labeled node/10.241.0.12 labeled - 請更新
ConfigMap以啟用此限制。輸出範例oc patch cm managed-addon-ibm-object-csi-driver -n kube-system \ --type merge -p '{"data":{"restrictNodeServerScheduling":"true"}}'configmap/managed-addon-ibm-object-csi-driver patched - 請確認 nodeserver Pod 僅會排程至帶有標籤的節點上。
輸出範例oc get pods -n ibm-object-csi-operator -l app.kubernetes.io/component=node -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ibm-object-csi-node-cxzt7 3/3 Running 0 145m 172.17.39.72 10.241.0.11 <none> <none> ibm-object-csi-node-7bhwh 3/3 Running 0 145m 172.17.1.72 10.241.65.12 <none> <none>
| 設定 | 行為 |
|---|---|
restrictNodeServerScheduling: "false" (預設) |
Nodeserver 匣會被排程至所有節點上。 |
restrictNodeServerScheduling: "true" |
Nodeserver 匣僅會排程至標有 cos.csi.ibm.io/csi-node=true 標籤的節點上。 |
設定每個節點的最大音量
預設情況下,COS CSI 驅動程式不會限制單一節點上可掛載的卷數。 您可以使用 maxVolumesPerNode 參數來設定每個節點的最大卷數。
您可以在啟用此附加元件時設定 maxVolumesPerNode ,或稍後透過修補 ConfigMap 來更新該設定。
- 若要在啟用附加元件時設定
maxVolumesPerNode,請在啟用指令中加入--param標誌。ibmcloud oc cluster addon enable ibm-object-csi-driver --cluster CLUSTER --param "maxVolumesPerNode=VALUE" - 若要在已啟用外掛程式後更新
maxVolumesPerNode,請修補受管外掛程式 ConfigMap。輸出範例oc patch cm managed-addon-ibm-object-csi-driver -n kube-system --type merge -p '{"data":{"maxVolumesPerNode":"VALUE"}}'configmap/managed-addon-ibm-object-csi-driver patched
| 設定 | 行為 |
|---|---|
maxVolumesPerNode: "0" (預設) |
每個節點可掛載的卷數沒有限制。 |
maxVolumesPerNode: "VALUE" |
將單一節點上可掛載的卷數限制為指定值。 |
部署使用IBM Cloud Object Storage的應用
建立包含您的 COS 憑證的Kubernetes金鑰。
-
將以下配置儲存為名為
secret.yaml檔案。 提供 IAM 認證或 HMAC,但不能同時提供。- 對於 IAM 認證,請使用
apiKey和serviceId的組合,來自 Object Storage。 - 對於 HMAC 憑證,請使用
accessKey和secretKey從 Object Storage。
apiVersion: v1 kind: Secret type: cos-s3-csi-driver metadata: name: cos-secret-1 # Name your secret. This same name is used for the PVC in the following steps. namespace: <namespace> # Specify the namespace where you want to create the secret. data: apiKey: <base64-encoded-COS-Service-Instance-apikey> serviceID: <base64-encoded-COS-resource_instance_id> accessKey: <base64-encoded-HMAC-access_key_id> secretKey: <base64-encoded-HMAC-secret_access_key> kp-root-key-crn: <CRN> # Key Protect or HPCS root key crn in base64 encoded format stringData: bucketName: <bucket-name> # Optional. If you don't provide a bucket name, a bucket with the naming convention s3fs-timestamp-xxx or rclone-timestamp-xxx is created. bucketVersioning: "false" # Bucket versioning is set to false by default. Set to "true" to enable bucket versioning. Set to "false" to disable versioning for a bucket where versioning is enabled. Must be a string value. # uid: "3000" # Optional: Provide a uid to run as non root user. This must match runAsUser in SecurityContext of pod spec. mountOptions: | # Review or update the following default s3fs mount options #multipart_size=52 #multireq_max=20 #max_dirty_data=5120 #parallel_count=20 #max_stat_cache_size=100000 #retries=5 #kernel_cache # Review or update the following default rclone mount options #acl=private #bucket_acl=private #upload_cutoff=100Mi #chunk_size=16Mi #max_upload_parts=1000 #upload_concurrency=8mountOptions- 您可以在秘密中編輯
mountOptions,自訂s3fs或rclone的掛載選項。 使您指定的選項與 PVC 使用的儲存類別一致。 若要檢視儲存類別的預設值,請執行oc describe storageclass <storageclass_name>或oc describe storageclass <storageclass_name>。 如需詳細資訊,請參閱 s3fs 掛載選項和rclone掛載選項。
目前,附加元件已啟用,以支援固定的掛載選項集,並針對每個掛載選項進行適當的驗證。 如果您要使用驗證清單中沒有的其他掛載選項,請聯絡支援人員啟用這些選項。
- 對於 IAM 認證,請使用
-
將所有秘密資料參數編碼至 base64。
echo -n "<value>" | base64 -
使用 base64 編碼值更新
secret.yaml。 -
建立該密鑰。
oc apply -f secret.yaml
創建PVC
您可以在多個 PVC 上使用單一密碼,或在每個 PVC 上使用一個密碼。
您可以在 PVC yaml 中使用下列註解來管理此行為。 這些註解有助於驅動程式將 PVC 映射到正確的秘密。
cos.csi.driver/secret: "<custom-secret>"
請確保您的 secret、PVC 和 pods 均位於同一個命名空間中
將您的 PVC 賦予與您先前建立的秘密相同的名稱,以建立 1-to-1 秘密與 PVC 對應的範例 PVC。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: cos-secret-1 # Give your PVC the same name as the secret you created in the previous step.
namespace: <namespace> # The namespace where you want to create the PVC.
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
storageClassName: <storage_class_name> # The storage class you want to use.
使用註解指定秘密,將 1 個秘密用於多個 PVC 的範例 PVC。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: cos-csi-pvc1
namespace: <namespace> # The namespace where you want to create the PVC.
annotations:
cos.csi.driver/secret: "<custom-secret>"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 256Mi
storageClassName: <storage_class_name> # The storage class you want to use.
-
從之前的範例中選擇一個,並根據您的使用情況進行自訂。 有關儲存類別的列表,請參閱 儲存類別參考。
-
建立 PVC。
oc apply -f pvc.yaml
建立部署
-
將以下配置儲存到名為
dep.yaml的檔案中。apiVersion: apps/v1 kind: Deployment metadata: name: <name> labels: app: <name> spec: replicas: 1 selector: matchLabels: app: <name> template: metadata: labels: app: <name> spec: containers: - name: app-frontend image: <image> # Enter your app image. imagePullPolicy: IfNotPresent volumeMounts: - mountPath: <path_you_want_to_mount_the_volume_on> # For example `/dev` name: cos-csi-volume volumes: - name: cos-csi-volume persistentVolumeClaim: claimName: <pvc_name> # Enter the name of the PVC you created earlier. -
建立部署。
oc apply -f dep.yaml
停用IBM Cloud Object Storage附加元件
現有的機密、PVC 和部署不會因為停用附加元件或修補程式更新而被刪除。 不會中斷現有客戶的工作負載。
- 執行以下指令以停用此附加元件。
輸出範例ibmcloud oc cluster addon disable ibm-object-csi-driver --cluster CLUSTERData and resources that you created for the add-on might be deleted when the add-on is disabled. Continue? [y/N]> y Disabling add-on ibm-object-csi-driver for cluster XXX... OK - 驗證該附加元件是否已刪除。
ibmcloud oc cluster addon ls --cluster CLUSTER
從Helm插件遷移到叢集插件
-
取得 PVC 的詳細資訊並選擇一個進行遷移。
oc get pvc --all-namespaces -o custom-columns='NAMESPACE:.metadata.namespace,NAME:.metadata.name' | tail -n +2 | while read namespace pvc; do kubectl describe pvc "$pvc" -n "$namespace" | grep 'volume.kubernetes.io/storage-provisioner: ibm.io/ibmc-s3fs' > /dev/null ; if [ $? -eq 0 ]; then echo "PVC: $pvc in Namespace: $namespace uses ibm.io/ibmc-s3fs storage provisioner"; fi; done輸出範例
PVC: pvc-test in Namespace: default uses ibm.io/ibmc-s3fs storage provisioner -
描述 PVC 並取得儲存桶名稱。
oc describe pvc <pvc_name> | grep ibm.io/bucket:輸出範例
ibm.io/bucket: test-s3 -
包含水桶名稱,重新創造您的秘密。
apiVersion: v1 kind: Secret type: cos-s3-csi-driver metadata: name: cos-secret-1 # Name your secret. namespace: <namespace> # Specify the namespace where you want to create the secret. data: accessKey: <base64-encoded-HMAC-access-key> secretKey: <base64-encoded-HMAC-secret-key> stringData: bucketName: <bucket-name> # uid: "3000" # Optional: Provide a uid to run as non root user. This must match runAsUser in SecurityContext of pod spec. mountOptions: | key1=value1 key2=value2 -
找到 PVC 中使用的儲存類別。
oc describe pvc <pvc_name> | grep StorageClass:名為
test-s3PVC 的範例指令。oc describe pvc test-s3 | grep StorageClass:輸出範例
StorageClass: ibmc-s3fs-smart-perf-regional -
查看該附加元件提供的新儲存類別 並選擇取代類別。
- 如果您使用了
flex類,請選擇新的smart類之一。 - 如果您使用了
standard類,請選擇新的standard類之一。 - 此附加元件不再提供
cold和vault類別;選擇smart或standard類別來代替。
- 如果您使用了
-
檢查 PVC 的詳細資訊。
oc describe pvc test-s3輸出範例
Name: pvc-test Namespace: default StorageClass: ibmc-s3fs-smart-perf-regional Status: Bound Volume: pvc-c625474d-31f0-4929-bc3e-feace1fb42fb Labels: <none> Annotations: ibm.io/auto-create-bucket: true ibm.io/auto-delete-bucket: true ibm.io/bucket: bha-test-s23 ibm.io/secret-name: satstoragesecret pv.kubernetes.io/bind-completed: yes pv.kubernetes.io/bound-by-controller: yes volume.kubernetes.io/storage-provisioner: ibm.io/ibmc-s3fs Finalizers: [kubernetes.io/pvc-protection] Capacity: 3Gi Access Modes: RWO VolumeMode: Filesystem Used By: test-pod Events: <none> -
建立一個替換 PVC,它使用新的儲存類別並引用您先前建立的金鑰。
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: cos-csi-pvc1 namespace: <namespace> # The namespace where you want to create the PVC. annotations: cos.csi.driver/secret: "cos-secret-1" # Secret created in step 4 spec: accessModes: - ReadWriteOnce resources: requests: storage: 256Mi storageClassName: <storage_class_name> # The storage class you picked based on old storage class mapping. -
驗證 PVC 是否為
Bound。oc get pvc -
獲取您的應用程式的詳細資訊。
oc get pods -
將您的應用程式縮小到零。
kubectl scale deployment --replicas=0 my-app -
建立引用您在上一步中建立的 PVC 的替換部署。
-
新部署運行後,您可以刪除舊部署。
-
請針對每個您要遷移的 PVC 重複執行這些步驟。
IBM Cloud Object Storage叢集附加儲存類
IBM Cloud Object Storage 群集附加元件為 s3fs 和 rclone 存取器提供儲存類別。 選擇符合資料存取需求的儲存空間類別。 儲存類別決定為工作負載建立的儲存桶類別、回收政策和預設掛載行為。
- 標準
- 用於您經常存取的熱資料,例如網頁或行動應用程式的資料。
- 智慧型
- 用於不遵循特定使用模式的工作負載和資料,或使用模式難以預測時。
| 名稱 | 水桶等級 | 備援 | 裝載機 | 收回原則 | 連結模式 |
|---|---|---|---|---|---|
| ibm-object-storage-smart-cross-region-rclone | 智慧型 | 跨區域 | rclone |
刪除 | 立即 |
| ibm-object-storage-smart-cross-region-rclone-retain | 智慧型 | 跨區域 | rclone |
保留 | 立即 |
| ibm-object-storage-smart-cross-region-s3fs | 智慧型 | 跨區域 | s3fs |
刪除 | 立即 |
| ibm-object-storage-smart-cross-region-s3fs-retain | 智慧型 | 跨區域 | s3fs |
保留 | 立即 |
| ibm 物件儲存智慧 rclone | 智慧型 | 地區 | rclone |
刪除 | 立即 |
| ibm-物件儲存-智慧型-rclone-保留 | 智慧型 | 地區 | rclone |
保留 | 立即 |
| ibm-object-storage-smart-s3fs | 智慧型 | 地區 | s3fs |
刪除 | 立即 |
| ibm-object-storage-smart-s3fs-retain | 智慧型 | 地區 | s3fs |
保留 | 立即 |
| ibm-object-storage-standard-跨區域-rclone | 標準 | 跨區域 | rclone |
刪除 | 立即 |
| ibm-object-storage-standard-跨區域-rclone-保留 | 標準 | 跨區域 | rclone |
保留 | 立即 |
| ibm-object-storage-standard-cross-region-s3fs | 標準 | 跨區域 | s3fs |
刪除 | 立即 |
| ibm-object-storage-standard-cross-region-s3fs-retain | 標準 | 跨區域 | s3fs |
保留 | 立即 |
| ibm 物件儲存標準 rclone | 標準 | 地區 | rclone |
刪除 | 立即 |
| ibm 物件儲存-標準-rclone-保留 | 標準 | 地區 | rclone |
保留 | 立即 |
| ibm-object-storage-standard-s3fs | 標準 | 地區 | s3fs |
刪除 | 立即 |
| ibm-object-storage-standard-s3fs-retain | 標準 | 地區 | s3fs |
保留 | 立即 |
若要檢視儲存類別的詳細儲存桶設定,請執行 oc describe storageclass <storageclass_name> 或 oc describe storageclass <storageclass_name>。
儲存類別參數
所有群集附加儲存類別都包含下列核心參數。
| 參數 | 說明 |
|---|---|
client |
識別驅動程式使用的用戶端類型。 附加儲存類別使用 awss3。 |
cosEndpoint |
定義儲存桶區域的 IBM Cloud Object Storage 端點。 |
csi.storage.k8s.io/node-publish-secret-name |
參考包含 IBM Cloud Object Storage 認證的秘密名稱。 |
csi.storage.k8s.io/node-publish-secret-namespace |
引用包含 IBM Cloud Object Storage 認證的秘密命名空間。 |
locationConstraint |
定義水桶類別和區域,例如 au-syd-smart 或 au-syd-standard。 |
mounter |
指定儲存類別使用 s3fs 或 rclone 計算器。 |
預設 s3fs 儲存類別掛載選項
s3fs 儲存類別使用下列預設掛載選項。
| 安裝選項 | 說明 |
|---|---|
multipart_size=52 |
設定每個多部分請求的部分大小(以 MB 為單位)。 |
multireq_max=20 |
設定列出物件的最大平行請求數目。 |
max_dirty_data=5120 |
在寫入指定的 MB 數量後,將不純資料刷新到 S3。 最小支援值為 50。 -1 的值會停用此行為。 |
parallel_count=20 |
設定上載大型物件的平行請求數目。s3fs 使用多部分請求上載大型物件,並平行傳送請求。 |
max_stat_cache_size=100000 |
設定統計快取和符號連結快取的最大項目數量。 |
retries=5 |
設定重試失敗 S3 交易的次數。 |
kernel_cache |
啟用該卷掛載點的內核緩衝區快取。 從 IBM Cloud Object Storage 讀取的資料會儲存在核心快取記憶體中,以協助提供更快速的讀取存取。 標準和智慧型 s3fs 儲存類別已啟用核心快取。 |
預設 rclone 儲存類別掛載選項
rclone 儲存類別使用下列預設掛載選項。
| 安裝選項 | 說明 |
|---|---|
acl=private |
確保上傳的物件不會被公開存取。 |
bucket_acl=private |
將 rclone 建立的儲存桶的預設 ACL 設為 private。 |
upload_cutoff=100Mi |
使用多部分上傳來上傳大於 100 MiB 的檔案。 較小的檔案會在一次請求中上傳。 |
chunk_size=16Mi |
設定多部分上傳中每個部分的大小。 |
max_upload_parts=1000 |
設定每個多部分上傳的最大部分數量,並使用設定的 chunk_size 間接設定最大支援檔案大小上限。 使用 chunk_size=16Mi,最大檔案大小為 16 GiB。 |
upload_concurrency=8 |
設定在多部分上傳期間並行上傳的部分數量。 |