persistentvolumeclaim とは?初心者向けにわかるKubernetesのPVC入門共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
persistentvolumeclaim とは?初心者向けにわかるKubernetesのPVC入門共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


persistentvolumeclaim とは?

この言葉を最初に見たとき、難しそうに感じるかもしれませんが、基本はとてもシンプルな考え方です。PersistentVolume(PV)はクラスタ内にある「使える storage」そのもの、PersistentVolumeClaim(PVC)はその storage を使いたい人の「請求書」のようなものです。Kubernetes ではアプリを動かすときにデータを長く保存する必要があり、そのデータの場所を PV が提供します。

まず、PV はあらかじめ用意されているか、StorageClass という仕組みを使って動的に作られます。PVC はアプリの要件に合わせて storage の大きさ(例: 1Gi)やアクセスモード(ReadWriteOnce など)を指定します。Kubernetes は PVC が出現すると、それに合う PV を探して結びつけます。これを「バインド」と呼びます。バインドが終わると、Pod がその PVC をマウントしてデータを書き込んだり読み取ったりできるようになります。

PVC の基本的な仕組み

PVC は「どれくらいの容量が必要か」「どんな使い方をしたいか」を宣言します。たとえば、1GiBytes のストレージを ReadWriteOnce(1 台のノードから読み書き可能)で使いたい、という具合です。StorageClass 名を指定すると、クラウド上のディスクのように、必要に応じて新しい PV を自動で作成してくれることがあります。これが「動的プロビジョニング」と呼ばれる仕組みです。

簡単な YAML の例

以下は PVC の基本的な設定の一例です(実際にはクラスタ内で適用します)。

apiVersion: v1kind: PersistentVolumeClaimmetadata: name: my-pvcspec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: standard

PVC と PV の関係を理解する表

用語説明
PersistentVolume (PV)クラスタ内のストレージの実体。PVCに割り当てられる前提の資源。
PersistentVolumeClaim (PVC)アプリが使いたいストレージの「請求書」。容量やアクセスモードを宣言する。
StorageClass動的に PV を作るための設定。クラウドのディスクなどを選べます。

このように、PVC を作るときには、どんなデータの保存が必要かを宣言し、Kubernetes が適切な PV を結びつけてくれます。結果として、アプリケーションは Pod が再起動してもデータを失わずに動作します。

最後に覚えておきたいポイントは3つです。1) PVC はデータの請求書2) PV はデータの実体3) StorageClass で動的にPVを作れることがあるという点です。これを理解すると、Kubernetes のストレージ周りがぐっと身近に感じられます。


persistentvolumeclaimの同意語

PersistentVolumeClaim
Kubernetes におけるストレージリソースの要求を表す公式オブジェクト。Pod が必要とする容量・アクセスモード・ストレージクラスを指定し、適合する PersistentVolume (PV) に割り当てられる。
PVC
PersistentVolumeClaim の略称。コード・YAML・コマンドラインでよく使われる短縮形。意味は PersistentVolumeClaim と同じ。
永続ボリュームクレーム
日本語表現の一つ。PVC と同義で、Pod が使う永続的なストレージを要求するオブジェクトを指す。
永続ボリューム要求
別表記の日本語訳。PVC と同じ意味で、容量・アクセスモード・ストレージクラスなどを定義して PV を請求するオブジェクト。
パーシステントボリュームクレーム
英語の音写表記。日本語解説で使われることがあるが、公式文書では PersistentVolumeClaim が主流表記。
Persistent Volume Claim
英語表記のスペース入り表記。意味は PersistentVolumeClaim と同じ。実務上は通常「PersistentVolumeClaim(1語)」の表記が推奨される。

persistentvolumeclaimの対義語・反対語

エフェメラルストレージ(Ephemeral storage)
一時的で永続性のないストレージ。Podのライフサイクルに紐づき、データは再起動や削除後に消える可能性が高い。PersistentVolumeClaim(PVC)の“長期的なストレージを請求する”性質の対概念として挙げられる。
emptyDir(エンプティDir)
Podが生存している間だけ存在する一時的なストレージ。PVCのように永続性を保証する仕組みではなく、短命なストレージの代表例。
PersistentVolume(PV)
クラスタ内の実際のストレージ資源。PVCはこのPVを請求してバインドされる。PVCとPVは対になる概念として理解すると、PVCの“対義語”というよりは役割の違いを理解しやすい。
非永続ストレージ
データを長期保存しないストレージの総称。PVCが追求する“永続的なストレージ”の反対の性質を示す表現として使える。

persistentvolumeclaimの共起語

