LoginSignup
4
2

More than 1 year has passed since last update.

PodmanはPVC定義だけで永続化できそうな件を調べてみた

Last updated at Posted at 2022-11-14

はじめに

Podmanで以前生成したPodのManifestを使ってminikubeに持って行った時に、PersistentVolumeがみつからないと怒られる事象に遭遇しました。実際に作成していないのでそりゃあその通りなのですが、じゃあPodmanの時ってなんで動いてたんだろう。というのを調べてみました。

 
 こちらが前回の話

目次

  1. 現状確認
  2. 何がおきてたのか
  3. まとめ
  4. 参考文献

現状確認

PodmanDesktopで現状を確認すると、作った覚えのないVolumeが、、ある。。

image.png

PodのManifest定義を確認すると、こちらもPVCの記載はありました。

image.png

Volumes関連で記載したのは下記だけなので、ここからどうやら自動的にPVがMountsされている模様

  volumes:
  - name: wordpress_wordpress-pvc
    persistentVolumeClaim:
      claimName: wordpress_wordpress
  - name: wordpress_db-pvc
    persistentVolumeClaim:
      claimName: wordpress_db

コンテナ側のMounts情報を参照すると、こちらにもVolumeMount確かにありました。
ちゃんとマウントされています。

image.png

つまりPodmanはpersistentVolumeClaimの記載だけあればPodman側で永続データに配慮してくれるという仕様のようです(Podman v4.3.0時点)。

何が起きてたのか?

GitHubの中を漁ってみた感じ、結構前から使えるように動いていたみたいです。知らんかった。。

このコマンドを打った時に勝手に作ってくれたみたいですね。

podman play kube kubernetes-hybrid.yml

これらを参考にリリースノートも参考にしましたが正確な追加の時期はわかりませんでした。
IssueNoからたぶん3系の途中で使えるようになったのかな。。(正しい探し方教えてください)

リリースノートを見ると毎回かなりのバグ修正を機能追加が行われており、現在も非常に活発なコミュニティとなっています。Dockerよりもアクティブなのではないでしょうか。今後のPodmanの利便化に期待したいです。

まとめ

Podmanの新設機能でPVは意識しなくても勝手によくやってくれるということ。
PodのManifestだけあれば、どの開発端末つかっても暗黙的にPVを作ってくれるので環境を頻繁に更新する開発などの場合は非常に楽です。コンテナ、Pod入門者に優しいのかと言われると少し悩ましいところでもあります。Podmanのシェアはまだまだ低いとおもうので、k8s側やminikubeなど環境の異なるユーザとの意思疎通には注意が必要な点だけ考慮して利用するのがよさげだ思います。

Dockerもこの便利機能今はあるのだろうか。。たしかdocker-composeは似た挙動になった記憶はあるようなーー

今回はPodmanDesktopを使って調べましたが手っ取り早く状況を確認するのにはとても便利でした。

参考文献

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2