Discussion:
Cache tier unable to auto flush data to storage tier
Karan Singh
2014-09-13 22:23:19 UTC
Permalink
Hello Cephers

I have created a Cache pool and looks like cache tiering agent is not able to flush/evict data as per defined policy. However when i manually evict / flush data , it migrates data from cache-tier to storage-tier

Kindly advice if there is something wrong with policy or anything else i am missing.

Ceph Version: 0.80.5
OS : Cent OS 6.4

Cache pool created using the following commands :

ceph osd tier add data cache-pool
ceph osd tier cache-mode cache-pool writeback
ceph osd tier set-overlay data cache-pool
ceph osd pool set cache-pool hit_set_type bloom
ceph osd pool set cache-pool hit_set_count 1
ceph osd pool set cache-pool hit_set_period 300
ceph osd pool set cache-pool target_max_bytes 10000
ceph osd pool set cache-pool target_max_objects 100
ceph osd pool set cache-pool cache_min_flush_age 60
ceph osd pool set cache-pool cache_min_evict_age 60


[***@ceph-node1 ~]# date
Sun Sep 14 00:49:59 EEST 2014
[***@ceph-node1 ~]# rados -p data put file1 /etc/hosts
[***@ceph-node1 ~]# rados -p data ls
[***@ceph-node1 ~]# rados -p cache-pool ls
file1
[***@ceph-node1 ~]#


[***@ceph-node1 ~]# date
Sun Sep 14 00:59:33 EEST 2014
[***@ceph-node1 ~]# rados -p data ls
[***@ceph-node1 ~]#
[***@ceph-node1 ~]# rados -p cache-pool ls
file1
[***@ceph-node1 ~]#


[***@ceph-node1 ~]# date
Sun Sep 14 01:08:02 EEST 2014
[***@ceph-node1 ~]# rados -p data ls
[***@ceph-node1 ~]# rados -p cache-pool ls
file1
[***@ceph-node1 ~]#



[***@ceph-node1 ~]# rados -p cache-pool cache-flush-evict-all
file1
[***@ceph-node1 ~]#
[***@ceph-node1 ~]# rados -p data ls
file1
[***@ceph-node1 ~]# rados -p cache-pool ls
[***@ceph-node1 ~]#


Regards
Karan Singh
Jean-Charles LOPEZ
2014-09-14 00:42:04 UTC
Permalink
Hi Karan,

May be setting the dirty byte ratio (flush) and the full ratio (eviction). Just try to see if it makes any difference
- cache_target_dirty_ratio .1
- cache_target_full_ratio .2

Tune the percentage as desired relatively to target_max_bytes and target_max_objects. The first threshold reached will trigger flush or eviction (num objects or num bytes)

JC
Post by Karan Singh
Hello Cephers
I have created a Cache pool and looks like cache tiering agent is not able to flush/evict data as per defined policy. However when i manually evict / flush data , it migrates data from cache-tier to storage-tier
Kindly advice if there is something wrong with policy or anything else i am missing.
Ceph Version: 0.80.5
OS : Cent OS 6.4
ceph osd tier add data cache-pool
ceph osd tier cache-mode cache-pool writeback
ceph osd tier set-overlay data cache-pool
ceph osd pool set cache-pool hit_set_type bloom
ceph osd pool set cache-pool hit_set_count 1
ceph osd pool set cache-pool hit_set_period 300
ceph osd pool set cache-pool target_max_bytes 10000
ceph osd pool set cache-pool target_max_objects 100
ceph osd pool set cache-pool cache_min_flush_age 60
ceph osd pool set cache-pool cache_min_evict_age 60
Sun Sep 14 00:49:59 EEST 2014
file1
Sun Sep 14 00:59:33 EEST 2014
file1
Sun Sep 14 01:08:02 EEST 2014
file1
file1
file1
Regards
Karan Singh
_______________________________________________
ceph-users mailing list
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
Loading...