PersistentVolume
PVC が参照する実体のストレージ資源。クラスタ内のストレージの実体です。
PV
PersistentVolume の略称。PVC が結びつく前のストレージ資源の正式名です。
StorageClass
動的プロビジョニングを可能にするストレージクラスの定義。
StorageClassName
PVC Spec に指定する StorageClass の名前。
AccessModes
PVC が要求するストレージのアクセスモードの集合。たとえば ReadWriteOnce など。
ReadWriteOnce
1 ノードでのみ読み書き可能なアクセスモードです。
ReadOnlyMany
複数ノードから読み取り専用でアクセス可能なモードです。
ReadWriteMany
複数ノードから同時に読み書き可能なモードです。
Resources
PVC が必要とするリソースの総称です。
Requests
Resources の中で実際に要求する量(容量)。
Storage
resources.requests.storage によって指定される容量の値です。
Phase
PVC の現在の状態を表すフェーズです。
Pending
まだ割り当てが完了していない状態です。
Bound
PVC が PV に結びつき、使用可能になった状態です。
Lost
PVC の関連情報が失われた状態です。
VolumeName
PVC に割り当てられた PV の名前です。
ClaimRef
この PVC が参照している PV の参照情報です。
Namespace
PVC が属する名前空間を示します。
DataSource
PVC 作成時にデータソースとして指定する VolumeSnapshot や他の PVC などです。
VolumeMode
ボリュームのモードを指定します(Filesystem または Block)。
Filesystem
ファイルシステムモードとして使用します。
Block
ブロックデバイスモードとして使用します。
DataSourceKind
データソースの種類を表します(VolumeSnapshot など)。
WaitForFirstConsumer
StorageClass のバインディングを最初の Pod が現れるまで待つ設定です。
VolumeBindingMode
StorageClass 内のボリュームバインディングの挙動を決定します。
DynamicProvisioning
StorageClass による動的プロビジョニングの概念です。
Provisioner
動的プロビジョニングを実行するストレージドライバ名です。
CSI
Container Storage Interface の略。ストレージドライバの標準規格です。
ReclaimPolicy
PV が PVC から外れた後の処理方針です(Delete / Retain)。
VolumeExpansion
PVC のサイズ拡張機能に関する機能です。
AllowVolumeExpansion
PVC のサイズ拡張を許可する設定です。
VolumeSnapshot
ボリュームのスナップショットを利用したバックアップ/クローンの機能です。

persistentvolumeclaimの関連用語

PersistentVolumeClaim
Kubernetes でストレージリソースを要求するオブジェクト。容量(int 束ねたストレージ量)、アクセスモード、StorageClass などを指定し、クラスタ内の適切な PersistentVolume に割り当ててもらいます。
PersistentVolume
実際のストレージリソースを表す Kubernetes オブジェクト。PV はクラスタのストレージを具体的に指し、PVC からの要求に基づいて割り当てられ、データを長期間保持します。
StorageClass
ストレージの種類や動的プロビジョニングの設定を定義するリソース。プロビジョナー名、パラメータ、VolumeBindingMode などを含みます。
DynamicProvisioning
PVC が作成されたときに、StorageClass に基づいて自動的に PV が作成・割り当てされる仕組み。手動で PV を作成する手間を省きます。
AccessModes
PV/PVC がサポートするアクセス形態の集合。代表的な値として ReadWriteOnce、ReadOnlyMany、ReadWriteMany があります。
ReadWriteOnce
1 ノードからのみ読み書き可能。最も一般的なモードです。
ReadOnlyMany
複数ノードから読み出し専用でアクセス可能なモードです。
ReadWriteMany
複数ノードから読み書き可能なモードです。
VolumeMode
ボリュームのデータ形式を表します。Filesystem(ファイルシステム)か Block(ブロックデバイス)のどちらかを選択します。
Filesystem
ボリュームをファイルシステムとして利用するモード。
Block
ボリュームをブロックデバイスとして直接扱うモード。
ReclaimPolicy
PVC から解放された後の PV の取り扱い方。Retain、Delete、Recycle(古い挙動、現在は非推奨)の選択肢があります。
Retain
データを保持して PV を削除せず、再利用を防ぐモード。
Delete
PV とバックエンドストレージを削除します。動的 provisioning ではこの挙動が一般的です。
Recycle
古いリソースを再利用可能にする処理。現在は非推奨とされています。
ClaimRef
PV が現在どの PVC に束縛されているかを示す参照情報(claimRef)。
VolumeName
PV が指す実際のストレージ資源の名前。バインディング時に参照されます。
Provisioner
StorageClass が指すプロビジョナーの名称。例: kubernetes.io/aws-ebs、kubernetes.io/glusterfs など。
VolumeBindingMode
StorageClass が PV と PVC のバインディング時期を決定する設定。WaitForFirstConsumer などのモードが存在します。
WaitForFirstConsumer
最初のポッドがスケジュールされるまで PV のバインドを遅延させるモード。ノードの近接性を考慮できます。
CSI
Container Storage Interface の略。Kubernetes とストレージドライバーを接続する標準インターフェースです。
CSIDriver
CSI ドライバーを定義・登録するリソース。特定のストレージバックエンドを Kubernetes に接続します。
Namespace
PVC は名前空間スコープのリソース。名前空間内で作成・使用され、他の名前空間とは独立しています。
StatefulSet
状態を持つアプリケーションを管理するための workload。StatefulSet では安定した PVC の割り当てと順序付けられたスケーリングが利用されます。

persistentvolumeclaimのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14448viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2415viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1069viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1040viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
931viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
902viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
836viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
833viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
796viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
786viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
717viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
701viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
593viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
574viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
571viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
549viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
516viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
497viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
477viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
475viws

新着記事

インターネット・コンピュータの関連記事