本文共 983 字,大约阅读时间需要 3 分钟。
在ceph os中可以明显看出ceph 目前支持的存储类型如下:ObjectStore *ObjectStore::create(CephContext *cct, const string& type, const string& data, const string& journal, osflagbits_t flags){ if (type == "filestore") { return new FileStore(cct, data, journal, flags); } if (type == "memstore") { return new MemStore(cct, data); }#if defined(WITH_BLUESTORE) if (type == "bluestore") { return new BlueStore(cct, data); } if (type == "random") { if (rand() % 2) { return new FileStore(cct, data, journal, flags); } else { return new BlueStore(cct, data); } }#else if (type == "random") { return new FileStore(cct, data, journal, flags); }#endif if (type == "kstore" && cct->check_experimental_feature_enabled("kstore")) { return new KStore(cct, data); } return NULL;}分别是filestore/memstore/kstore 如果打开宏with_bluestore的话,还会有bluestore,其中如果指定的type是random的话还可以增加filestore/bluestore混合使用,其实还有一个隐形的调用fusestore其中memstore的API主要通过libpmem来对nvram等flash存储来管理
转载地址:http://wcnmi.baihongyu.com/