https://my.oschina.net/hanhanztj/blog/515410

0.引入

本文介绍如何配置cache pool tiering. cache pool的作用是提供可扩展的cache,用来缓存ceph的热点数据或者直接用来作为高速pool。如何建立一个cache pool:首先利用ssd盘做一个虚拟的bucket tree,

然后创建一个cache pool,设置其crush映射rule和相关配置,最后关联需要用到的pool到cache pool。

1.建立ssd bucket tree

这是新增ssd bucket(vrack)后的osd tree。其中osd.1 osd.0 osd.2使用的是ssd盘。如何创建将简单,无非是调整或新增osd到bucket tree下。

  # ceph osd tree
ID  WEIGHT  TYPE NAME             UP/DOWN REWEIGHT PRIMARY-AFFINITY 
 -1 6.00000 root default                                            
 -2 6.00000     room test                                           
 -3 3.00000         rack r1                                         
 -7 1.00000             host H09                                    
  3 1.00000                 osd.3      up  1.00000          1.00000 
 -9 1.00000             host H07                                    
  5 1.00000                 osd.5      up  1.00000          1.00000 
-10 1.00000             host H06                                    
  6 1.00000                 osd.6      up  1.00000          1.00000 
 -4 3.00000         rack vrack                                      
 -6 1.00000             host vh06                                   
  1 1.00000                 osd.1      up  1.00000          1.00000 
 -8 1.00000             host vh07                                   
  2 1.00000                 osd.2      up  1.00000          1.00000 
 -5 1.00000             host vh09                                   
  0 1.00000                 osd.0      up  1.00000          1.00000

2.修改crushmap

#ceph osd getcrushmap -o map
#crushtool -d map -o map.txt
#vi map.txt 添加replicated_ruleset_cache crush策略,从vrack机架选择osd
rule replicated_ruleset {
        ruleset 0
        type replicated
        min_size 1
        max_size 10
        step take r1     
        step chooseleaf firstn 0 type host
        step emit
}
rule replicated_ruleset_cache {
        ruleset 1
        type replicated
        min_size 1
        max_size 10
        step take vrack
        step chooseleaf firstn 0 type host
        step emit
}
  #crushtool -c map.txt -o map.new
  #ceph osd setcrushmap -i map.new

3. 创建cache pool

指定新建的pool的crush rules 为replicated_ruleset_cache

#ceph osd pool create rbd.cache 128 128
#ceph osd pool set rbd.cache crush_ruleset 1

4. 为rbd pool添加cache pool

# ceph osd tier add rbd rbd.cache
# ceph osd tier cache-mode rbd.cache  writeback
# ceph osd tier set-overlay rbd rbd.cache

5. 设置cache pool相关参数

参数含义请参考官网

#  ceph osd pool set rbd.cache hit_set_type bloom
#  ceph osd pool set rbd.cache hit_set_count 1
#  ceph osd pool set rbd.cache hit_set_period 1800  
#  ceph osd pool set rbd.cache target_max_bytes 30000000000 
#  ceph osd pool set rbd.cache min_read_recency_for_promote 1
#  ceph osd pool set rbd.cache min_write_recency_for_promote 1
#  ceph osd pool set rbd.cache cache_target_dirty_ratio .4
#  ceph osd pool set rbd.cache cache_target_dirty_high_ratio .6
#  ceph osd pool set rbd.cache cache_target_full_ratio .8

6. 参考文档

【CACHE POOL】http://docs.ceph.com/docs/master/dev/cache-pool/

ceph cache pool配置的更多相关文章

  1. Ceph luminous 安装配置

    Ceph luminous 安装配置 #环境centos7 , Ceph V12 openstack pike 与 ceph 集成 http://www.cnblogs.com/elvi/p/7897 ...

  2. ceph中pool的管理

    1.创建pool 创建ceph pool的命令如下,它的参数包括pool名字.PG和PGP的数量. 若少于5个OSD, 设置pg_num为128. 5~10个OSD,设置pg_num为512. 10~ ...

  3. ceph存储安装配置

    1.修改yum源: 1.安装yum源:sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://dl.fedor ...

  4. Azure cache 的配置与应用

    最近公司的项目要是用cloud Service 所以研究了下 Azure cache 的配置与使用. 首先创建项目 第二步 配置 cache worker role (1) 点击 cache work ...

  5. ceph删除pool提示(you must first set the mon_allow_pool_delete config option to true)解决办法

    现象: 1.在mon节点打开/etc/ceph/ceph.conf,增加以下 2.重启ceph-mon systemctl restart ceph-mon.target 3.删除pool [root ...

  6. Azure Redis Cache (4) 配置和管理Redis Cache

    <Windows Azure Platform 系列文章目录> 我们在创建完Azure Redis Cache后,经常需要切换Redis Cache的服务级别,这里我简单介绍一下使用Azu ...

  7. HTML 5缓存机制:Cache Manifest配置实例

    Cache Manifest是HTML 5的一种缓存机制,文章作者直接用博客当测试环境,虽然[color=#444444 !important]应用起来非常简单,但效果却出奇的好.缓存后的速度,简直是 ...

  8. Tomcat jdbc pool配置

    Tomcat jdbc pool是apache在tomcat7版本中启用的新连接池,用它来解决以往DBCP无法解决的一些问题. Tomcat jdbc pool的优点: (1)    tomcat j ...

  9. Windows Azure 系列-- Azure Redis Cache的配置和使用

    假设还没有配置Azure Power shell 能够參照这里进行配置:http://blog.csdn.net/lan_liang/article/details/46850221 打开Azure ...

随机推荐

  1. Kattis - gcpc (treap模板)

    ne hundred years from now, in 21172117, the International Collegiate Programming Contest (of which t ...

  2. HDU 6073 Matching In Multiplication —— 2017 Multi-University Training 4

    Matching In Multiplication Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 524288/524288 K ( ...

  3. tom

    题目描述 众所周知,Tom 猫对香肠非常感兴趣.有一天,Tom 家里的女主人赏给了Tom 一大堆香肠.这些香肠太多了,以至于Tom 一顿吃不完,于是它把这些香肠串成了一棵树,树的每个节点上都有一个香肠 ...

  4. 两个图层一上一下div view

    <view class="main"> <view class="user-info"> </view> <view ...

  5. HDU-4475 Downward paths(找规律)

    Downward paths Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  6. codeforces 584E Anton and Ira [想法题]

    题意简述: 给定一个$1$到$n(n<=2000)$的初始排列以及最终排列 我们每次可以选取位置为$i$和$j$的 并交换它们的位置 花费为$ |i-j| $ 求从初始状态变换到末状态所需最小花 ...

  7. jQuery-resize和scroll的性能优化

    ## 下面是进行测试和研究怎么实现的用的 Document 改变页面大小试试 Document 滚动滚动条试试

  8. Ubuntu安装 docker

    安装docker首先要需要一台宿主机, 我目前用VMvare下安装的Ubuntu16.04系统为宿主机,进行docker安装测试. ubuntu安装时选的中文环境,生成的sources.list里面的 ...

  9. Windwos 08R2_DNS+AD安装图文

    目录 目录 前言 软件环境 DNS域名服务器 配置DNS服务器 AD活动目录 配置AD域 前言 Windows 2008 R2平台下搭建AD(Active Directory)和DNS(Domain ...

  10. Spring 官方文档笔记---Bean

    In Spring, the objects that form the backbone of your application and that are managed by the Spring ...