因此,Ceph在librbd中有一个用户空间页面缓存实现。它是否允许用户提及为每个pod分配多少页缓存?如果是,我们是否可以动态更改分配?
发布于 2020-01-13 19:44:49
根据项目github中的文档和问题,没有引用POD级别的页面缓存分配。
RBD支持
的回写缓存。要启用它,请将rbd cache = true添加到
ceph.conf文件的客户端部分。默认情况下,librbd不执行任何缓存。写入和读取直接转到存储群集,只有当数据位于所有副本上的磁盘上时,写入才会返回。启用缓存后,除非未刷新的字节数超过rbd cache max dirty,否则写入会立即返回。在这种情况下,写入会触发写回并阻塞,直到刷新了足够的字节。
以下是当前支持的RDB Cache参数,必须将它们插入ceph.conf文件的客户机节中:
rbd cache = RBD缓存大小,以字节为单位。|类型: Boolean,是否必填:否,默认值: false
rbd cache size =启用RADOS数据块设备(RBD)的缓存。类型:64位整数,是否必填:否,默认32 MiB
rbd cache max dirty =缓存触发回写的dirty限制,以字节为单位。|如果为0,则使用直写缓存。类型:64位整数,必填:否,约束:必须小于rbd cache size__,默认值: 24 MiB
rbd cache target dirty =缓存开始向数据存储写入数据之前的dirty target。不会阻止对缓存的写入。类型:64位整数,必填:否,约束:必须小于rbd cache max dirty__,默认为16 MiB
rbd cache max dirty age =开始写回之前脏数据在缓存中的秒数。|类型: Float,是否必填:否,默认: 1.0 rbd缓存最大脏年龄
rbd cache writethrough until flush =以直写模式启动,收到第一个刷新请求后切换回写模式。启用这是一个保守但安全的设置,以防运行在rbd上的VM太老而无法发送刷新,就像Linux 2.6.32之前版本中的virtio驱动程序一样。|类型: Boolean,是否必填:否,默认值: false
https://stackoverflow.com/questions/59710481
复制相似问题