Mars 400 Ceph cluster Maintenance SOP
This document is intended to provide a standard operation procedure (SOP) for maintaining Mars400 series systems.
If the client access is slow or stuck, the top reason is OSD slow ops. OSD slow ops are usually caused by one or more OSD nodes on Mars400 being frozen. Please follow the Procedure A to resolve the slow ops.
If there is an OSD down and doesn't back to the up status, Please follow the Procedure B
A. Procedure to Solve Slow Request/Ops (Reset the OSD node causes slow ops)
The following steps are intended to solve the problem of slow requests/ops.
- Log in to the Ceph mon node.
- Execute the
ceph -s
command. - Check if there are words like "slow ops" in the output.
- The lines that contain "slow ops" usually contain multiple OSD IDs.
For example, the output is like this:
SLOW_OPS 8 slow ops, oldest one blocked for 1314 sec, osd.49 has slow ops
- In this case, the osd that has slow ops is osd.49.
- Execute
ceph osd find <osd id>
to get the hostname of the osd, and then get the chassis and node number from the hostname. - Log in to the current chassis's BMC.
- Enter
advance
at the console. - Enter
1
to select the mod reset option. - Enter the node number to reset.
- If there are multiple OSD IDs in the list, please wait until the OSD
goes back to the cluster after each execution.
B. Procedure to Solve OSD Down (Reset node)
The following steps are intended to solve the problem of osd down.
- Log in to the Ceph mon node.
- Execute the
ceph -s
command. - Check the osd number and the status of pgs.
- Run
ceph osd tree down
to get the osd id that is down. ceph osd tree down
. Get the chassis and node number from the output.- Log in to the current chassis's BMC.
- Enter
advance
at the console. - Enter
1
to select the mod reset option. - Enter the node number to reset.
C. Procedure to Solve OSD Down After Reboot (Fix OSD bluestore metadata)
The following steps are intended to solve the problem of osd down after reboot.
- Log in to the Ceph mon node.
- Execute the
ceph -s
command. - Check the osd number and the status of pgs.
- Run
ceph osd tree down
to get the osd id that is down. - Use ssh to remote access the down osd.
- Run the following command to fix the osd:
img=$(ceph config dump -f json | jq -r '.[]|select(.section=="global" and .name=="container_image").value')
sudo cephadm --image $img shell --fsid <ceph fsid> --name osd.<osd id>
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-<osd id> --command fsck
ceph-bluestore-tool --path /var/lib/ceph/osd/ceph-<osd id> --command repair
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-<osd id> --op fsck
ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-<osd id> --op repair
- After that, restart the ceph-osd service or reboot the system to bring the OSD online.