ossfs 1.0 クライアントは、コンテナストレージインターフェイス (CSI) コンポーネントの新しいバージョンごとにアップグレードされます。 このトピックでは、ossfs 1.0 のリリース情報と、ossfs 1.0 のバージョンを確認および切り替える方法について説明します。
機能
CSI を使用して Object Storage Service (OSS) ボリュームをマウントすると、csi-plugin コンポーネントが ossfs プロセスを開始します。 このプロセスは、OSS サーバーからコンテナ内の指定されたマウントパスにデータをマウントします。 これにより、通常のファイルシステムのように、標準の POSIX 操作を使用して OSS バケット内のオブジェクトの読み書きができます。 これにより、クラウドストレージリソースへのアクセスと管理が簡素化されます。
ossfs 1.0 は、ユーザースペースファイルシステムであり、Object Storage Service (OSS) のバケットを Linux のローカルファイルシステムにマウントできます。 ossfs 1.0 クライアントを使用すると、OSS 内のオブジェクトにローカルファイルのようにアクセスして管理でき、シームレスなデータ共有と操作が可能になります。 主な機能は次のとおりです。
-
ファイルやディレクトリのアップロードとダウンロード、ユーザー権限の設定など、POSIX ファイルプロトコル標準のほとんどの機能をサポートしています。
-
ファイル転送には、デフォルトで OSS のマルチパートアップロード機能と再開可能なアップロード機能を使用します。
-
データ整合性を確保するための MD5 検証をサポートしています。
-
s3fs をベースに構築されており、そのすべての機能が含まれています。
バージョン情報
ossfs 1.0 のバージョンフォーマットは x.yy.z です。各部分の意味は次のとおりです。
-
x.yy は、ossfs のベースとなっているオープンソースの s3fs のバージョンを表します。 CSI 環境変数などの設定オプションを使用して、以前の x.yy バージョンにロールバックできます。
-
z は、ossfs 自体のイテレーションバージョンを表し、OSS および ACK 環境向けの機能強化が含まれています。 これには、モニタリング、認証、暗号化の新機能などが含まれます。 バージョンの詳細については、「csi-plugin」をご参照ください。
-
オープンソースの ossfs バージョンと区別するために、コンテナ版の ossfs には .ack.1 というサフィックスが含まれます (例:1.80.6.ack.1)。
ossfs のメジャーバージョンの履歴
ファイル操作に高いパフォーマンスが必要な場合は、ossfs 1.0 バージョン 1.91 以降に切り替えることを推奨します。 バージョン 1.91 以降のユースケースについては、「バージョン 1.91 以降を有効にするためのベストプラクティス」をご参照ください。 バージョンの切り替え方法については、本トピックの「ossfs 1.91 以降への切り替え」をご参照ください。
|
アーキテクチャ |
ossfs 1.0 バージョン |
対応する CSI バージョン |
|
Arm64 |
1.91 以降 |
|
|
1.80.x |
v1.20.5-ff6490f-aliyun (Arm64 をサポートする最初の CSI バージョン) |
|
|
AMD64 |
1.91 以降 |
|
|
1.88.x |
v1.22.14-820d8870-aliyun |
|
|
1.86.x |
v1.16.9.43-f36bb540-aliyun |
|
|
1.80.x |
初期バージョン |
ossfs 1.91 以降のバージョンの詳細な履歴については、「バージョンアップデート機能」をご参照ください。
ossfs バージョンの確認
-
CSI バージョンが 1.28 未満で、かつ 1.26.6 でない場合、ossfs 1.0 はノード上で直接実行されます。 いずれかのノードにログインし、次のコマンドを実行して ossfs 1.0 のバージョンを確認します。
/usr/local/bin/ossfs --version
-
CSI バージョンが 1.26.6、または 1.28.1 以降の場合、ossfs 1.0 はクラスター内の Pod 内部のコンテナとして実行されます。 CSI のバージョンに応じて、次のいずれかの方法で ossfs 1.0 のバージョンを確認できます。
CSI バージョン 1.30.4 以降
説明CSI バージョンが 1.30.4 以降の場合、OSS ボリュームをマウントすると、CSI コンポーネントは `ack-csi-fuse` 名前空間に必要な Pod を自動的に作成します。
-
実行中の Pod を照会します。
kubectl -n ack-csi-fuse get pod | grep csi-fuse-ossfs -
ossfs 1.0 のバージョンを確認します。
kubectl -n ack-csi-fuse exec -it <csi-fuse-ossfs-xxxx> -- ossfs --version
CSI バージョン 1.30.4 未満
説明CSI バージョンが 1.30.4 未満の場合、OSS ボリュームをマウントすると、CSI コンポーネントは `kube-system` 名前空間に必要な Pod を自動的に作成します。
-
実行中の Pod を照会します。
kubectl -n kube-system get pod | grep csi-fuse-ossfs -
ossfs のバージョンを確認します。
kubectl -n kube-system exec -it <csi-fuse-ossfs-xxxx> -- ossfs --version
-
ossfs 1.91 以降への切り替え
方法1:CSI バージョンのアップグレード
CSI バージョン 1.30.4 以降では、デフォルトで ossfs 1.0 バージョン 1.91 以降が使用されます。 CSI コンポーネントをアップグレードすることで、新しい ossfs バージョンに切り替えることができます。
方法2:フィーチャーゲートの有効化
`UpdatedOssfsVersion` フィーチャーゲートを有効にすることで、ossfs 1.0 バージョン 1.91 以降を有効にできます。 次の手順に従ってください。
デフォルトでは、同じノード上の同じ OSS ボリュームをマウントする Pod は、単一の ossfs プロセスを共有します。 これは、クラスターが `csi-fuse-ossfs-***` という名前の Pod を 1 つだけ起動することを意味します。 `UpdatedOssfsVersion` フィーチャーゲートを有効にすると、新しく起動された ossfs コンテナは自動的にバージョン 1.91 以降のイメージを使用します。 OSS ボリュームを使用している既存のアプリケーションは影響を受けません。 実行中のアプリケーションの ossfs バージョンのアップグレードを手動でトリガーするには、「共有マウントモードで ossfs プロセスを再起動する方法」をご参照ください。
-
csi-plugin のバージョンが 1.30.1 以降であることを確認します。
ACK コンソールにログインします。 左側のナビゲーションウィンドウで、クラスターリスト をクリックします。
クラスターリスト ページで、対象クラスターの名前をクリックします。 左側のナビゲーションウィンドウで、アドオン管理 をクリックします。
-
[アドオン] ページで、csi-plugin コンポーネントを見つけ、現在のバージョンを確認します。
バージョンが 1.30.1 未満の場合は、コンポーネントカードの右下隅にある アップグレード をクリックして、最新バージョンにアップグレードします。
-
`UpdatedOssfsVersion` フィーチャーゲートを有効にします。
説明コンソールからフィーチャーゲートを有効にすると、設定した FeatureGate パラメーターが既存のフィーチャーゲート設定をオーバーライドします。 kubectl を使用して他のフィーチャーゲートが以前に有効にされたかどうかが不明な場合は、kubectl を使用する方法を推奨します。
kubectl
-
csi-plugin の DaemonSet ファイルを編集します。
kubectl -n kube-system edit ds csi-plugin -
csi-plugin コンテナ (Init コンテナではない) の `args` セクションに、`--feature-gates=UpdatedOssfsVersion=true` パラメーターを追加します。
説明他のフィーチャーゲートがすでに有効になっている場合は、`--feature-gates=xxxxxx=true,yyyyyy=false,UpdatedOssfsVersion=true` の形式で新しいゲートを追加します。
変更後の `args` セクションは次のようになります。
- args: - --endpoint=$(CSI_ENDPOINT) - --v=2 - --driver=oss,nas,disk - --feature-gates=UpdatedOssfsVersion=true
コンソール
-
csi-plugin コンポーネントをアップグレードした後、コンポーネントカードの 設定 をクリックします。
-
[csi-plugin パラメーター] ページで、FeatureGate パラメーターを UpdatedOssfsVersion=true に設定し、OK をクリックします。
他のフィーチャーゲートがすでに有効になっている場合は、`xxxxxx=true,yyyyyy=false,UpdatedOssfsVersion=true` の形式を使用します。
-
関連ドキュメント
バージョン 1.91 以降の新機能とパフォーマンスベンチマークの詳細については、「ossfs 1.0 の新機能とパフォーマンスベンチマーク」をご参照ください。