标签: ceph

分布式文件系统:GridFS与GlusterFS对比Ceph与HekaFS基准

我目前正在寻找一个好的分布式文件系统.

这应该:

  • 是开源的
  • 可水平扩展(复制和分片)
  • 没有单一的失败点
  • 占地面积相对较小

以下是我认为最有希望的四位候选人:

文件系统主要用于媒体文件(图像和音频).有非常小和中等大小的文件(1 KB - 10 MB).文件数量应该在几百万左右.

是否有关于性能,CPU负载,内存消耗可扩展性的基准测试?您使用这些或其他分布式文件系统的经历是什么?

filesystems gridfs ceph glusterfs

41
推荐指数
2
解决办法
4万
查看次数

ImportError:module'settingtools.dist'没有'check_specifier'属性

Ceph teuthology安装失败,在Ubuntu 14.04,内核4.4.0-51-generic上出现以下错误:

ImportError: <module 'setuptools.dist' from '/usr/lib/python2.7/dist-packages/setuptools/dist.pyc'> has no 'check_specifier' attribute
Run Code Online (Sandbox Code Playgroud)

installation ceph

24
推荐指数
2
解决办法
2万
查看次数

Ceph太多pgs per osd:你需要知道的全部

同时收到这两个错误.我无法减少pg计数,我无法添加更多存储空间.

这是一个新的集群,当我上传大约40GB时,我收到了这些警告.我想是因为radosgw创造了一堆游泳池.

ceph如何能够获得太多的每个pgs,但每pg的对象数量多于平均值,而pgs建议太少?

HEALTH_WARN too many PGs per OSD (352 > max 300); 
pool default.rgw.buckets.data has many more objects per pg than average (too few pgs?)

osds: 4 (2 per site 500GB per osd)
size: 2 (cross site replication)
pg:  64
pgp: 64
pools: 11
Run Code Online (Sandbox Code Playgroud)

使用rbd和radosgw,没什么特别的.

storage ceph

13
推荐指数
1
解决办法
2万
查看次数

Ceph:每个OSD太多的PG

我使用推荐值配置了Ceph(使用文档中的公式).我有3个OSD,我的配置(我放在监控节点和所有3个OSD)包括:

osd pool default size = 2
osd pool default min size = 1
osd pool default pg num = 150
osd pool default pgp num = 150
Run Code Online (Sandbox Code Playgroud)

当我跑步时,ceph status我得到:

 health HEALTH_WARN
        too many PGs per OSD (1042 > max 300)
Run Code Online (Sandbox Code Playgroud)

由于两个原因,这令人困惑.首先,因为推荐的配方不满足Ceph.其次,最令人费解的是,当我的配置为150时,它表示每个OSD有1042个PG.

我究竟做错了什么?

ceph

8
推荐指数
1
解决办法
7806
查看次数

Ceph:如何在特定的 OSD 上放置池?

我有一个包含 66 个 OSD 的 Ceph 集群,其中有一个data_pool和一个metadata_pool.

我想将其放置metadata_pool在 3 个具有 SSD 的特定 OSD 上,因为所有其他 63 个 OSD 都具有较旧的磁盘。

如何强制 Ceph 将其放置metadata_pool在特定的 OSD 上?

提前致谢。

ceph

8
推荐指数
2
解决办法
8152
查看次数

WAL怎么可能?提前写日志?有比直接写入磁盘更好的性能吗?

WAL(Write-Ahead Log)技术已经在很多系统中使用。

WAL 的机制是,当客户端写入数据时,系统会做两件事:

  1. 日志写入磁盘并返回给客户端
  2. 数据异步写入磁盘、缓存或内存

有两个好处:

  1. 如果出现异常(即断电),我们可以从日志中恢复数据。
  2. 性能好,因为我们异步写入数据,可以批量操作

为什么不直接将数据写入磁盘?您将每次写入都直接写入磁盘。成功时,您告诉客户端成功,如果写入失败,则返回失败的响应或超时。

这样,您仍然拥有这两个好处。

  1. 在断电的情况下,您不需要恢复任何东西。因为返回给客户端的每个成功响应都意味着数据确实在磁盘上。
  2. 性能应该是一样的。虽然我们经常接触磁盘,但是 WAL 也是一样的(WAL 每次写入成功都意味着它在磁盘上成功)

