图1 架构图 图2 各存储插件对动态供给方式的支持状况 1.所有节点安装 # yum install ceph-common 复制 ceph.conf 到 worker 节点上 # scp admin:/etc/ceph/ceph.conf /etc/ceph/ 2.创建池,并将应用名称与存储池关联 # ceph osd pool create caasp4-dynamic # ceph osd pool application enable caasp4-dynamic rbd 3.创建 Ca…
1.所有节点安装 # zypper -n in ceph-common 复制 ceph.conf 到 worker 节点上 # scp admin:/etc/ceph/ceph.conf /etc/ceph/ 2.创建池 # ceph osd pool create caasp4 3.创建 key ,并存储到 /etc/ceph/ 目录中 # ceph auth get-or-create client.caasp4 mon 'allow r' \ osd 'allow rwx pool=caa…
RBD存储卷 目前 CaaSP4 支持多种 Volume 类型,这里选择 Ceph RBD(Rados Block Device),主要有如下好处: Ceph 经过多年开发,已经非常熟,社区也很活跃: Ceph 同时支持对象存储,块存储和文件系统接口: 环境准备条件 1.搭建环境 操作系统版本: SLES15 SP1,无需安装 swap 内核版本:4.12.14-197.18-default Kubernetes 版本:CaaSP 4 , v1.15.2 Ceph :Storage 6 VMwa…
SUSE CaaS Platform 相关文章 (1)SUSE CaaS Platform 4 - 简介 (2)SUSE CaaS Platform 4 - 安装部署 (3)SUSE CaaS Platform 4 - 安装技巧 (4)SUSE CaaS Platform 4 - 使用 Ceph RBD 作为持久存储(静态) (5)SUSE CaaS Platform 4 - 使用 Ceph RBD 作为持久存储(动态) 一.前提条件和环境设置 1.搭建环境 操作系统版本: SLES15 SP1…
SUSE CaaS Platform KUBERNETES - 面向企业 SUSE CaaS Platform 是一款企业级容器管理解决方案,可让 IT 和 DevOps 专业人士更轻松地部署.管理和缩放基于容器的应用程序及服务.其中的 Kubernetes 可实现现代应用程序的生命周期管理自动化,还有许多周边技术可以扩充 Kubernetes 并使平台本身易于使用.因此,使用 SUSE CaaS Platform 的企业可以缩短应用程序的递送周期,并提高业务敏捷性. SUSE 致力于通过 SU…
SUSE CaaS Platform 4 - 持久存储使用 NFS…
1.虚拟化环境搭建 -  网络 首先,虚拟机其中一块网卡桥接到 VMnet8 上,通过 VMnet8 地址转换出去访问互联网,如果我们直接桥接到 WIFI 网卡上,由于在不同的的网络环境,地址会时长会变化,这样就会导致 CaaSP 平台中系统名称空间的Pod无法正常启动,以至于集群无法使用. 因此通过桥接到 VMnet8 上,既能够固定地址,又能访问互联网下载镜像.  2.虚拟化环境搭建 - 下载镜像 我们在安装集群时,需要从 registry.suse.com 镜像仓库中下载镜像,才能完整的部…
Ceph采用的是强一致性同步模型,所有副本都必须完成写操作才算一次写入成功,这就导致不能很好地支持跨域部署,因为如果副本在异地,网络延迟就会很大,拖垮整个集群的写性能.因此,Ceph集群很少有跨域部署的,也就缺乏异地容灾.Ceph RBD mirror是Ceph Jewel版本引入的新功能,支持两个Ceph集群数据同步,其原理非常类似mysql的主从同步机制,前者基于journaling,后者基于binlog,二者都是基于日志回放完成主从同步的. 1.1.    RBD mirror的原理 ce…
本系列文章会总结 QEMU/KVM 和 Ceph 之间的整合: (1)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (2)QEMU 的 RBD 块驱动(block driver) (3)存储卷挂接和设备名称 QEMU-KVM 的缓存机制的概念很多,Linux/KVM I/O 软件栈的层次也很多,网上介绍其缓存机制的文章很多.边学习边总结.本文结合 Ceph 在 QEMU/KVM 虚机中的使用,总结一下两者结合时缓存的各种选项和原理. 1. QEMU/KVM 缓存机制 先以客户机(Gu…
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 Ceph 作为一个统一的分布式存储,其一大特色是提供了丰富的编程接口.我们来看看下面这张经典的图: 其中,librados 是 Ceph…
Ceph RBD  CephFS 存储 环境准备: (这里只做基础测试, ceph-manager , ceph-mon, ceph-osd 一共三台) 10.6.0.140 = ceph-manager 10.6.0.187 = ceph-mon-1 10.6.0.188 = ceph-osd-1 10.6.0.94 = node-94 注: ceph 对时间要求很严格, 一定要同步所有的服务器时间 一.在 manager 上面修改 /etc/hosts : 10.6.0.187 ceph-m…
背景 我们通过docker的rexray插件来创建ceph rbd设备的docker volume,但总提示创建失败. # docker volume create --driver=rexray --opt=size=5 --name=cephrbd-book Error response from daemon: create test_cephrbd_volume: VolumeDriver.Create: {"Error":"Failed to create new…
目录 一.iSCSI 介绍 1. iSCSI 定义 2. 几种常见的 iSCSI Target 3. 优缺点比较 二.安装步骤 1. 关闭防火墙 2. 关闭selinux 3. 通过 yum 安装 tgt 4. 源码编译安装 tgt 三.使用 img 作为 target 1. 创建 img 2. 通过配置文件来创建 target 3. 查看激活的 target 四.使用 rbd 作为 target 1. 创建 rbd 池和 image 2. 通过命令来创建 target 3. 通过配置文件来创建…
目录 k8s挂载Ceph RBD PV & PVC方式 创建secret 创建PV 创建PVC 创建deployment挂载PVC StorageClass方式 创建secret 创建StorageClass 创建PVC k8s挂载Cephfs k8s挂载Ceph RBD k8s挂载Ceph RBD有两种方式,一种是传统的PV&PVC的方式,也就是说需要管理员先预先创建好相关PV和PVC,然后对应的deployment或者replication来挂载PVC使用.而在k8s 1.4以后,ku…
目录 文章目录 目录 前文列表 RBD RBD Pool 的创建与删除 块设备的创建与删除 块设备的挂载与卸载 新建客户端 块设备的扩缩容 RBD 块设备的 Format 1 VS Format 2 块设备的快照.克隆.恢复 块设备的 I/O 模型 RBD QoS Token bucket algorithm(令牌桶算法) dmClock algorithm 块设备性能测试 使用 RADOS bench 进行基准测试 使用 fio 进行 IO 测试 前文列表 <Ceph 分布式存储架构解析与工作…
一.RBD的导入导出介绍 Ceph存储可以利用快照做数据恢复,但是快照依赖于底层的存储系统没有被破坏 可以利用rbd的导入导出功能将快照导出备份 RBD导出功能可以基于快照实现增量导出 二.RBD导出操作 2.1 查看创建的快照 [root@ceph1 ceph]# rbd snap ls testimg-copy --id rbd SNAPID NAME SIZE TIMESTAMP MB Sun Mar :: 2.2 创建快照 [root@ceph1 ~]# df -hT Filesyste…
1.在ceph集群中创建rbd存储池.镜像及普通用户 1.1.存储池接镜像配置 创建存储池 root@u20-deploy:~# ceph osd pool create rbd-test-pool1 32 32 在创建的存储池上启用块存储 root@u20-deploy:~# ceph osd pool application enable rbd-test-pool1 rbd enabled application 'rbd' on pool 'rbd-test-pool1' 对存储池进行初…
k8s使用rbd作后端存储 k8s里的存储方式主要有三种.分别是volume.persistent volumes和dynamic volume provisioning. volume: 就是直接挂载在pod上的组件,k8s中所有的其他存储组件都是通过volume来跟pod直接联系的.volume有个type属性,type决定了挂载的存储是什么,常见的比如:emptyDir,hostPath,nfs,rbd,以及下文要说的persistentVolumeClaim等.跟docker里面的vol…
“Ceph是一个开源的.统一的.分布式的存储系统”,这是我们宣传Ceph时常说的一句话,其中“统一”是说Ceph可以一套存储系统同时提供块设备存储.文件系统存储和对象存储三种存储功能.一听这句话,具有一定存储基础的用户应该已经大致了解了Ceph的存储接口,而没有存储基础的小白用户则 一脸懵逼.本文旨在让小白用户理解Ceph的块存储.文件系统存储和对象存储接口. 一. Ceph的块设备存储接口 首先,什么是块设备? 块设备是i/o设备中的一类,是将信息存储在固定大小的块中,每个块都有自己的地址,还…
0x00 概述 本文章介绍如何使用ceph为k8s提供动态申请pv的功能.ceph提供底层存储功能,cephfs方式支持k8s的pv的3种访问模式ReadWriteOnce,ReadOnlyMany ,ReadWriteMany ,RBD支持ReadWriteOnce,ReadOnlyMany两种模式 访问模式只是能力描述,并不是强制执行的,对于没有按pvc声明的方式使用pv,存储提供者应该负责访问时的运行错误.例如如果设置pvc的访问模式为ReadOnlyMany ,pod挂载后依然可写,如果…
我们为什么选择Ceph来建立块存储?国内知名黑客组织东方联盟是这样回答的,卷管理器的大小和增长受到管理程序的驱动器补充的限制,与其他Droplet共享.一旦Droplet被摧毁,储存就会被释放.术语“短暂”有时用于描述这种虚拟化策略. 创建可扩展的块存储 过去,便携式可扩展块存储服务通常提供传统的SAN(存储区域网络).这些往往是昂贵的,难以管理和升级.扩展和升级可能很困难,并且架构容易受到大量厂商锁定. 在DigitalOcean,我们喜欢并支持开源软件.所以当我们设计BlockStorage…
关于部署和相关原理 请自行搜索 这里 给出我的操作记录和排查问题的思路 这一节对后面的学习有巨大的作用!!! [root@bs-k8s-ceph ~]# ceph -s cluster: -1a9a-4b55-a353-4b141e2199d8 health: HEALTH_OK services: mon: daemons, quorum bs-hk-hk01,bs-hk-hk02,bs-k8s-ceph mgr: bs-hk-hk02(active), standbys: bs-hk-hk0…
原文链接:https://fuckcloudnative.io/posts/kubernetes-storage-using-ceph-rbd/ 本文详细介绍了如何在 Kubernetes 集群中部署 ceph-csi(v3.1.0),并使用 RBD 作为持久化存储. 需要的环境参考下图: 本文使用的环境版本信息: Kubernetes 版本: $ kubectl get node NAME STATUS ROLES AGE VERSION sealos01 Ready master 23d v…
文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247485256&idx=1&sn=39e072156c87c639e0c64236d3c2d25d&chksm=e9fdd2bcde8a5baa1da7583a34d94ba6c7311d1c354ede8b3fec57b61f9f42d5fd48e9152d6b&scene=178&cur_album_id=160084541737…
1.安装python,uwsgi,nginx环境 pip安装省略 yumgroupinstall"Developmenttools" yuminstallzlib-develbzip2-develpcre-developenssl-develncurses-develsqlite-develreadline-develtk-devel yuminstallpython-devel pipinstalluwsgi 2.明白 Restful API http://www.ruanyifen…
转自:http://blog.csdn.net/wytdahu/article/details/46545235 ceph很早就已经支持通过iscsi协议来使用rbd,这篇博文对此做下演示,并且使用OSD Server作为iscsi target端. 一.OSD Server side 1.安装支持rbd的TGT软件包 #echo "deb http://ceph.com/packages/ceph-extras/debian $(lsb_release -sc) main" | su…
1. 在Ceph上为Kubernetes创建一个存储池 # ceph osd pool create k8s 2. 创建k8s用户 # ceph auth get-or-create client.k8s mon 'allow r' osd 'allow rwx pool=k8s' -o ceph.client.k8s.keyring 3. 将k8s用户的key进行base64编码 这是Kubernetes访问Ceph的密钥,会保存在Kubernetes的Secret中 # grep key c…
1.一个现成的ceph cluster 参考之前写的ceph-deploy 部署ceph cluster 2.配置client与ceph cluster对接 在ceph cluster的管理节点上安装配置ceph client #ansible为此处client的hostname ceph-deploy install ansible #ansible为此处client的hostname ceph-deploy admin ansible 3..在ceph client上创建使用rbd #创建一…
一.rbd块存储挂载 1 创建一个OSD pool # ceph osd pool create rbd1 128 查询存储空间使用 # ceph df GLOBAL: SIZE AVAIL RAW USED %RAW USED 480GiB 474GiB 6.12GiB 1.28 POOLS: NAME ID USED %USED MAX AVAIL OBJECTS volumes 1 134B 0 150GiB 5 vms 2 0B 0 150GiB 0 images 3 0B 0 150G…
[root@bs-k8s-ceph ~]# ceph -s cluster: id: 11880418-1a9a-4b55-a353-4b141e2199d8 health: HEALTH_WARN Long heartbeat ping times on back interface seen, longest is 3884.944 msec Long heartbeat ping times on front interface seen, longest is 3888.368 msec…