Rook 官网:https://rook.io 容器的持久化存储 容器的持久化存储是保存容器存储状态的重要手段,存储插件会在容器里挂载一个基于网络或者其他机制的远程数据卷,使得在容器里创建的文件,实际上是保存在远程存储服务器上,或者以分布式的方式保存在多个节点上,而与当前宿
当我创建集群时,我构建了具有40GB硬盘的VM,所以使用5个Kubernetes节点,在我的集群上提供了大约200GB的存储空间,其中大部分都将用于Ceph。 安装Rook+Ceph 安装Rook+Ceph非常简单。在我的个人群集上,我按照以下步骤安装了Rook+Ceph v0.9.0: 代码语言:javascript 复制 git clone git@github.com:rook/rook.git cd ro...
为了实现所有这些功能,Rook依赖底层的容器编排平台,例如 kubernetes、CoreOS 等。。 Rook 目前支持Ceph、NFS、Minio Object Store、Edegefs、Cassandra、CockroachDB 存储的搭建。 Rook机制: Rook 提供了卷插件,来扩展了 K8S 的存储系统,使用 Kubelet 代理程序 Pod 可以挂载 Rook 管理的块设备和文件系统。 Rook Operator...
git clone --single-branch --branch v1.6.3 https://github.com/rook/rook.git 更改配置 cd rook/cluster/examples/kubernetes/ceph 修改Rook CSI镜像地址,原本的地址可能是gcr的镜像,但是gcr的镜像无法被国内访问,所以需要同步gcr的镜像到阿里云镜像仓库,本文档已经为大家完成同步,可以直接修改如下: vim operator....
集成Ceph 至 Kubernetes 集群主要有两种方案: 利用Rook Ceph 直接在 Kubernetes 集群上部署 Ceph 集群,这种方式更贴近云原生的应用特性。 手动部署独立的 Ceph 集群,并配置 Kubernetes 集群与之对接,实现存储服务的集成。 本文将重点实战演示使用 Rook Ceph 在 Kubernetes 集群上直接部署 Ceph 集群的方法,让您体验到云...
使用Rook 部署并管理 Ceph 存储系统,其架构图如下: 2、环境、软件准备 本次演示环境,我是在虚拟机上安装Linux系统来执行操作,通过虚拟机完成 Kubernetes HA 集群的搭建,以下是安装的软件及版本: Oracle VirtualBox: 5.1.20 r114628 (Qt5.6.2) System:CentOSLinux release 7.3.1611 (Core) ...
5. 将访问Ceph的keyring复制到Kubernetes work节点上 在创建Pod的时候,kubelet会调用rbd命令去检测和挂载PVC对应的rbd镜像,因此在kubelet节点上要保证存在rbd命令和访问ceph的keyring。否则创建Pod,kubelet有可能报各种各样ceph相关的错误。 如果kubelet在worker节点上是正常运行在default namespace下的,那么安装ceph-common...
cd rook/deploy/examples #关闭自动发现新增磁盘 vim operator.yaml ROOK_ENABLE_DISCOVERY_DAEMON: "false" #扫描发现磁盘间隔 - name: ROOK_DISCOVER_DEVICES_INTERVAL value: "60s" kubectl create -f crds.yaml -f common.yaml -f operator.yaml
Rook 项目是一个基于 Ceph 的 Kubernetes 存储插件(后期也在加入对更多存储的支持)。不过,不同于对 Ceph 的简单封装,Rook 在自己的实现中加入了水平扩展、迁移、灾难备份、监控等大量的企业级功能,使得这个项目变成了一个高度可扩展的分布式存储解决方案,提供对象、文件和块存储。
我想在新的Kubernetes集群上安装Prometheus和Grafana,但为了使这些软件包能够工作,他们需要一些地方来存储持久数据。当我在Seagate担任云架构师时,我已经对Ceph进行了性能和规模测试,并且在过去的一年里玩过Rook,所以我决定安装Rook+Ceph,并将其用于Kubernetes集群的数据存储。