那么使用 WAL 有什么好处呢?

database ceph rocksdb

8
推荐指数
1
解决办法
1376
查看次数

pvc 陷入挂起状态,等待通过外部配置程序“rook-ceph.rbd.csi.ceph.com”或手动创建卷

我使用 rook 构建 ceph 集群。但是我的 pvc 陷入待处理状态。当我使用 kubectl describe pvc 时,我发现来自 persistencevolume-controller 的事件:

\n
waiting for a volume to be created, either by external provisioner "rook-ceph.rbd.csi.ceph.com" or manually created by system administrator\n
Run Code Online (Sandbox Code Playgroud)\n

我的所有 Pod 都处于运行状态:

\n
NAME                                                     READY   STATUS      RESTARTS   AGE\ncsi-cephfsplugin-ntqk6                                   3/3     Running     0          14d\ncsi-cephfsplugin-pqxdw                                   3/3     Running     6          14d\ncsi-cephfsplugin-provisioner-c68f789b8-dt4jf             6/6     Running     49         14d\ncsi-cephfsplugin-provisioner-c68f789b8-rn42r             6/6     Running     73         14d\ncsi-rbdplugin-6pgf4                                      3/3     Running     0          14d\ncsi-rbdplugin-l8fkm                                      3/3     Running     6          14d\ncsi-rbdplugin-provisioner-6c75466c49-tzqcr               6/6     Running     106        14d\ncsi-rbdplugin-provisioner-6c75466c49-x8675               6/6     Running     17         14d\nrook-ceph-crashcollector-compute08.dc-56b86f7c4c-9mh2j   1/1     Running     2          12d\nrook-ceph-crashcollector-compute09.dc-6998676d86-wpsrs   1/1     Running …
Run Code Online (Sandbox Code Playgroud)

ceph rook-storage kubernetes-rook

8
推荐指数
0
解决办法
7308
查看次数

GlusterFS或Ceph作为Hadoop的后端

有没有人试图使用GlusterFS或Ceph作为Hadoop的后端?我不是在谈论只是使用插件来缝制东西.性能是否优于HDFS本身?是否适合生产使用.

另外,合并对象存储,hadoop hdfs存储作为单个存储是一个非常好的主意吗?或者最好让它们分开.

hadoop ceph glusterfs

6
推荐指数
2
解决办法
4313
查看次数

在销毁pool1_U(500)之前删除池'mon_allow_pool_delete配置选项为true

我正在运行proxmox,我尝试删除一个我创建错误的池.但它不断给出这个错误:

mon_command failed - pool deletion is disabled; you must first set the mon_allow_pool_delete config option to true before you can destroy a pool1_U (500)
OK
Run Code Online (Sandbox Code Playgroud)

但:

root@kvm-01:~# ceph -n mon.0 --show-config | grep mon_allow_pool_delete
mon_allow_pool_delete = true
root@kvm-01:~# ceph -n mon.1 --show-config | grep mon_allow_pool_delete
mon_allow_pool_delete = true
root@kvm-01:~# ceph -n mon.2 --show-config | grep mon_allow_pool_delete
mon_allow_pool_delete = true

root@kvm-01:~# cat /etc/ceph/ceph.conf
[global]
         auth client required = cephx
         auth cluster required = cephx
         auth service required = cephx
         cluster …
Run Code Online (Sandbox Code Playgroud)

ceph proxmox

6
推荐指数
3
解决办法
1万
查看次数

用 Cephadm 配置集群网络?

我用 cephadm 配置了一个简单的 Ceph 集群,如下所示:

cephadm bootstrap --mon-ip 192.168.0.4
ssh-copy-id -f -i /etc/ceph/ceph.pub root@host2
ssh-copy-id -f -i /etc/ceph/ceph.pub root@host3
ceph orch host add host2
ceph orch host add host3
ceph orch apply osd --all-available-devices
Run Code Online (Sandbox Code Playgroud)

它工作正常。现在我想在192.168.1.0/24上建立一个集群网络。

我试过了,ceph config set global cluster_network 192.168.1.0/24但没有任何效果。我在辅助 NIC 上没有看到任何流量。

我该如何解决这个问题?让 cephadm 注意到变化的推荐方法是什么?

ceph cephadm

6
推荐指数
1
解决办法
2011
查看次数