一、前言:

讲Ceph和K8S 前需要你了解下面的两篇文章,对K8S(ceph的新女友)和openstack(ceph的前女友)有所认识。

  1. K8S入门系列(一):Kubernetes的历史(由来)与架构
  2. Ceph 入门系列(四) :CEPH与OPENSTACK

二、Ceph作为后端分布式存储系统

虽然Ceph的后端(OSD)是真正的对象存储分布式文件系统,但Ceph为Openstack提供了方便的块存储和对象存储接口,结果Ceph当时就认准绑上了白富美Openstack才有了今天。再后来Ceph被Redhat接管,更是把rbd集成到了kernel,Ceph的推广度大力增加。

                                                                Openstack框架图

Openstack是云计算个的管理专家(基于VM),但技术是向前发展的,容器技术的优势目前锐不可当。要理解虚拟机和容器的区别或者说优劣势,请参考文章Docker容器入门系列(一):技术选型之Docker容器引擎

                                                                               K8S框架图

K8S看到了容器的前景,把自己定位成了容器编排引擎,K8S的前景就此一片光明。那么作为后端的Ceph存储分布式文件系统集群该何去何从呢?K8S也需要持久性存储,自然它会支持主流的存储系统。K8S靠volume 插件特性来提供存储,目前官网支持的volume plugin 类型如下:

Volume PluginReadWriteOnceReadOnlyManyReadWriteMany
AWSElasticBlockStore--
AzureFile
AzureDisk--
CephFS
Cinder--
CSIdepends on the driverdepends on the driverdepends on the driver
FC-
Flexvolumedepends on the driver
Flocker--
GCEPersistentDisk-
Glusterfs
HostPath--
iSCSI-
Quobyte
NFS
RBD-
VsphereVolume-- (works when pods are collocated)
PortworxVolume-
ScaleIO-
StorageOS

 我们看到与Ceph相关的有,CephFS RBD。另外,值得一提的是:为了更好的结合 Ceph 和 K8S,诞生了Rook开源项目。Rook也是go语言开发的,它让K8S更方便的使用Ceph。Rook和K8S的关系图如下:

rook-architecture-0

Rook的结构图如下:

待续。。。Ceph 对 K8s 说,我们(二):K8S的 volume 介绍

参考:

https://kubernetes.io/docs/concepts/storage/persistent-volumes/

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