第13章 Fuse on OpenShift での永続ストレージの使用

Fuse on OpenShift アプリケーションは、永続ファイルシステムがない OpenShift コンテナーをベースとしています。アプリケーションを起動するたびに、イミュータブルな Docker 形式のイメージで新しいコンテナーに起動されます。そのため、コンテナーが停止するとファイルシステムの永続データが失われます。しかし、アプリケーションは一部の状態を永続ストアのデータとして保存する必要があり、アプリケーションは共通のデータストアへのアクセスを共有することがあります。OpenShift プラットフォームは、外部のストアを永続ストレージとして提供することをサポートします。

13.1. ボリュームおよびボリュームタイプ

OpenShift では、Pod およびコンテナーは ボリューム を、複数のローカルまたはネットワーク接続ストレージエンドポイントが対応するファイルシステムとしてマウントすることができます。

ボリュームタイプには以下が含まれます。

  • emptydir (空のディレクトリー): デフォルトのボリュームタイプです。これは、Pod がローカルホストに作成されると割り当てられるディレクトリーです。サーバー全体でコピーされず、Pod を削除するとディレクトリーも削除されます。
  • configmap: 名前付きの configmap からキーと値のペアで内容が追加されるディレクトリーです。
  • hostPath (ホストディレクトリー): 任意のホスト上の特定のパスを持つディレクトリーで、昇格された権限が必要です。
  • secret (マウントされたシークレット): シークレットボリュームは名前付きのシークレットを提供されるディレクトリーにマウントします。
  • persistentvolumeclaim または pvc (永続ボリュームクレーム): コンテナーのボリュームディレクトリーを、名前で割り当てた永続ボリュームクレームにリンクします。永続ボリュームクレームは、ストレージ割り当てのリクエストです。クレームがバインドされていないと、Pod が開始しないことに注意してください。

ボリュームは Pod レベルで設定され、hostPath を使用して外部ストレージへの直接アクセスのみが可能です。そのため、複数の Pod の共有リソースへのアクセスを hostPath ボリュームとして管理することは困難です。