我刚刚在两个不同的服务器中初始化了一个C年会实例。
cluster 241b5d19-15f5-48be-b98c-285239d70038
health HEALTH_WARN
64 pgs degraded
64 pgs stuck degraded
64 pgs stuck unclean
64 pgs stuck undersized
64 pgs undersized
monmap e3: 2 mons at {serv1=10.231.69.9:6789/0,serv2=10.231.69.34:6789/0}
election epoch 6, quorum 0,1 serv1,serv2
mgr no daemons active
osdmap e10: 2 osds: 2 up, 2 in
flags sortbitwise,require_jewel_osds,require_kraken_osds
pgmap v22: 64 pgs, 1 pools, 0 bytes data, 0 objects
68292 kB used, 1861 GB / 1861 GB avail
64 active+undersized+degraded只使用mon和osd (我不设置mds、rgw或CephFS)。
我会使用rbd为容器卷创建一个持久化的共享存储,但是--我真的很困惑--如何将我的osd插入到端口中。
我看到一些rbd坞插件的存在:
但似乎没有一个与最新的码头版本,或至少>= 1.13兼容。
因此,我在问自己,我如何才能实现我想要的,一些解决方案出现在我的脑海中,但我真的不确定哪一个是最好的(甚至可能)。
CephFS +标准坞文件系统安装卷rexray (不再维护flocker)S3插件但是,1.解决方案似乎不优雅,在更大的环境(超过2台服务器)中更难管理。
然而,解决方案似乎是一个很好的起点,但谁都有反馈吗?
发布于 2018-09-09 16:50:03
用于RBD的Docker卷插件与Docker v2插件系统一起工作。(我们在群集中使用它)
以下是自述的摘录:
安装插件:
docker plugin install wetopi/rbd \
--alias=wetopi/rbd \
LOG_LEVEL=1 \
RBD_CONF_POOL="ssd" \
RBD_CONF_CLUSTER=ceph \
RBD_CONF_KEYRING_USER=client.admin创建一个卷:
docker volume create -d wetopi/rbd -o size=206 my_rbd_volume
docker volume ls
DRIVER VOLUME NAME
local 069d59c79366294d07b9102dde97807aeaae49dc26bb9b79dd5b983f7041d069
local 11db1fa5ba70752101be90a80ee48f0282a22a3c8020c1042219ed1ed5cb0557
local 2d1f2a8fac147b7e7a6b95ca227eba2ff859325210c7280ccb73fd5beda6e67a
wetopi/rbd my_rbd_volume运行一个具有rbd卷的容器:
docker run -it -v my_rbd_volume:/data --volume-driver=wetopi/rbd busybox sh发布于 2018-09-13 12:46:05
从ceph -s的输出中可以看出,您已经创建了一个ceph集群,其中包含两个节点,每个节点都有一个osd。默认情况下,ceph使用的大小(nr的副本)为3,这是建议的值。您可以将大小更改为2,最小大小更改为1,,但如果数据对没有任何价值,那么将此设置用于其他任何东西,只用作ceph的游乐场,都被认为是疯狂的。
应该在至少3个相同配置的节点上运行一个最小值。相同的包括: CPU,RAM,OSD计数(每个CPU核心一个OSD )。对于中等流量,也可以在这三个节点上放置mons。强烈推荐10 10GBit节点互连。
https://stackoverflow.com/questions/42837939
复制相似问题