无状态 or 有状态容器利用
什么是无状态或有状态容器呢?所谓无状态容器利用,意味着容器上利用所应用的历史数据或运行状态不须要进行长久化,从新拉起这个利用时,无需关注这些历史输出。简略来说,例如你要运行一个计算器(而且这个计算器不须要反对历史记录性能),当你从新拉起这个计算器时,之前的数据不须要从新被加载上来,计算器能够认为是一个无状态利用。其它相似的无状态容器利用还包含一些协定转换、申请转发等利用,大体都能够认为是无状态的。
那什么是有状态容器利用呢?有状态容器利用的特色是利用中解决的历史申请或操作,对当初或将来的操作是有影响的,那历史数据就必须被记录下来,这种利用就被称之为有状态容器利用。最典型的有状态利用莫过于数据库了,当数据库从新拉起时,你当然“要求”之前写入数据库的记录必须能被正确无误地加载进去。其实同样地,很多的音讯队列(例如 RabbitMQ 等),为了不使音讯失落,音讯队列中间件也会将音讯进行长久化。
当然,随着容器利用的边界越发广大,越来越多的有状态利用正在容器化,咱们看到很多的 AI、主动驾驶、HPC 工作都在进行容器化。
如何应用 YRCloudFile 反对有状态容器利用
YRCloudFile 为 Kubernetes 提供了规范的 CSI 接口,通过这个接口,用户不须要对 Kubernetes 进行任何侵入,就能够通过 Kubernetes 调度和应用 YRCloudFile 中的存储能力。
在 Kubernetes 中要应用 YRCloudFile 只须要简略的几个步骤:
- 确保 Kubernetes 的 Master 节点和计算节点可能拜访 YRCloudFile 的存储网络
- 在 Master 节点和计算节点上,导入 YRCloudFile CSI 插件镜像,应用 YRCloudFile 提供的 yrfs-csi.yaml 模板,创立 YRCloudFile-CSI Pod
- 验证创立的 YRCloudFile-CSI POD 全副为“Running”
- 应用咱们提供的 storageclass 样例 yaml 创立 YRCloudFile storageclass
- 应用 storageClassName: yrcloudfile-sc 间接创立 PVC,并将 PVC 关联至须要应用长久化存储的 Pod
整个过程就实现了。
除此之外,咱们还能够通过 YRCloudFile 的治理界面增加多个 Kubernetes 集群,在 YRCloudFile 界面上实现对 PVC、PV 等资源的 QoS、Quota 等属性的设置,对 PV 进行 IO 监控以及查看 PV 中的数据热点散布状况。
AI 利用通过容器,应用 YRCloudFile 的成果
在理论的客户环境中,咱们应用三台 x86 服务器,基于 100Gb InfiniBand 网络,搭建了 YRCloudFile 集群,与客户现有的 10 多台服务器组成的存储集群进行了基于业务的理论测试比照。
语音降噪测试:
在理论测试中,YRCloudFile 岂但提供了多种读写模式、不便的接入形式,同时呈现出的性能以及对 AI 利用效率的晋升,都比原有存储计划有了大幅晋升。
容器存储将来之路
将来,容器存储的倒退将不光只是接口层面的撑持,还将要求性能、QoS、Quota、全方位监控、数据冷热生命周期治理等性能,同时,面向大数据分析、数据库的针对性优化、数据的容灾备份等都会显得越来越重要,最终帮忙用户逐渐把大部分业务实现容器化。