すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:OSSボリュームに関するFAQ

最終更新日:Dec 11, 2024

このトピックでは、Object Storage Service (OSS) ボリュームに関するよくある質問に対する回答を提供します。

OSSボリュームのマウントに失敗するのはなぜですか?

現象:

OSSボリュームのマウントに失敗しました。

原因:

  • 使用したAccessKeyペアが無効です。

  • マウントするOSSバケットのエンドポイントにアクセスできません。

  • ノードのオペレーティングシステムはCentOS 7でもAlibaba Cloud Linux 2でもありません。

解決策:

  • 有効なAccessKeyペアを使用します。

  • マウントするOSSバケットのエンドポイントにアクセスできることを確認します。

  • 一時的な解決策: ノード内の最新バージョンのossfsを手動でダウンロードし、ポッドをtragger Object Storage Service (OSS) ボリュームに削除して再マウントします。

    重要

    FlexVolumeポッドが再起動するたびに、ossfsを元のバージョンに戻します。 既にマウントされているサービスには影響しません。 この問題を修正するには、最初にFlexVolumeからContainer Storage Interface (CSI) にアップグレードしてから、ノードのオペレーティングシステムをアップグレードすることをお勧めします。 詳細については、「FlexVolumeからCSIへのアップグレード」をご参照ください。

ポッドを実行するクラスターがアップグレードされた後、コンテナーにマウントされているOSSボリュームのディレクトリが使用できなくなるのはなぜですか。

現象:

コンテナーにマウントされているOSSボリュームのディレクトリは、ポッドを実行するクラスターがアップグレードされると使用できなくなります。

原因:

クラスターのアップグレード後、kubeletとコンテナーネットワークが再起動され、OSSFSプロセスが再起動されます。 その結果、ホストとコンテナディレクトリ間のマッピングが無効になります。

解決策:

コンテナーを再起動するか、OSSボリュームがマウントされているポッドを再作成します。 ヘルスチェック機能を設定して、コンテナーまたはポッドの再起動を自動化できます。

OSSの使用方法の詳細については、「OSSボリュームの概要」をご参照ください。

OSSボリュームのマウントに時間がかかるのはなぜですか?

現象:

OSSボリュームのマウントには長い時間がかかります。

原因:

アプリケーションテンプレートでsecurityContext.fsgroupパラメーターが設定されている場合、ボリュームのマウント後にkubeletがchmodまたはchown操作を実行するため、時間の消費が増加します。

解決策:

  • アプリケーションテンプレートでsecurityContext.fsgroupパラメーターが設定されている場合、securityContextセクションのfsgroupパラメーターを削除します。

  • マウントされたディレクトリ内のファイルのユーザーID (UID) とモードを設定する場合は、OSSバケットをElastic Compute Service (ECS) インスタンスに手動でマウントできます。 その後、CLIを使用してchownおよびchmod操作を実行し、FlexVolumeプラグインを使用してOSSボリュームをプロビジョニングできます。 FlexVolumeを使用してOSSボリュームをプロビジョニングする方法の詳細については、「静的にプロビジョニングされたOSSボリュームのマウント」をご参照ください。

  • Kubernetes 1.20以降のクラスターの場合、fsGroupChangePolicyパラメーターをOnRootMismatchに設定できます。 このように、chmodまたはchown操作は、ボリュームを使用するポッドが最初に起動されたときにのみ実行されます。 詳細については、「コンテナーのセキュリティコンテキストの設定」をご参照ください。