暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Rook

原创 aliang 2019-12-05
2002

为什么需要部署rook

虽然可以将宿主机目录挂载进容器,但是位于其他宿主机的容器却无法共享。

存储插件会在容器里挂载一个基于网络或其他机制的远程数据卷,使得在容器里创建的文件,实际上是保存在远程服务器上,或者以分布式的方式保存在多个节点上,而与当前宿主机没有任何绑定关系。这样无论哪个宿主机上的容器都可以挂载持久化存储卷,从而访问到数据卷中保存的内容。

Rook简介

https://rook.io/

https://github.com/rook/rook

基于Ceph的kubernetes存储插件(后期加入了对更多存储实现的支持),不是对Ceph的简单封装,而是加入了水平扩展、迁移、灾备、监控等大量企业级功能。rook是“云原生”软件,依赖了k8s提供的编排能力,利用了Operator、CRD等重要的扩展特性。

下载yaml文件

三个yaml文件位于github上rook项目的目录:cluster/examples/kubernetes/ceph/

修改yaml文件中的镜像地址,改为本地镜像库。需提前下载所需的镜像,并打tag后上传到本地镜像仓库

安装

kubectl create -f common.yaml kubectl create -f operator.yaml kubectl create -f cluster.yaml

检查

kubectl get pods -A

kubectl describe pod XXX -n rook-ceph

删除重建方法

直接删除pod后,会自动重启,所以应首先删除deployment

kubectl get deployments -A kubectl get rs -A kubectl delete deployment XXX -n rook-ceph

这时再次检查pod,发现已经自动删除。

然后,再次修改yaml文件后,执行kubectl apply即可。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论