動機
- RancherOS を使って、k8s (kubernetes) 環境が簡単に構築できた
- けど、ストレージ周りはどうしよう
- 手元では NFS を提供するための VM を立てたけど、負けた気がする (:3」∠)_
- 分散ストレージで組めたら、かっこいいなぁ
- 調査前は Glusterfs くらいしかクラスタ組んだことがなかった
と、思って調べてみたのでアウトプットです。
試したわけではなく、まだ俯瞰しただけです(´・ω・`)
k8s (kubernetes) で利用可能なストレージ
- まずは、何が使えて、何が使えないのかを調べます
- 調査対象にする条件
- 手軽に試せそう(OSS とかわざわざ購入しなくても良さそうなもの)
- オンプレ (クラウドは手軽に試せるし、動かしても「ふーん」で終わってしまうので)
- で、公式ドキュメントを見てみました
Provisioner | コメント(小並感) |
---|---|
AWSElasticBlockStore | 皆様ご存知 AWS の EBS ですね。 |
AzureFile | Microsoft Azure らしい。Azure 詳しくない(´・ω・`) |
AzureDisk | 上記と同じ |
CephFS | OSS の分散ストレージソフトウェア |
Cinder | OpenStack のブロックストレージ管理を担うものらしい。Nova の後継で今後は Cinder になっていくらしい |
FC (Fibre Channel) | ストレージとしての FC だそうで。 |
FlexVolume | こちらは NetApp? |
Flocker | ClusterHQからリリースされた OSS だそうで。 https://clusterhq.com/flocker/introduction/ |
GCEPersistentDisk | Google Compute Engine ですね。 |
Glusterfs | こちらも OSS の分散ストレージソフトウェア |
iSCSI | Fibre Channel が対応してるなら、まぁ iSCSI も対応してるよね |
PhotonPersistentDisk | VMware の Photon Platform というものらしいです |
Quobyte | Quobyte さんが作っているものらしい。詳しくは https://www.quobyte.com/ |
NFS | 皆さんご存知 NFS |
RBD | Ceph RBD。 CephFS との違いは後述 |
VsphereVolume | VMware vSphere Cloud ですかね。VMDK を事前に作っておく必要アリ? |
PortworxVolume | Portworx さんが作っているストレージソリューションだそうで。詳しくは https://portworx.com/ |
ScaleIO | DELL EMC SCALE IO。詳しくは https://www.dellemc.com/ja-jp/storage/scaleio/index.htm |
GlusterFS, Ceph とはなんぞや?
- こちらの SlideShare が大変詳しく解説されていたので、そのまま引用させていただきます。
- Ceph と書いてありますが、GlusterFS との比較も書いてあります
- 分散ストレージ技術Cephの最新情報
また、他にもコンテナのための分散ストレージがないか調べてみました。
他にもこんなものがありました
OpenEBS
OpenEBS enables the use of containers for mission critical, persistent workloads. OpenEBS is containerized storage and related storage services.
- 公式 URL: http://www.openebs.io/
- レポジトリ: https://github.com/openebs/openebs
- 参考スライド: http://storageconference.us/2017/Presentations/Powell.pdf
- ど ... どれくらい使えるんだろう(´-﹏-`;) EBS と同じように使えるなら、かなり嬉しいとは思うけど。
Longhorn
Longhorn is a distributed block storage system built using containers and microservices.
- 公式 URL: http://rancher.com/microservices-block-storage/
- レポジトリ: https://github.com/rancher/longhorn
- 参考スライド: https://www.slideshare.net/ShannonWilliams14/introducing-project-longhorn-april-2016-rancher-online-meetup
- rancher さんが発表した分散ストレージシステム。期待しているけど、k8s には対応していないらしい。
- swarm には対応予定とのこと
- 2017/10/24 コメントからの追記(ありがとうございます!)
- どうやら、OpenEBS をベースに利用しているとのこと
- https://blog.openebs.io/ranchers-longhorn-announcement-solidifies-the-openebs-story-a68f49ef830e
Rook
File, Block, and Object Storage Services for your Cloud-Native Environment
- 公式 URL: https://rook.io/
- レポジトリ: https://github.com/rook/rook
- 参考スライド: http://schd.ws/hosted_files/cloudnativeeu2017/98/KubeCon-Berlin-2017-Talk.pdf
- 新進気鋭のプロジェクト、という感じがする。ドキュメントを見たところ、Helm を使ってインストールする感じでしょうか。
まとまらないまとめ
- 昨今のコンテナのためのストレージシステムは色々と考えられて作られているんだなぁと思いました
- Longhorn は面白そうですが、k8s で利用できるのかまだまだ調査が必要そうです
- Rook あたりを検証できれば、やってみようかなぁと