ゆるふわ技術日誌

エンジニア見習いの悪戦苦闘日記

PVCとPVに悩まされたのでそれらの概念を自分なりに解釈した #289

今日もk8sやってました

明日がk8s勉強会です。私はハンズオン担当。

WordPressを立てるみたいな内容でやろうと思っています。

そのために永続化をやりたくてPresistentVolumeとPresistentVolumeClaimについて調べたりしてました。

PresistentVolume(PV)はnamespaceに属さないもので実際のNFSだったりiSCSIだったりを抽象化するためのものです。たぶん。

で、PresistentVolumeClaim(PVC)はnamespaceに属していてPodにPVを割り当てるのに使われます。たぶん。

ちょっと悩んだのは、PVとPVCを作成すると特にmatchLabelsとかで指定してなくてもPVCに対してPVが割り当てられるのがUIなどを見てるとわかります。

これなんでなんだろうか…とちょっと悩んだのですが、PVCはあくまでこういう感じのVolumeが欲しいという要求なので、その条件に合致するPVがある場合には自動的に割り当てが行われるようです。なので、特定のPVをPVCに対して割り当てたい場合はmatchLabelsなどを用いて指定する必要があるみたいです。

ちなみに、作ったマニフェストはこちらに。

github.com

ConfigMapとかSecretを使ってないのでその辺は要修正ですかね。

雑談

k8sはなんか、いろんな人の知見がたくさん詰まっていて、なるべくわかりやすく抽象的に捉えた結果いろんな概念が生まれたんだろうなぁとおもった。

使いこなすと強そう。