40 lines
1012 B
Markdown
40 lines
1012 B
Markdown
> 本文作者:丁辉
|
||
|
||
# Ceph问题记录
|
||
|
||
> 重启 Mon 后 `/opt/ceph-container/bin/entrypoint.sh: Existing mon, trying to rejoin cluster...`
|
||
|
||
- 该问题通过以下方式"解决": 在 Mon 持久化目录中 `rm -rf /var/lib/ceph/mon/<MONID>` , 其他 mon 将需要重复同样的修复方式。
|
||
|
||
或
|
||
|
||
- 修改启动文件修复
|
||
|
||
1. 将 mon 容器内的启动脚本复制到宿主机中。
|
||
|
||
```bash
|
||
docker cp ceph-mon:/opt/ceph-container/bin/start_mon.sh .
|
||
```
|
||
|
||
2. 修改启动脚本
|
||
|
||
```bash
|
||
# 找到如下代码,注释掉
|
||
v2v1=$(ceph-conf -c /etc/ceph/"${CLUSTER}".conf 'mon host' | tr ',' '\n' | grep -c "${MON_IP_NO_BRACKETS}")
|
||
# 替换为如下代码
|
||
v2v1=2
|
||
```
|
||
|
||
3. 将修改后的启动脚本再复制到容器中
|
||
|
||
```bash
|
||
docker cp start_mon.sh ceph-mon:/opt/ceph-container/bin/start_mon.sh
|
||
```
|
||
|
||
4. 重新启动 mon 容器
|
||
|
||
```bash
|
||
docker restart ceph-mon
|
||
```
|
||
|
||
5. 再重启其他两个 mon 节点即可恢复 |