官方文档:https://rook.io/docs/rook/v1.8/ceph-toolbox.html
Rook工具箱是一个包含用于Rook调试和测试的常用工具的容器。工具箱基于CentOS,因此可以通过yum轻松安装更多您选择的工具。
工具箱可以在两种模式下运行:
交互式:启动一个工具箱,您可以在其中从shell连接和执行Ceph命令
一次性作业:使用Ceph命令运行脚本,并从作业日志中收集结果
交互式工具箱
rook toolbox可以在Kubernetes集群中作为部署运行,您可以在其中连接并运行任意Ceph命令。
启动rook ceph工具:
kubectl create -f deploy/examples/toolbox.yaml
等待工具箱盒下载其容器并进入运行状态:
kubectl -n rook-ceph rollout status deploy/rook-ceph-tools
rook ceph tools pod运行后,您可以通过以下方式连接到它:
kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- bash
工具箱中的所有可用工具都已准备好满足您的故障排除需求。
- ceph status
- ceph osd status
- ceph df
- rados df
使用工具箱后,可以删除部署:
kubectl -n rook-ceph delete deploy/rook-ceph-tools
一次性作业工具箱
如果要一次性运行Ceph命令并在以后从日志中收集结果,可以将脚本作为Kubernetes作业运行。工具箱作业将运行嵌入作业规范中的脚本。该脚本具有bash脚本的全部灵活性。
在本例中,创建作业时执行ceph status命令。创建工具箱作业:
kubectl create -f deploy/examples/toolbox-job.yaml
作业完成后,请参见脚本的结果::
kubectl -n rook-ceph logs -l job-name=rook-ceph-toolbox-job