附录 B. cephadm 命令
cephadm
是一种命令行工具,可用于管理 Cephadm 编排器的本地主机。它提供用于调查和修改当前主机状态的命令。
一些命令通常用于调试。
并非所有主机上都不需要 cephadm
,但在调查特定守护进程时非常有用。cephadm-ansible-preflight
playbook 在所有主机上安装 cephadm
-preflight playbook,并且 cephadm-ansible purge
playbook 需要在所有主机上安装 cephadm
才能正常工作。
adopt
- 描述
-
转换升级的存储集群守护进程来运行
cephadm
。 - 语法
cephadm adopt [-h] --name DAEMON_NAME --style STYLE [--cluster CLUSTER] --legacy-dir [LEGACY_DIR] --config-json CONFIG_JSON] [--skip-firewalld] [--skip-pull]
- 示例
[root@host01 ~]# cephadm adopt --style=legacy --name prometheus.host02
ceph-volume
- 描述
-
此命令用于列出特定主机上的所有设备。在容器内运行
ceph-volume
命令,利用可插拔工具(如lvm
或物理磁盘)部署 OSD,并遵循准备、激活和启动 OSD 的可靠方法。 - 语法
cephadm ceph-volume inventory/simple/raw/lvm [-h] [--fsid FSID] [--config-json CONFIG_JSON] [--config CONFIG, -c CONFIG] [--keyring KEYRING, -k KEYRING]
- 示例
[root@nhost01 ~]# cephadm ceph-volume inventory --fsid f64f341c-655d-11eb-8778-fa163e914bcc
check-host
- 描述
- 检查适合 Ceph 集群的主机配置。
- 语法
cephadm check-host [--expect-hostname HOSTNAME]
- 示例
[root@host01 ~]# cephadm check-host --expect-hostname host02
deploy
- 描述
- 在本地主机上部署守护进程。
- 语法
cephadm shell deploy DAEMON_TYPE [-h] [--name DAEMON_NAME] [--fsid FSID] [--config CONFIG, -c CONFIG] [--config-json CONFIG_JSON] [--keyring KEYRING] [--key KEY] [--osd-fsid OSD_FSID] [--skip-firewalld] [--tcp-ports TCP_PORTS] [--reconfig] [--allow-ptrace] [--memory-request MEMORY_REQUEST] [--memory-limit MEMORY_LIMIT] [--meta-json META_JSON]
- 示例
[root@host01 ~]# cephadm shell deploy mon --fsid f64f341c-655d-11eb-8778-fa163e914bcc
enter
- 描述
- 在正在运行的守护进程容器内运行交互式 shell。
- 语法
cephadm enter [-h] [--fsid FSID] --name NAME [command [command …]]
- 示例
[root@host01 ~]# cephadm enter --name 52c611f2b1d9
帮助
- 描述
-
查看
cephadm
支持的所有命令。 - 语法
cephadm help
- 示例
[root@host01 ~]# cephadm help
install
- 描述
- 安装软件包。
- 语法
cephadm install PACKAGES
- 示例
[root@host01 ~]# cephadm install ceph-common ceph-osd
inspect-image
- 描述
- 检查本地 Ceph 容器镜像。
- 语法
cephadm --image IMAGE_ID inspect-image
- 示例
[root@host01 ~]# cephadm --image 13ea90216d0be03003d12d7869f72ad9de5cec9e54a27fd308e01e467c0d4a0a inspect-image
list-networks
- 描述
- 列出 IP 网络。
- 语法
cephadm list-networks
- 示例
[root@host01 ~]# cephadm list-networks
ls
- 描述
-
列出主机上
cephadm
已知的守护进程实例。您可以使用--no-detail
命令来更快地运行,这详细介绍了守护进程名称、fsid、样式和 systemd 单元。您可以使用--legacy-dir
选项指定用于搜索后台程序的旧基础目录。 - 语法
cephadm ls [--no-detail] [--legacy-dir LEGACY_DIR]
- 示例
[root@host01 ~]# cephadm ls --no-detail
logs
- 描述
-
输出守护进程容器的
journald
日志。这类似于journalctl
命令。 - 语法
cephadm logs [--fsid FSID] --name DAEMON_NAME cephadm logs [--fsid FSID] --name DAEMON_NAME -- -n NUMBER # Last N lines cephadm logs [--fsid FSID] --name DAEMON_NAME -- -f # Follow the logs
- 示例
[root@host01 ~]# cephadm logs --fsid 57bddb48-ee04-11eb-9962-001a4a000672 --name osd.8 [root@host01 ~]# cephadm logs --fsid 57bddb48-ee04-11eb-9962-001a4a000672 --name osd.8 -- -n 20 [root@host01 ~]# cephadm logs --fsid 57bddb48-ee04-11eb-9962-001a4a000672 --name osd.8 -- -f
prepare-host
- 描述
-
为
cephadm
准备主机。 - 语法
cephadm prepare-host [--expect-hostname HOSTNAME]
- 示例
[root@host01 ~]# cephadm prepare-host [root@host01 ~]# cephadm prepare-host --expect-hostname host01
pull
- 描述
- 拉取 Ceph 镜像。
- 语法
cephadm [-h] [--image IMAGE_ID] pull
- 示例
[root@host01 ~]# cephadm --image 13ea90216d0be03003d12d7869f72ad9de5cec9e54a27fd308e01e467c0d4a0a pull
registry-login
- 描述
- 为经过身份验证的 registry 提供 cephadm 登录信息。Cephadm 会尝试将调用主机记录到该 registry 中。
- 语法
cephadm registry-login --registry-url [REGISTRY_URL] --registry-username [USERNAME] --registry-password [PASSWORD] [--fsid FSID] [--registry-json JSON_FILE]
- 示例
[root@host01 ~]# cephadm registry-login --registry-url registry.redhat.io --registry-username myuser1 --registry-password mypassword1
您还可以使用包含日志信息格式的 JSON registry 文件,如下所示:
- 语法
cat REGISTRY_FILE { "url":"REGISTRY_URL", "username":"REGISTRY_USERNAME", "password":"REGISTRY_PASSWORD" }
- 示例
[root@host01 ~]# cat registry_file { "url":"registry.redhat.io", "username":"myuser", "password":"mypass" } [root@host01 ~]# cephadm registry-login -i registry_file
rm-daemon
- 描述
-
移除特定的守护进程实例。如果您在主机上直接运行
cephadm rm-daemon
命令,虽然命令删除了守护进程,但cephadm mgr
模块会注意到守护进程丢失并重新部署。这个命令存在问题,应该只用于实验目的和调试。 - 语法
cephadm rm-daemon [--fsid FSID] [--name DAEMON_NAME] [--force ] [--force-delete-data]
- 示例
[root@host01 ~]# cephadm rm-daemon --fsid f64f341c-655d-11eb-8778-fa163e914bcc --name osd.8
rm-cluster
- 描述
-
从该特定主机上运行的存储集群中移除所有守护进程。与
rm-daemon
类似,如果您以这种方式删除几个守护进程,Ceph 编排器没有暂停,并且其中一些守护进程属于未管理的服务,cephadm
编排器刚刚重新部署它们。 - 语法
cephadm rm-cluster [--fsid FSID] [--force]
- 示例
[root@host01 ~]# cephadm rm-cluster --fsid f64f341c-655d-11eb-8778-fa163e914bcc
重要为了更好地清理节点作为执行集群删除的一部分,在运行
cephadm rm-cluster
命令时会删除/var/log/ceph
目录下的集群日志。只要--keep-logs
没有传递给rm-cluster
命令,集群日志就会被删除。注意如果
cephadm rm-cluster
命令在作为由 Cephadm 管理的现有集群一部分的主机上运行,并且 Cephadm Manager 模块仍处于启用和运行状态,则 Cephadm 可能会立即开始部署新守护进程,并且可能会出现更多日志。要避免这种情况,请在清除集群前禁用 cephadm mgr 模块。# ceph mgr module disable cephadm
rm-repo
- 描述
- 删除软件包存储库配置。这主要用于 Red Hat Ceph Storage 的断开连接的安装。
- 语法
cephadm rm-repo [-h]
- 示例
[root@host01 ~]# cephadm rm-repo
run
- 描述
- 在容器中运行 Ceph 守护进程(在前台)。
- 语法
cephadm run [--fsid FSID] --name DAEMON_NAME
- 示例
[root@host01 ~]# cephadm run --fsid f64f341c-655d-11eb-8778-fa163e914bcc --name osd.8
shell
- 描述
-
通过推断或指定的 Ceph 集群,运行可以访问 Ceph 命令的交互式 shell。您可以使用
cephadm shell
命令进入 shell,并在 shell 中运行所有编配器命令。 - 语法
cephadm shell [--fsid FSID] [--name DAEMON_NAME, -n DAEMON_NAME] [--config CONFIG, -c CONFIG] [--mount MOUNT, -m MOUNT] [--keyring KEYRING, -k KEYRING] [--env ENV, -e ENV]
- 示例
[root@host01 ~]# cephadm shell -- ceph orch ls [root@host01 ~]# cephadm shell
unit
- 描述
-
通过此操作启动、停止、重新启动、启用和禁用守护进程。这在守护进程的
systemd
单元中运行。 - 语法
cephadm unit [--fsid FSID] --name DAEMON_NAME start/stop/restart/enable/disable
- 示例
[root@host01 ~]# cephadm unit --fsid f64f341c-655d-11eb-8778-fa163e914bcc --name osd.8 start
version
- 描述
- 提供存储集群的版本。
- 语法
cephadm version
- 示例
[root@host01 ~]# cephadm version