Diamanti容器融合存储基础架构

文章介绍了容器定义存储的背景和未来发展趋势,今天我们沿承容器和存储的话题,来看看另一家专注于容器应用提供存储融合系统的科技公司Diamanti和其产品架构。

20161008233000

Diamanti提供融合Appliance,在融合设备内通过一张PCIe卡作为网络和存储控制器以进行网络和存储IO控制和负载均衡,多张PCIe卡形成分布式流量管理集群系统。 Appliance给予X86和Linux平台构建,其上同时提供存储服务和运行容器应用,PCIe卡提供面向容器的SDS和SDN Controller能力,提供面向容器的存储和网络精细化SLA供给,数据面外置。支持在docker和kubernetes的基础上对网络和存储进行了增强,可以支持stateful和stateless应用的编排,支持反亲和性调度,值得跟踪分析。

容器的内建基础架构

Diamanti基于容器的存储融合基础架构,解决了容器为中心的应用特殊需求,确保网络兼容和存储持久化,在每个设备使用内置PCIE IO控制器,实现了对容器网络和存储虚拟化,保证应用的性能不需要做代码级的更改和定制化,每个容器可以按需的获取网络和存储资源,每个容器之间可以做到业务负责的隔离。Diamanti采用集群方式部署不同的设备,确保用户每次可以只添加一个设备按需扩容。

容器与其网络互联

Diamanti可以使用户通过命令行创建网络,分配唯一的vlan和ip地址范围,并通过10GE或GE网络和现有网络互联。用户通过虚拟端口与其他一个或多个网络互连,虚拟端口是通过SR-IOV技术实现的标准资源隔离端口,每个容器的性能和吞吐量都是由自定义的性能要求(Tier)来满足,开发者可基于容器或应用级指定它们的I/O策略,以快速得到所需存储服务。 不同容器可以共享同一个性能标准,新的性能标准也可以基于某个特定的应用和功能来设定。Diamanti流量交换在本地每个设备之间完成,消除了软件和虚拟化层带来的瓶颈。

20161008233006

容器的存储持久化
Diamanti可以使得用户通过命令行创建虚拟块存储设备,定义包含容量、镜像、复制和重删压缩等特征,卷是来自于分布在不同Diamanti集群节点上的物理闪存资源,通过虚拟池化而得来。用户可以通过一个或多个卷来部署容器,每一个圈对容器来说呈现为一个NVMe设备。Diamanti可以保证对每个卷读写请求带宽。 Diamanti通过扩展NVMe协议到时10GE网络保证端到端的100ms时延。在docker和kubernetes的基础上对网络和存储进行了增强,可以支持stateful和stateless应用的编排,支持反亲和性调度。

简化容器管理
使用图形化界面用户可以很快的了解集群的健康情况和容器的性能,并且可以跟踪每个容器的历史网络情况和存储性能,对应用的性能和系统使用率也提供了可视化接口,用户可以通过图表或者API接口对每一个容器进行监控。

20161008233014

集成流行的容器开源架构
Diamanti集成了最广泛的开源容器生态,包括linux操作系统、容器运行时、容器编排工具,由于 Diamanti基于标准X86和基于SR-IOV和VNMe的PCIe 设备,所以无需单独开发相关驱动。当前预览版已可在Google GCE和Amazon ECS上下载使用。同时, Diamanti紧密集成开源项目,如Docker、Kubernetes和Mesos,借助其功能实现容器调度和配置管理,不需要做任何修改。开发者只需要通过现存的Docker镜像即可得到一致的数据访问服务,运维人员也可以得到一次构建到处运行的标准数据平台。

Diamanti产品特点

Diamanti同已有集群管理生态兼容,依托Docker和Kubernetes,支持快速、自动化集群搭建。
容器网络同Host网络分离,可给任何容器分配IP地址,创建私有网络以隔离流量,从而简化网络管理、加强网络安全。
Diamanti采用IO架构优化,尽量使用本地盘下盘,最小化外部存储的需求,通过管理工具对磁盘分区并跟踪容器应用的性能和容量使用情况,可以做到按需规划。

跨容器如跨Docker和kubernetes调度,以做IO负载均衡、基于开发者或容器管理者的要求、根据厂商自定义label和亲和性规则来定制化容器放置,将负载放到存储和网络性能最优的位置。

基于用户定义的需求配置存储FlexVolume,在Kubernets中的相关的Plugin特性引入存储卷相关参数,Provider(plugin Provider名)、Command(用于Setup和Teardown Volume)、VolumeID、FSType(文件系统类型)、Readonly(只读mount)、Options(可传给Plugin的额外选项); (Kubernets以前调度策略仅基于CPU和内存,无网络和存储因素)。

Diamanti已经和Red Hat OpenShift Container Platform集成提供融合基础架构,实现应用快速融合部署、优化容器生命周期管理、保证应用性能。

K8S中文社区微信公众号
分享到:更多 ()