ossfs 1.0 を使用すると、静的プロビジョニングボリュームを作成することで、既存の Object Storage Service (OSS) バケットを永続ストレージとしてマウントできます。この方法は、設定ファイル、画像、ビデオ リソースのマウントなど、同時読み取り、頻度の低いランダム書き込み、変更されたファイル権限を伴う汎用的なユースケースに適しています。
前提条件
ご利用のクラスターと Container Storage Interface (CSI) コンポーネント (csi-plugin および csi-provisioner) がバージョン要件を満たしていることを確認してください:
RAM Roles for Service Accounts (RRSA) 認証を使用したマウント:クラスターのバージョンは 1.26 以降、CSI のバージョンは v1.30.4 以降である必要があります。
1.30.4 より前のバージョンで RRSA 機能を使用した場合、「[製品変更] CSI ossfs バージョンのアップグレードとマウントプロセスの最適化」で説明されているように、RAM ロールの権限付与設定を追加する必要があります。
AccessKey の使用:安定したマウントのため、CSI v1.18.8.45 以降を推奨します。
クラスターをアップグレードするには、「クラスターの手動アップグレード」をご参照ください。コンポーネントをアップグレードするには、「CSI コンポーネントのアップグレード」をご参照ください。
CSI v1.30.4-* 以降、OSS 静的プロビジョニングボリュームのマウントは csi-provisioner コンポーネントに依存します。
ステップ 1:認証方式の選択と認証情報の準備
OSS バケットリソースに安全にアクセスするために、まず認証メカニズムを設定します。
RRSA 認証:Pod に一時的で自動的にローテーションされる RAM ロールを付与し、アプリケーションレベルでの詳細な権限の隔離を実現します。この方法はより安全です。
AccessKey 認証:静的で長期的なキーを Secret に保存します。この方法は設定が簡単ですが、セキュリティは劣ります。
バージョン 1.26 以降のクラスターでは、AccessKey のローテーション時に
ossfsが再マウントされることによるサービス中断を避けるため、RRSA 認証の使用を推奨します。このガイドでは、クラスターと OSS バケットが同じ Alibaba Cloud アカウント配下にあることを前提としています。アカウント間で OSS バケットをマウントする場合は、RRSA 認証の使用を推奨します。
RRSA の使用
1. クラスターで RRSA を有効化
クラスター ページで、対象のクラスターを見つけてその名前をクリックします。左側のペインで [クラスター情報] をクリックします。
[基本情報] タブで、[セキュリティと監査] セクションを見つけます。[RRSA OIDC] の右側にある [有効化] をクリックします。画面の指示に従い、オフピーク時に RRSA を有効にします。
クラスターのステータスが [更新中] から [実行中] に変わると、RRSA は正常に有効化されています。
重要RRSA を有効にすると、クラスターで作成される新しい ServiceAccount トークンの最大有効期間は 12 時間に制限されます。
ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。
2. RAM ロールの作成と権限付与
Pod が OSS ボリュームにアクセスするために引き受けることができる RAM ロールを作成します。
AccessKey の使用
OSS アクセス権限を持つ RAM ユーザーを作成し、その AccessKey を取得します。これにより、ユーザーは OSS バケットに対する操作を実行する権限を得ます。
RAM ユーザーを作成します (すでに存在する場合はこのステップをスキップします)。
RAM コンソールの [ユーザーの作成] ページに移動します。画面の指示に従って RAM ユーザーを作成します。ログイン名とパスワードを設定する必要があります。
アクセスポリシーを作成します。
この例では、最小権限の原則に従います。対象の OSS バケットへのアクセス (読み取り専用または読み書き権限) を許可するカスタムポリシーを作成します。
RAM コンソールの [ポリシーの作成] ページに移動します。[スクリプトエディター] タブに切り替えて、ポリシースクリプトを入力します。
OSS 読み取り専用ポリシー
<myBucketName>を実際のバケット名に置き換えてください。{ "Statement": [ { "Action": [ "oss:Get*", "oss:List*" ], "Effect": "Allow", "Resource": [ "acs:oss:*:*:<myBucketName>", "acs:oss:*:*:<myBucketName>/*" ] } ], "Version": "1" }OSS 読み書きポリシー
<myBucketName>を実際のバケット名に置き換えてください。{ "Statement": [ { "Action": "oss:*", "Effect": "Allow", "Resource": [ "acs:oss:*:*:<myBucketName>", "acs:oss:*:*:<myBucketName>/*" ] } ], "Version": "1" }コンソールで PV を作成する場合、
oss:ListBuckets権限も必要です。{ "Effect": "Allow", "Action": "oss:ListBuckets", "Resource": "*" }(オプション) KMS で管理されているカスタマーマスターキー (CMK) ID を使用して OSS オブジェクトを暗号化する場合、RAM ユーザーに KMS 権限も設定する必要があります。詳細については、「KMS で管理されている特定の CMK ID を使用した暗号化」をご参照ください。
ポリシーを RAM ユーザーに付与します。
RAM コンソールの [ユーザー] ページに移動します。対象のユーザーの [操作] 列で、[権限の追加] をクリックします。
[アクセスポリシー] セクションで、前のステップで作成したポリシーを検索して選択し、権限に追加します。
RAM ユーザーの AccessKey を作成します。これを PV が使用する Secret として保存します。
RAM コンソールの [ユーザー] ページに移動します。対象のユーザーをクリックします。次に、[AccessKey] セクションで、[AccessKey の作成] をクリックします。
表示されるダイアログボックスで、画面の指示に従って AccessKey を作成します。AccessKey ID と AccessKey Secret を取得し、安全に保管する必要があります。
ステップ 2:PV の作成
Persistent Volume (PV) を作成して、既存の OSS バケットをクラスターに登録します。
RRSA 方式
pv-oss-rrsa.yamlという名前のファイルを作成します。apiVersion: v1 kind: PersistentVolume metadata: # PV 名 name: pv-oss # PV ラベル labels: alicloud-pvname: pv-oss spec: capacity: # ボリューム容量を定義 storage: 10Gi # アクセスモード accessModes: - ReadOnlyMany persistentVolumeReclaimPolicy: Retain csi: driver: ossplugin.csi.alibabacloud.com # PV 名 (metadata.name) と同じである必要があります volumeHandle: pv-oss volumeAttributes: # 実際のバケット名に置き換えます bucket: "your-bucket-name" # バケットのルートディレクトリまたは指定したサブディレクトリをマウントします path: / # バケットが配置されているリージョンのエンドポイント url: "http://oss-cn-hangzhou-internal.aliyuncs.com" otherOpts: "-o umask=022 -o max_stat_cache_size=100000 -o allow_other" authType: "rrsa" # 作成または変更した RAM ロール roleName: "demo-role-for-rrsa" # OSS リクエスト署名バージョン sigVersion: "v4"パラメーター
説明
storageOSS ボリュームの容量を定義します。この値は、PV と PVC を一致させるためにのみ使用されます。
accessModesアクセスモードを設定します。
ReadOnlyManyとReadWriteManyをサポートします。ReadOnlyManyを選択すると、ossfs は OSS バケットを読み取り専用モードでマウントします。persistentVolumeReclaimPolicyPV のリクレームポリシー。OSS ボリュームは現在
Retainのみをサポートしており、PVC が削除された後も PV と OSS バケット内のデータは保持されます。driverドライバーのタイプを定義します。Alibaba Cloud OSS CSI プラグインを使用する場合、
ossplugin.csi.alibabacloud.comである必要があります。volumeHandlePV 名 (
metadata.name) と同じである必要があります。bucketマウントする OSS バケット。
pathCSI コンポーネントのバージョン v1.14.8.32-c77e277b-aliyun 以降が必要です。
バケットのルートディレクトリからの相対マウントパスを指定します。デフォルトは
/で、バケット全体をマウントします。ossfs のバージョンが 1.91 より前の場合、指定された
pathは OSS バケットにすでに存在している必要があります。詳細については、「ossfs 1.91 以降の新機能」をご参照ください。urlOSS バケットへのアクセスエンドポイント。
クラスターノードとバケットが同じリージョンにある場合、または Virtual Private Cloud (VPC) 接続が確立されている場合は、内部エンドポイントを使用します。
マウントノードとバケットが異なるリージョンにある場合は、パブリックエンドポイントを使用します。
以下は、異なるアクセスエンドポイントの一般的なフォーマットです:
内部:
http://oss-{{regionName}}-internal.aliyuncs.comまたはhttps://oss-{{regionName}}-internal.aliyuncs.com。内部アクセスエンドポイントのフォーマット
vpc100-oss-{{regionName}}.aliyuncs.comは非推奨です。できるだけ早く新しいフォーマットに切り替えてください。パブリック:
http://oss-{{regionName}}.aliyuncs.comまたはhttps://oss-{{regionName}}.aliyuncs.com。
otherOptsOSS ボリュームのカスタムパラメーターを
-o *** -o ***の形式で入力します。例:-o umask=022 -o max_stat_cache_size=100000 -o allow_other。authTypeRRSA 認証を使用するために
rrsaに設定します。roleName作成または変更した RAM ロールに設定します。
異なる PV に異なる権限を設定するには、異なる RAM ロールを作成し、PV で異なる
roleName値を指定します。sigVersionOSS サーバーへのリクエストの署名バージョン。
デフォルトの RRSA 認証が要件を満たさない場合 (例えば、デフォルト以外の ServiceAccount やサードパーティの OIDC を使用する場合)、PV 設定を変更して特定の ARN または ServiceAccount を指定できます。詳細については、「RRSA 認証で指定の ARN または ServiceAccount を使用するにはどうすればよいですか?」をご参照ください。
PV を作成します。
kubectl create -f pv-oss-rrsa.yaml
AccessKey 方式
kubectl
ステップ 1 で取得した AccessKey を PV が使用する Secret として保存するために、
oss-secret.yamlという名前のファイルを作成します。apiVersion: v1 kind: Secret metadata: name: oss-secret # アプリケーションが存在する名前空間と同じである必要があります namespace: default stringData: # 取得した AccessKey ID に置き換えます akId: <your AccessKey ID> # 取得した AccessKey Secret に置き換えます akSecret: <your AccessKey Secret>Secret を作成します。
kubectl create -f oss-secret.yamlpv-oss-ram.yamlという名前のファイルを作成します。apiVersion: v1 kind: PersistentVolume metadata: # PV 名 name: pv-oss # PV ラベル labels: alicloud-pvname: pv-oss spec: capacity: storage: 10Gi accessModes: - ReadOnlyMany persistentVolumeReclaimPolicy: Retain csi: driver: ossplugin.csi.alibabacloud.com # PV 名 (metadata.name) と同じである必要があります volumeHandle: pv-oss # AccessKey 情報を取得するために Secret オブジェクトを指定します nodePublishSecretRef: name: oss-secret namespace: default volumeAttributes: # 実際のバケット名に置き換えます bucket: "your-bucket-name" url: "http://oss-cn-hangzhou-internal.aliyuncs.com" otherOpts: "-o umask=022 -o max_stat_cache_size=100000 -o allow_other" path: "/"パラメーター
説明
storageOSS ボリュームの容量を定義します。この値は、PV と PVC を一致させるためにのみ使用されます。
accessModesアクセスモードを設定します。
ReadOnlyManyとReadWriteManyをサポートします。ReadOnlyManyを選択すると、ossfs は OSS バケットを読み取り専用モードでマウントします。persistentVolumeReclaimPolicyPV のリクレームポリシー。OSS ボリュームは現在
Retainのみをサポートしており、PVC が削除された後も PV と OSS バケット内のデータは保持されます。driverドライバーのタイプを定義します。Alibaba Cloud OSS CSI プラグインを使用する場合、
ossplugin.csi.alibabacloud.comである必要があります。nodePublishSecretRefPV をマウントする際に AccessKey 情報を提供する Secret を指定します。
volumeHandlePV 名 (
metadata.name) と同じである必要があります。bucketマウントする OSS バケット。
urlOSS バケットへのアクセスエンドポイント。
クラスターノードとバケットが同じリージョンにある場合、または Virtual Private Cloud (VPC) 接続が確立されている場合は、内部エンドポイントを使用します。
マウントノードとバケットが異なるリージョンにある場合は、パブリックエンドポイントを使用します。
以下は、異なるアクセスエンドポイントの一般的なフォーマットです:
内部:
http://oss-{{regionName}}-internal.aliyuncs.comまたはhttps://oss-{{regionName}}-internal.aliyuncs.com。内部アクセスエンドポイントのフォーマット
vpc100-oss-{{regionName}}.aliyuncs.comは非推奨です。できるだけ早く新しいフォーマットに切り替えてください。パブリック:
http://oss-{{regionName}}.aliyuncs.comまたはhttps://oss-{{regionName}}.aliyuncs.com。
otherOptsOSS ボリュームのカスタムパラメーターを
-o *** -o ***の形式で入力します。例:-o umask=022 -o max_stat_cache_size=100000 -o allow_other。pathCSI コンポーネントのバージョン v1.14.8.32-c77e277b-aliyun 以降が必要です。
バケットのルートディレクトリからの相対マウントパスを指定します。デフォルトは
/で、バケット全体をマウントします。ossfs のバージョンが 1.91 より前の場合、指定された
pathは OSS バケットにすでに存在している必要があります。詳細については、「ossfs 1.91 以降の新機能」をご参照ください。sigVersionOSS サーバーへのリクエストの署名バージョン。
PV を作成します。
kubectl create -f pv-oss-ram.yaml
コンソール
ステップ 1 で取得した AccessKey を PV が使用する Secret として保存します。
クラスター ページで、対象のクラスターを見つけてその名前をクリックします。左側のペインで、 を選択します。
[YAML から作成] をクリックし、画面の指示に従って Secret を作成します。
apiVersion: v1
kind: Secret
metadata:
name: oss-secret
# アプリケーションが存在する名前空間と同じである必要があります
namespace: default
stringData:
# 取得した AccessKey ID に置き換えます
akId: <your AccessKey ID>
# 取得した AccessKey Secret に置き換えます
akSecret: <your AccessKey Secret>クラスター ページで、対象のクラスターを見つけてその名前をクリックします。左側のペインで、 を選択します。
[PersistentVolume] ページで、[作成] をクリックします。[ボリュームタイプ] を OSS に設定し、パラメーターを構成してから送信します。
以下の表に主要なパラメーターをリストします。
パラメーター
説明
[合計容量]
作成するボリュームの容量。
アクセスモード
アクセスモードを設定します。
ReadOnlyManyとReadWriteManyをサポートします。ReadOnlyManyを選択すると、ossfs は OSS バケットを読み取り専用モードでマウントします。アクセス資格情報
OSS にアクセスするために必要な Secret を設定します。これは ステップ 1 で取得した AccessKey ID と AccessKey Secret です。
[オプションパラメーター]
OSS ボリュームのカスタムパラメーターを
-o *** -o ***の形式で入力します。例:-o umask=022 -o max_stat_cache_size=100000 -o allow_other。バケット ID
使用する OSS バケット。
設定された AccessKey でアクセスできるバケットのみがここに表示されます。
[OSS パス]
CSI コンポーネントのバージョン v1.14.8.32-c77e277b-aliyun 以降が必要です。
バケットのルートディレクトリからの相対マウントパスを指定します。デフォルトは
/で、バケット全体をマウントします。ossfs のバージョンが 1.91 より前の場合、指定された
pathは OSS バケットにすでに存在している必要があります。詳細については、「ossfs 1.91 以降の新機能」をご参照ください。エンドポイント
OSS バケットへのアクセスエンドポイント。
クラスターノードとバケットが同じリージョンにある場合、または Virtual Private Cloud (VPC) 接続が確立されている場合は、内部エンドポイントを使用します。
マウントノードとバケットが異なるリージョンにある場合は、パブリックエンドポイントを使用します。
以下は、異なるアクセスエンドポイントの一般的なフォーマットです:
内部:
http://oss-{{regionName}}-internal.aliyuncs.comまたはhttps://oss-{{regionName}}-internal.aliyuncs.com。内部アクセスエンドポイントのフォーマット
vpc100-oss-{{regionName}}.aliyuncs.comは非推奨です。できるだけ早く新しいフォーマットに切り替えてください。パブリック:
http://oss-{{regionName}}.aliyuncs.comまたはhttps://oss-{{regionName}}.aliyuncs.com。
内部ネットワーク経由でアクセスする場合、デフォルトで HTTP プロトコルが使用されます。HTTPS を使用するには、kubectl 方式を使用してください。
手順3:PVC の作成
アプリケーションで必要な永続ストレージ容量を要求するために、PersistentVolumeClaim (PVC) を作成します。
kubectl
pvc-oss.yamlという名前のファイルを作成します。apiVersion: v1 kind: PersistentVolumeClaim metadata: # PVC 名 name: pvc-oss namespace: default spec: # アクセスモードを設定します。ReadOnlyMany は、ossfs が OSS バケットを読み取り専用モードでマウントすることを示します。 accessModes: - ReadOnlyMany resources: requests: # ストレージ容量を宣言します。これは、ボリュームの合計容量を超えることはできません。 storage: 10Gi selector: matchLabels: # ラベルで PV を照合します alicloud-pvname: pv-ossPVC を作成します。
kubectl create -f pvc-oss.yamlPVC のステータスを確認します。
kubectl get pvc pvc-oss出力結果から、PVC のステータスが
Boundになり、PV にバインドされたことがわかります。NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE pvc-oss Bound pv-oss 10Gi ROX <unset> 6s
コンソール
クラスター ページで、目的のクラスターを見つけ、その名前をクリックします。 左側のペインで、 を選択します。
[永続ボリューム要求] ページで、[作成] をクリックします。 [PVC タイプ] として [OSS] を選択し、指示に従ってパラメーターを設定します。
主要なパラメーターは次のとおりです。
パラメーター
説明
プロビジョニングモード
[既存の PersistentVolume を使用] を選択します。
PV を作成していない場合は、[プロビジョニングモード] を [PersistentVolume の作成] に設定し、PV パラメーターを設定できます。
合計容量
PVC の容量です。PV の容量を超えることはできません。
手順4:アプリケーションの作成とボリュームのマウント
アプリケーションで PVC を参照してマウントを完了します。
kubectl
oss-static.yamlという名前のファイルを作成します。apiVersion: apps/v1 kind: Deployment metadata: name: oss-static labels: app: nginx spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6 ports: - containerPort: 80 volumeMounts: # コンテナー内のマウントパス - name: pvc-oss mountPath: "/data" # ヘルスチェックの設定 livenessProbe: exec: command: - ls - /data initialDelaySeconds: 30 periodSeconds: 30 volumes: - name: pvc-oss persistentVolumeClaim: # 作成した PVC を参照 claimName: pvc-ossアプリケーションを作成します。
kubectl create -f oss-static.yamlマウント結果を確認します。
Pod のステータスが
Runningであることを確認します。kubectl get pod -l app=nginxPod に入り、マウントポイントを検査します。
kubectl exec -it <pod-name> -- ls /data出力には、OSS マウントパスのデータが表示されます。
コンソール
クラスター ページで、対象のクラスターを見つけてその名前をクリックします。 左側のナビゲーションペインで、 を選択します。
[デプロイメント] ページの右上隅にある [イメージから作成] をクリックします。
プロンプトに従って、アプリケーションのパラメーターを設定します。
主要なパラメーターを以下に示します。 その他のパラメーターはデフォルト値のままでかまいません。 詳細については、「ステートレスワークロード (Deployment) の作成」をご参照ください。
設定ページ
パラメーター
説明
[基本情報]
[レプリカ数]
Deployment のレプリカ数。
[コンテナー設定]
イメージ名
アプリケーションのデプロイに使用するイメージのアドレス。例:
anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6[必須リソース]
必須の vCPU およびメモリリソース。
ボリューム
[クラウドストレージ要求の追加] をクリックし、パラメーターを設定します。
[マウントソース]:先ほど作成した PVC を選択します。
[コンテナーパス]:OSS ボリュームをマウントするコンテナー内のパスを入力します。例:
/data
ラベルおよびアノテーション
Pod ラベル
たとえば、名前が
appで、値がnginxのラベルです。アプリケーションのデプロイステータスを確認します。
[デプロイメント] ページで、アプリケーション名をクリックします。[ポッド] タブで、ポッドが正常に実行されていること (ステータス: 実行中) を確認します。
手順5:共有ストレージと永続ストレージの確認
共有ストレージの確認
1つの Pod にファイルを作成し、別の Pod でそのファイルを表示することで、共有ストレージ機能を確認します。
Pod 情報を表示し、出力から Pod 名を取得します。
kubectl get pod -l app=nginxいずれかの Pod に
tmpfileという名前のファイルを作成します。 Pod 名がoss-static-66fbb85b67-d****の場合を例にします。ReadWriteMany:/dataパスにtmpfileファイルを作成します。kubectl exec oss-static-66fbb85b67-d**** -- touch /data/tmpfileReadOnlyMany:OSS コンソールを使用するか、cp コマンドでファイルをアップロードして、tmpfileを OSS バケットの対応するパスにアップロードします。
別の Pod のマウントパスからファイルを表示します。
Pod 名が
oss-static-66fbb85b67-l****で、マウントパスが/dataの場合を例にします。kubectl exec oss-static-66fbb85b67-l**** -- ls /data | grep tmpfile出力として
tmpfileが返され、Pod がデータを共有していることが確認できます。tmpfile期待される出力が表示されない場合は、ご利用の CSI コンポーネントのバージョンが v1.20.7 以降であることを確認してください。
永続ストレージの確認
Pod を削除して再作成し、新しい Pod にファイルがまだ存在するかどうかを確認することで、データの永続性を検証します。
アプリケーション Pod を削除して、再構築をトリガーします。
kubectl delete pod oss-static-66fbb85b67-d****Pod を確認し、新しい Pod が起動して
Running状態になるまで待ちます。kubectl get pod -l app=nginx/dataパスでファイルを確認します。新しい Pod 名が
oss-static-66fbb85b67-z****で、マウントパスが/dataの場合を例にします。kubectl exec oss-static-66fbb85b67-z**** -- ls /data | grep tmpfile出力として
tmpfileが返され、ファイルがまだ存在していることが確認できます。これは、データが永続化されていることを示します。tmpfile
注意事項
データ整合性リスク
同時書き込みの整合性リスク:書き込みの安定性を向上させるため、CSI コンポーネントを v1.28 以降にアップグレードすることを推奨します。ただし、単一ファイルへの同時書き込みシナリオでは、OSS の「上書きアップロード」機能により、データが上書きされる可能性があります。アプリケーション層でデータ整合性を確保する必要があります。
データ同期と誤削除のリスク:ボリュームがマウントされると、アプリケーション Pod またはホストノードのマウントパスで行われたファイルの削除や変更は、OSS バケット内のソースファイルと直接同期されます。偶発的なデータ損失を防ぐため、ご利用の OSS バケットでバージョニングを有効にすることを推奨します。
アプリケーションの安定性に関するリスク
Out of Memory (OOM) リスク:初めて多数のファイル (例:100,000 以上、ノードのメモリに依存) に対して
readdir操作 (シェルスクリプトのlsコマンドなど) を実行すると、ossfs がすべてのメタデータを一度に読み込むことで大量のメモリを消費する場合があります。これにより、Out of Memory (OOM) エラーがトリガーされ、プロセスが強制終了し、マウントポイントが利用できなくなる可能性があります。このリスクを軽減するために、OSS バケットのサブディレクトリをマウントするか、ディレクトリ構造を最適化することを推奨します。
マウント時間の増加:アプリケーションで
securityContext.fsgroupを設定すると、ボリュームのマウント時に kubelet がファイル権限を再帰的に変更 (chmod/chown) します。ファイル数が非常に多い場合、マウント時間が大幅に増加し、Pod の起動に深刻な遅延を引き起こす可能性があります。このパラメーターを設定し、かつマウント時間を短縮する必要がある場合は、「OSS ボリュームのマウント時間の増加」をご参照ください。
キーの無効化リスク (AccessKey 認証):AccessKey が無効になったり、その権限が変更されたりすると、アプリケーションは即座にアクセスできなくなります。
アクセスを復旧するには、Secret 内の認証情報を更新し、アプリケーション Pod を再起動して再マウントを強制する必要がありますが、これによりサービス中断が発生します。この操作はメンテナンスウィンドウ中に実行してください。詳細については、「ソリューション」をご参照ください。
コストリスク
パートコスト:
ossfsは 10 MB を超えるファイルをパート単位でアップロードします。アップロードが予期せず中断された場合 (例:アプリケーションの再起動など)、パートを手動で削除するか、ライフサイクルルールを使用して削除する必要があります。これにより、未完了のパートがストレージ容量を消費し、コストが発生するのを防ぎます。
関連ドキュメント
Container Network File System (CNFS) を使用して OSS ボリュームを管理することで、パフォーマンスと QoS コントロールを向上させることができます。 詳細については、「OSS ボリュームのライフサイクル管理」をご参照ください。
OSS に保存されている機密データを保護するために、サーバーサイド暗号化を有効にすることを推奨します。 詳細については、「ossfs 1.0 ボリュームの暗号化」をご参照ください。
ossfs と OSS に関するよくある質問については、「ossfs 1.0 (デフォルト)」および「ossfs 1.0 ボリュームに関するよくある質問」をご参照ください。
コンテナーストレージモニタリングを有効にし、アラートを設定することで、ボリュームの異常やパフォーマンスボトルネックを迅速に検出できます。
ossfs 1.0 は、ランダム書き込みおよび同時書き込みのシナリオにおいて、ossfs 2.0 よりも信頼性の高いデータ整合性を提供します。 ただし、ossfs 2.0 は、シーケンシャル読み取りおよび書き込みのシナリオで、より優れたパフォーマンスを提供します。