rabbitmqctl.8
名称
rabbitmqctl — 用于管理 RabbitMQ 节点的工具
概要
rabbitmqctl | [-q] [-s] [-l] [-n 节点] [-t 超时] 命令 [命令_选项] |
描述
RabbitMQ 是一个开源的、支持多协议的消息代理。
rabbitmqctl 是管理 RabbitMQ 服务器节点的主要命令行工具,与 rabbitmq-diagnostics、rabbitmq-upgrade 等工具一起使用。
它通过连接到专用 CLI 工具通信端口上的目标 RabbitMQ 节点,并使用共享密钥(称为 cookie 文件)进行身份验证来执行所有操作。
如果连接失败、目标节点未运行或 rabbitmqctl 无法成功对目标节点进行身份验证,则会显示诊断信息。
要了解更多信息,请参阅 RabbitMQ CLI 工具指南。
选项
-n节点- 默认节点是 "rabbit@target-hostname",其中 target-hostname 是本地主机。在名为 "myserver.example.com" 的主机上,节点名称通常是 "rabbit@myserver"(除非
RABBITMQ_NODENAME已被覆盖,在这种情况下,您需要使用 --longnames)。"hostname -s" 的输出通常是 "@" 符号后应使用的正确主机名。有关配置 RabbitMQ 节点的信息,请参阅 rabbitmq-server(8)。
-q,--quiet- 选择安静输出模式。在安静模式下,信息性消息会减少。
-s,--silent- 选择静默输出模式。在静默模式下,信息性消息会减少,并且表格标题会被抑制。
--no-table-headers- 不输出表格数据的标题。
--dry-run- 不运行命令。仅打印信息性消息。
-t超时,--timeout超时- 操作超时(秒)。并非所有命令都支持超时。默认值为
infinity。 -l,--longnames当集群配置为使用长(FQDN)节点名称时,必须指定此选项。要了解更多信息,请参阅 RabbitMQ 集群指南。
--erlang-cookiecookie用于向目标节点进行身份验证的共享密钥。优先使用本地文件或
RABBITMQ_ERLANG_COOKIE环境变量,而不是在命令行中指定此选项。要了解更多信息,请参阅 RabbitMQ CLI 工具指南。
命令
help[-l] [command_name]打印所有可用命令的用法。
-l,--list-commands- 仅列出命令用法,不含参数说明。
- command_name
- 打印指定命令的用法。
version显示 CLI 工具的版本。
Nodes
await_startup等待目标节点上的 RabbitMQ 应用程序启动。
例如,等待 RabbitMQ 应用程序启动
rabbitmqctl await_startupreset将 RabbitMQ 节点恢复到原始状态。
将节点从其所属的任何集群中移除,从管理数据库中移除所有数据(如配置的用户和 vhost),并删除所有持久化消息。
为了使
reset和force_reset成功,RabbitMQ 应用程序必须已停止,例如使用stop_app。例如,重置 RabbitMQ 节点
rabbitmqctl resetrotate_logs指示 RabbitMQ 节点执行内部日志轮换。
日志轮换根据配置文件中指定的日志设置执行。轮换操作是异步的,不能保证在命令返回之前完成。
请注意,在进行外部日志轮换(例如使用 logrotate(8))时,无需调用此命令。
例如,执行初始日志轮换
rabbitmqctl rotate_logsshutdown关闭节点,包括 RabbitMQ 和其运行时。此命令是阻塞的,将在运行时进程退出后返回。如果 RabbitMQ 停止失败,将返回非零退出代码。此命令会推断目标节点的 OS PID,因此只能用于关闭运行在同一主机上的节点(或广义上,同一操作系统中的节点,例如同一虚拟机或容器中)。
与 stop 命令不同,shutdown 命令
不需要 pid_file 来等待运行时进程退出。
如果 RabbitMQ 节点未运行,则返回非零退出代码。
例如,这将关闭运行默认节点名称的本地 RabbitMQ 节点。
rabbitmqctl shutdownstart_app启动 RabbitMQ 应用程序。
此命令通常在执行其他需要停止 RabbitMQ 应用程序的管理操作后运行,例如
reset。例如,指示 RabbitMQ 节点启动 RabbitMQ 应用程序
rabbitmqctl start_appstop[pid_file]停止运行 RabbitMQ 的 Erlang 节点。要重新启动节点,请遵循 安装指南 中“运行服务器”的说明。
如果指定了 pid_file,还将等待其中指定的进程终止。有关此文件的详细信息,请参阅
wait命令的说明。例如,指示 RabbitMQ 节点终止
rabbitmqctl stopstop_app停止 RabbitMQ 应用程序,但保持运行时(Erlang VM)运行。
此命令通常在执行其他需要停止 RabbitMQ 应用程序的管理操作之前运行,例如
reset。例如,指示 RabbitMQ 节点停止 RabbitMQ 应用程序
rabbitmqctl stop_appwaitpid_file,wait--pidpid等待 RabbitMQ 应用程序启动。
此命令将等待 RabbitMQ 应用程序在节点上启动。如果指定了 pidfile,它将等待 pid 文件被创建,然后等待 pid 文件中指定或
--pid参数指定的进程,最后等待该进程中的 RabbitMQ 应用程序启动。如果进程终止而未启动 RabbitMQ 应用程序,则命令将失败。如果在
--timeout内未创建指定的 pidfile 或未启动 erlang 节点,则命令将失败。默认超时为 10 秒。由 rabbitmq-server(8) 脚本创建合适的 pid 文件。默认情况下,该文件位于 Mnesia 目录中。修改
RABBITMQ_PID_FILE环境变量可更改其位置。例如,此命令将在 RabbitMQ 节点启动后返回。
rabbitmqctl wait /var/run/rabbitmq/pid
Cluster management
await_online_nodescount等待 count 个节点加入集群。
例如,等待两个 RabbitMQ 节点启动。
rabbitmqctl await_online_nodes 2change_cluster_node_typetype更改集群节点的类型。
此 type 必须是以下之一:
节点必须停止才能成功执行此操作,并且在将节点转换为 RAM 节点时,该节点不能是集群中唯一的磁盘节点。
例如,此命令将 RAM 节点转换为磁盘节点。
rabbitmqctl change_cluster_node_type disccluster_status显示集群中的所有节点,按节点类型分组,并显示当前正在运行的节点。
例如,此命令显示集群中的节点。
rabbitmqctl cluster_statusforce_boot确保节点下次能够启动,即使它不是最后一个关闭的节点。
通常,当您完全关闭 RabbitMQ 集群时,第一个重新启动的节点应该是最后一个关闭的节点,因为它可能看到了其他节点未曾见过的事件。但有时这是不可能的:例如,如果整个集群断电,则所有节点都可能认为它们不是最后一个关闭的节点。
在这种情况下,您可以在节点关闭时调用
force_boot。这将告知节点在下次启动时无条件启动。在此节点关闭后对集群进行的任何更改都将丢失。如果最后一个关闭的节点永久丢失,则您应该使用
forget_cluster_node--offline而不是此命令,因为它将确保在已丢失节点上领导者副本的镜像队列将被提升。例如,这将强制节点在下次启动时不要等待其他节点。
rabbitmqctl force_bootforce_reset(已弃用)强制将 RabbitMQ 节点恢复到原始状态。
force_reset命令与reset命令的区别在于,它无条件地重置节点,而不考虑当前管理数据库的状态和集群配置。仅当数据库或集群配置已损坏时,才应将其作为最后手段使用。
force_reset命令已弃用。当使用 Mnesia 元数据存储时,它仍然可用。在使用 Khepri 元数据存储时,它不受支持。为了使
reset和force_reset成功,RabbitMQ 应用程序必须已停止,例如使用stop_app。例如,重置 RabbitMQ 节点
rabbitmqctl force_resetforget_cluster_node[--offline]--offline- 允许从离线节点移除节点。这仅在所有节点都离线且最后一个关闭的节点无法联机,从而阻止整个集群启动的情况下有用。在任何其他情况下都不应使用它,因为它可能导致不一致。
远程移除集群节点。要移除的节点必须离线,而我们要从中移除的节点必须在线,除非使用
--offline标志。当使用
--offline标志时,rabbitmqctl不会像正常那样尝试连接到节点;相反,它将暂时成为该节点,以便进行更改。如果节点无法正常启动,这很有用。在这种情况下,该节点将成为集群元数据(例如,存在的队列)的规范来源,即使它以前不是。因此,如果可能,您应该在最后一个关闭的节点上使用此命令。例如,此命令将节点 "rabbit@stringer" 从节点 "hare@mcnulty" 中移除。
rabbitmqctl -n hare@mcnulty forget_cluster_node rabbit@stringerjoin_clusterseed-node [--ram]- seed-node
- 现有集群成员(种子节点),用于集群。
--ram- 如果提供,节点将作为 RAM 节点加入集群。不建议使用 RAM 节点。仅在您确切知道为什么需要使用它们时才使用。
指示节点成为指定节点所在集群的成员。在集群化之前,节点会被重置,因此在使用此命令时要小心。为了使此命令成功,RabbitMQ 应用程序必须已停止,例如使用
stop_app。集群节点可以是两种类型:磁盘节点或 RAM 节点。磁盘节点在 RAM 和磁盘上复制数据,从而在节点发生故障和从全局事件(如所有节点的断电)恢复时提供冗余。RAM 节点仅在 RAM 中复制数据(队列内容除外,如果队列是持久化的或太大而无法放入内存,则可以保留在磁盘上),主要用于可伸缩性。RAM 节点仅在管理资源时(例如,添加/删除队列、交换器或绑定)性能更高。集群始终必须至少有一个磁盘节点,并且通常应该有一个以上的节点。
默认情况下,该节点将是磁盘节点。如果您想创建 RAM 节点,请提供
--ram标志。执行
join_cluster命令后,每当在当前节点上启动 RabbitMQ 应用程序时,它都会尝试连接到节点在关闭时所在的集群中的节点。要离开集群,请
reset该节点。您也可以使用forget_cluster_node命令远程移除节点。例如,此命令指示 RabbitMQ 节点作为 ram 节点加入 "hare@elena" 所属的集群。
rabbitmqctl join_cluster hare@elena --ram要了解更多信息,请参阅 RabbitMQ 集群指南。
User Management
请注意,所有用户管理命令 rabbitmqctl 只能管理内部 RabbitMQ 数据库中的用户。来自任何备用身份验证后端(如 LDAP)的用户无法使用这些命令进行检查或管理。rabbitmqctl。
add_userusername password- username
- 要创建的用户的名称。
- password
- 创建的用户登录代理时将使用的密码。
例如,此命令指示 RabbitMQ 代理创建一个(非管理员)用户 "janeway",其(初始)密码为 "changeit"。
rabbitmqctl add_user janeway changeitauthenticate_userusername password- username
- 用户的名称。
- password
- 用户的密码。
例如,此命令指示 RabbitMQ 代理使用密码 "verifyit" 对用户 "janeway" 进行身份验证。
rabbitmqctl authenticate_user janeway verifyitchange_passwordusername newpassword- username
- 要更改密码的用户的名称。
- newpassword
- 用户的新密码。
例如,此命令指示 RabbitMQ 代理将用户 "janeway" 的密码更改为 "newpass"。
rabbitmqctl change_password janeway newpassclear_passwordusername- username
- 要清除密码的用户的名称。
例如,此命令指示 RabbitMQ 代理清除用户 "janeway" 的密码。
rabbitmqctl clear_password janeway现在此用户无法使用密码登录(但可能可以通过例如 SASL EXTERNAL 进行登录,如果已配置)。
hash_passwordplaintext- plaintext
- 要哈希的明文密码。
根据当前配置的密码哈希算法哈希明文密码。
delete_userusername- username
- 要删除的用户的名称。
例如,此命令指示 RabbitMQ 代理删除用户 "janeway"。
rabbitmqctl delete_user janewaylist_users列出用户。每行结果将包含用户名,后跟该用户设置的标签列表。
例如,此命令指示 RabbitMQ 代理列出所有用户。
rabbitmqctl list_usersset_user_tagsusername [tag ...]- username
- 要设置标签的用户的名称。
- tag
- 要设置的零个、一个或多个标签。任何现有标签都将被移除。
例如,此命令指示 RabbitMQ 代理确保用户 "janeway" 是管理员。
rabbitmqctl set_user_tags janeway administrator当用户使用消息协议进行身份验证时,这没有影响,但可用于允许用户在用户通过其他方式(例如使用管理插件)登录时管理用户、虚拟主机和权限。
此命令指示 RabbitMQ 代理从用户 "janeway" 中移除所有标签。
rabbitmqctl set_user_tags janeway
Access control
clear_permissions[-pvhost] username- vhost
- 要禁止用户访问的虚拟主机的名称,默认为 "/"。
- username
- 要禁止访问指定虚拟用户的用户名。
设置用户权限。
例如,此命令指示 RabbitMQ 代理禁止用户 "janeway" 访问名为 "my-vhost" 的虚拟主机。
rabbitmqctl clear_permissions -p my-vhost janewayclear_topic_permissions[-pvhost] username [exchange]- vhost
- 要清除主题权限的虚拟主机的名称,默认为 "/"。
- username
- 要清除指定虚拟主机主题权限的用户名。
- exchange
- 要清除主题权限的主题交换器的名称,默认为给定用户具有主题权限的所有主题交换器。
清除用户主题权限。
例如,此命令指示 RabbitMQ 代理移除用户 "janeway" 在名为 "my-vhost" 的虚拟主机中对主题交换器 "amq.topic" 的主题权限。
rabbitmqctl clear_topic_permissions -p my-vhost janeway amq.topiclist_permissions[-pvhost]- vhost
- 要列出已授予访问权限的用户及其权限的虚拟主机的名称。默认为 "/"。
列出虚拟主机中的权限。
例如,此命令指示 RabbitMQ 代理列出已授予访问名为 "my-vhost" 的虚拟主机的所有用户,以及他们在该虚拟主机中对资源的资源操作权限。请注意,空字符串表示未授予任何权限。
rabbitmqctl list_permissions -p my-vhostlist_topic_permissions[-pvhost]- vhost
- 要列出用户主题权限的虚拟主机的名称。默认为 "/"。
列出虚拟主机中的主题权限。
例如,此命令指示 RabbitMQ 代理列出已授予主题权限的名为 "my-vhost" 的虚拟主机中的所有用户:
rabbitmqctl list_topic_permissions -p my-vhostlist_user_permissionsusername- username
- 要列出权限的用户的名称。
列出用户权限。
例如,此命令指示 RabbitMQ 代理列出已授予用户 "janeway" 访问权限的所有虚拟主机,以及用户在这些虚拟主机中对资源的权限。
rabbitmqctl list_user_permissions janewaylist_user_topic_permissionsusername- username
- 要列出主题权限的用户的名称。
列出用户主题权限。
例如,此命令指示 RabbitMQ 代理列出已授予用户 "janeway" 访问权限的所有虚拟主机,以及用户在这些虚拟主机中的主题权限。
rabbitmqctl list_user_topic_permissions janewaylist_vhosts[vhostinfoitem ...]列出虚拟主机。
use vhostinfoitem 参数用于指示要在结果中包含哪些虚拟主机信息项。结果中的列顺序将与参数顺序匹配。vhostinfoitem 可以接受以下列表中的任何值:
name- 虚拟主机的名称,非 ASCII 字符已根据 C 语言进行转义。
tracing- 此虚拟主机是否启用了跟踪。
default_queue_type- 此 vhost 的默认队列类型。
description- 虚拟主机描述。
tags- 虚拟主机标签。
cluster_state- 虚拟主机状态:nodedown(节点关闭)、running(运行中)、stopped(已停止)。
如果未指定任何 vhostinfoitem s,则显示 vhost 名称。
例如,此命令指示 RabbitMQ 代理列出所有虚拟主机。
rabbitmqctl list_vhosts name tracingset_permissions[-pvhost] user conf write read- vhost
- 要授予用户访问权限的虚拟主机的名称,默认为 "/"。
- user
- 要授予访问指定虚拟用户的用户名。
- conf
- 匹配资源名称的正则表达式,用户将获得这些资源的配置权限。
- write
- 匹配资源名称的正则表达式,用户将获得这些资源的写入权限。
- read
- 匹配资源名称的正则表达式,用户将获得这些资源的读取权限。
设置用户权限。
例如,此命令指示 RabbitMQ 代理授予用户 "janeway" 访问名为 "my-vhost" 的虚拟主机,并对所有以 "janeway-" 开头的资源授予配置权限,以及对所有资源授予写入和读取权限。
rabbitmqctl set_permissions -p my-vhost janeway "^janeway-." "." ".*"set_permissions_globallyusername conf write read- username
- 要授予访问指定虚拟用户的用户名。
- conf
- 匹配资源名称的正则表达式,用户将获得这些资源的配置权限。
- write
- 匹配资源名称的正则表达式,用户将获得这些资源的写入权限。
- read
- 匹配资源名称的正则表达式,用户将获得这些资源的读取权限。
在所有 vhost 中设置用户权限。
例如,此命令指示 RabbitMQ 代理授予用户 "janeway" 访问所有虚拟主机,并对所有以 "janeway-" 开头的资源授予配置权限,以及对所有资源授予写入和读取权限。
rabbitmqctl set_permissions_globally janeway "^janeway-." "." ".*"set_topic_permissions[-pvhost] user exchange write read- vhost
- 要授予用户访问权限的虚拟主机的名称,默认为 "/"。
- user
- 在目标虚拟主机中,权限适用的用户的名称。
- exchange
- 将应用授权检查的主题交换器的名称。
- write
- 匹配已发布消息路由键的正则表达式。
- read
- 匹配已消耗消息路由键的正则表达式。
设置用户主题权限。
例如,此命令指示 RabbitMQ 代理允许用户 "janeway" 在 "my-vhost" 虚拟主机中通过 "amp.topic" 交换器发布和消耗路由键以 "janeway-" 开头的消息。
rabbitmqctl set_topic_permissions -p my-vhost janeway amq.topic "^janeway-." "^janeway-."主题权限支持以下变量的变量扩展:username、vhost 和 client_id。请注意,仅在使用 MQTT 时才扩展 client_id。通过使用 "^{username}-.*" 可以使前面的示例更通用。
rabbitmqctl set_topic_permissions -p my-vhost janeway amq.topic "^{username}-." "^{username}-."
监控、可观测性和健康检查
environment显示每个运行应用程序的应用程序环境中的每个变量的名称和值。
list_bindings[-pvhost] [bindinginfoitem ...]返回绑定详细信息。默认情况下,返回 "/" 虚拟主机的绑定。可以使用
-p标志覆盖此默认值。use bindinginfoitem 参数用于指示要在结果中包含哪些绑定信息项。结果中的列顺序将与参数顺序匹配。bindinginfoitem 可以接受以下列表中的任何值:
source_name- 绑定到的消息源的名称。非 ASCII 字符已根据 C 语言进行转义。
source_kind- 绑定到的消息源的类型。目前始终是 exchange。非 ASCII 字符已根据 C 语言进行转义。
destination_name- 绑定到的消息目标的名称。非 ASCII 字符已根据 C 语言进行转义。
destination_kind- 绑定到的消息目标的类型。非 ASCII 字符已根据 C 语言进行转义。
routing_key- 绑定的路由键,非 ASCII 字符已根据 C 语言进行转义。
arguments- 绑定的参数。
如果未指定任何 bindinginfoitem s,则显示以上所有项。
例如,此命令显示名为 "my-vhost" 的虚拟主机中绑定的交换器名称和队列名称。
rabbitmqctl list_bindings -p my-vhost exchange_name queue_namelist_channels[channelinfoitem ...]返回所有当前通道的信息,这些通道是执行大多数 AMQP 命令的逻辑容器。这包括属于普通 AMQP 连接的通道以及由各种插件和其他扩展创建的通道。
use channelinfoitem 参数用于指示要在结果中包含哪些通道信息项。结果中的列顺序将与参数顺序匹配。channelinfoitem 可以接受以下列表中的任何值:
pid- 与连接关联的 Erlang 进程的 ID。
connection- 通道所属连接的 Erlang 进程的 ID。
name- 通道的可读名称。
number- 通道在连接内的唯一标识符。
user- 与通道关联的用户名。
vhost- 通道运行的虚拟主机。
transactional- 如果通道处于事务模式,则为 true,否则为 false。
confirm- 如果通道处于确认模式,则为 true,否则为 false。
consumer_count- 通过通道检索消息的逻辑 AMQP 消费者的数量。
messages_unacknowledged- 已通过此通道传递但尚未确认的消息数量。
messages_uncommitted- 尚未提交的事务中收到的消息数量。
acks_uncommitted- 尚未提交的事务中收到的确认数量。
messages_unconfirmed- 尚未确认已发布的消息数量。在非确认模式的通道上,此值为 0。
prefetch_count- 新消费者的 QoS prefetch 限制,0 表示无限制。
如果未指定任何 channelinfoitem s,则假定为 pid、user、consumer_count 和 messages_unacknowledged。
例如,此命令显示每个通道的连接进程和未确认消息的数量。
rabbitmqctl list_channels connection messages_unacknowledgedlist_ciphers列出编码命令支持的密码套件。
例如,此命令指示 RabbitMQ 代理列出所有编码命令支持的密码套件。
rabbitmqctl list_cipherslist_connections[connectioninfoitem ...]返回 TCP/IP 连接统计信息。
use connectioninfoitem 参数用于指示要在结果中包含哪些连接信息项。结果中的列顺序将与参数顺序匹配。connectioninfoitem 可以接受以下列表中的任何值:
pid- 与连接关联的 Erlang 进程的 ID。
name- 连接的可读名称。
port- 服务器端口。
host- 通过反向 DNS 获取的服务器主机名,或者如果反向 DNS 失败或关闭,则为其 IP 地址。
peer_port- 对端端口。
peer_host- 通过反向 DNS 获取的对端主机名,或者如果反向 DNS 失败或未启用,则为其 IP 地址。
ssl- 指示连接是否使用 SSL 保护的布尔值。
ssl_protocol- SSL 协议(例如 "tlsv1")。
ssl_key_exchange- SSL 密钥交换算法(例如 "rsa")。
ssl_cipher- SSL 密码算法(例如 "aes_256_cbc")。
ssl_hash- SSL 哈希函数(例如 "sha")。
peer_cert_subject- 对端的 SSL 证书主题,采用 RFC4514 格式。
peer_cert_issuer- 对端的 SSL 证书颁发者,采用 RFC4514 格式。
peer_cert_validity- 对端 SSL 证书有效的时期。
state连接状态;以下之一:
starting
tuning
opening
running
flow
blocking
blocked
closing
closed
channels- 使用该连接的通道数量。
protocol使用的 AMQP 协议版本——目前是以下之一:
{0,9,1}
{0,8,0}
请注意,如果客户端请求 AMQP 0-9 连接,我们将其视为 AMQP 0-9-1。
auth_mechanism- 使用的 SASL 身份验证机制,例如 "PLAIN"。
user- 与连接关联的用户名。
vhost- 虚拟主机名,非 ASCII 字符已根据 C 语言进行转义。
timeout- 连接超时 / 协商的心跳间隔(秒)。
frame_max- 最大帧大小(字节)。
channel_max- 此连接上的最大通道数。
client_properties- 客户端在连接建立期间传输的信息属性。
recv_oct- 接收的字节数。
recv_cnt- 接收的数据包数。
send_oct- 发送的字节数。
send_cnt- 发送的数据包数。
send_pend- 发送队列大小。
connected_at- 建立此连接的日期和时间(作为时间戳)。
如果未指定任何 connectioninfoitem s,则显示 user、peer host、peer port、flow control 后的时间以及内存块状态。
例如,此命令显示每个连接的发送队列大小和服务器端口。
rabbitmqctl list_connections send_pend portlist_consumers[-pvhost]列出消费者,即对队列消息流的订阅。每行打印的内容以制表符分隔,显示订阅的队列名称、创建和管理订阅的通道进程 ID、在通道内唯一标识订阅的消费者标签、一个布尔值,指示是否需要为传递给此消费者的消息进行确认,一个整数,指示预取限制(0 表示“无”),以及此消费者的任何参数。
list_exchanges[-pvhost] [exchangeinfoitem ...]返回交换器详细信息。如果省略
-p标志,则返回 "/" 虚拟主机的交换器详细信息。可以使用-p标志覆盖此默认值。use exchangeinfoitem 参数用于指示要在结果中包含哪些交换器信息项。结果中的列顺序将与参数顺序匹配。exchangeinfoitem 可以接受以下列表中的任何值:
name- 交换器的名称,非 ASCII 字符已根据 C 语言进行转义。
type交换器类型,例如:
direct
topic
headers
fanout
durable- 交换器是否在服务器重启后仍然存在。
auto_delete- 交换器在不再使用时是否会被自动删除。
internal- 交换器是否为内部交换器,即客户端不能直接发布到它。
arguments- 交换器的参数。
policy- 应用于该交换器的策略名称。
如果未指定任何 exchangeinfoitem s,则显示交换器名称和类型。
例如,此命令显示名为 "my-vhost" 的虚拟主机中每个交换器的名称和类型。
rabbitmqctl list_exchanges -p my-vhost name typelist_hashes列出编码命令支持的哈希函数。
例如,此命令指示 RabbitMQ 代理列出所有编码命令支持的哈希函数。
rabbitmqctl list_hasheslist_queues[-pvhost] [--offline|--online|--local] [queueinfoitem ...]返回队列详细信息。如果省略
-p标志,则返回 "/" 虚拟主机的队列详细信息。可以使用-p标志覆盖此默认值。可以通过其状态或位置使用以下互斥选项之一来过滤显示的队列:
--offline- 仅列出当前不可用的持久化队列(更具体地说,是它们的领导者节点不可用)。
--online- 列出当前可用的队列(它们的领导者节点可用)。
--local- 仅列出其领导者副本位于当前节点的队列。
use queueinfoitem 参数用于指示要在结果中包含哪些队列信息项。结果中的列顺序将与参数顺序匹配。queueinfoitem 可以接受以下列表中的任何值:
name- 队列的名称,非 ASCII 字符已根据 C 语言进行转义。
durable- 队列是否在服务器重启后仍然存在。
auto_delete- 队列在不再使用时是否会被自动删除。
arguments- 队列的参数。
policy- 应用于该队列的用户策略名称。
operator_policy- 应用于该队列的操作员策略名称。
effective_policy_definition- 队列的有效策略定义:用户和操作员策略定义合并。
pid- 队列的 Erlang 进程标识符。
owner_pid- 独占拥有队列的连接的 Erlang 进程 ID。如果队列不是独占的,则为空。
exclusive- 如果队列是独占的(即具有 owner_pid),则为 true,否则为 false。
exclusive_consumer_pid- 订阅该队列的独占消费者的通道表示的 Erlang 进程 ID。如果没有独占消费者,则为空。
exclusive_consumer_tag- 订阅该队列的独占消费者的消费者标签。如果没有独占消费者,则为空。
messages_ready- 准备交付给客户端的消息数量。
messages_unacknowledged- 已交付给客户端但尚未确认的消息数量。
messages- ready 和 unacknowledged 消息的总和(队列深度)。
messages_ready_ram- messages_ready 中驻留在 RAM 中的消息数量。
messages_unacknowledged_ram- messages_unacknowledged 中驻留在 RAM 中的消息数量。
messages_ram- 驻留在 RAM 中的消息总数。
messages_persistent- 队列中的持久化消息总数(对于临时队列始终为 0)。
message_bytes- 队列中所有消息体的大小总和。这不包括消息属性(包括标头)或任何开销。
message_bytes_ready- 类似于
message_bytes,但仅计算准备交付给客户端的消息。 message_bytes_unacknowledged- 类似于
message_bytes,但仅计算已交付给客户端但尚未确认的消息。 message_bytes_ram- 类似于
message_bytes,但仅计算当前驻留在 RAM 中的消息。 message_bytes_persistent- 类似于
message_bytes,但仅计算持久化消息。 head_message_timestamp- 队列中第一条消息的时间戳属性(如果存在)。消息的时间戳仅在它们处于分页状态时显示。
disk_reads- 自启动以来,此队列从磁盘读取消息的总次数。
disk_writes- 自启动以来,此队列将消息写入磁盘的总次数。
consumers- 消费者数量。
consumer_utilisation- 队列能够立即将消息传递给消费者的时间比例(介于 0.0 和 1.0 之间)。如果消费者受网络拥塞或预取计数限制,则此值可能小于 1.0。
memory- 运行时为队列分配的内存字节数,包括堆栈、堆和内部结构。
mirror_pids如果队列是镜像的,则列出镜像(跟随副本)的 ID。要了解更多信息,请参阅 RabbitMQ 镜像指南。
synchronised_mirror_pids如果队列是镜像的,则给出与领导者副本同步的镜像(跟随副本)的 ID。要了解更多信息,请参阅 RabbitMQ 镜像指南。
state队列的状态。通常是 "running"(运行中),但如果是 "syncing"(同步中,message_count),则表示队列正在同步。
位于当前关闭的集群节点上的队列将显示状态为 "down"(已关闭)(大多数其他 queueinfoitem 将不可用)。
type- 队列类型,以下之一:quorum、stream、classic。
如果未指定任何 queueinfoitem s,则显示队列名称和深度。
例如,此命令显示名为 "my-vhost" 的虚拟主机中每个队列的深度和消费者数量。
rabbitmqctl list_queues -p my-vhost messages consumerslist_unresponsive_queues[--local] [--queue-timeoutmilliseconds] [queueinfoitem ...] [--no-table-headers]测试队列领导者副本是否在给定超时时间内响应。列出未及时响应的队列。
可以通过其状态或位置使用以下互斥选项之一来过滤显示的队列:
use queueinfoitem 参数用于指示要在结果中包含哪些队列信息项。结果中的列顺序将与参数顺序匹配。queueinfoitem 可以接受以下列表中的任何值:
name- 队列的名称,非 ASCII 字符已根据 C 语言进行转义。
durable- 队列是否应在服务器重启后仍然存在。
auto_delete- 当所有显式绑定被删除时,队列是否会被自动删除。
arguments- 队列的参数。
policy- 适用于该队列的有效策略名称。
pid- 领导者副本的 Erlang 进程标识符。
recoverable_mirrors- 被认为是可达(可用)的镜像副本(跟随副本)的 Erlang 进程标识符。
type- 队列类型,以下之一:quorum、stream、classic。
例如,此命令仅列出其领导者副本托管在目标节点上的无响应队列。
rabbitmqctl list_unresponsive_queues --local nameping检查节点 OS 进程是否正在运行,是否已在 EPMD 中注册,以及 CLI 工具是否可以对其进行身份验证。
示例
rabbitmqctl ping -n rabbit@hostnamereport生成服务器状态报告,其中包含所有服务器状态信息的合并,用于支持目的。当附带支持请求时,输出应重定向到文件。
例如,此命令生成一个服务器报告,该报告可以附加到支持请求电子邮件。
rabbitmqctl report > server_report.txtschema_info[--no-table-headers] [column ...]列出模式数据库表及其属性。
例如,此命令列出表名及其活动副本。
rabbitmqctl schema_info name active_replicasstatus显示代理状态信息,例如当前 Erlang 节点上运行的应用程序、RabbitMQ 和 Erlang 版本、操作系统名称,以及内存和文件描述符统计信息(请参阅
cluster_status命令了解哪些节点已集群化并正在运行)。例如,此命令显示有关 RabbitMQ 代理的信息。
rabbitmqctl status
Runtime Parameters and Policies
RabbitMQ 的某些功能(例如 Federation 插件)由动态的、集群范围的参数控制。有两种参数:作用于虚拟主机的参数和全局参数。每个 vhost 范围的参数由组件名称、名称和值组成。组件名称和名称是字符串,值是有效的 JSON 文档。全局参数由名称和值组成。名称是字符串,值是任意 Erlang 数据结构。参数可以设置、清除和列出。通常,您应参考相关功能的文档来了解如何设置参数。
策略是基于运行时参数构建的功能。策略用于在集群范围内控制和修改队列和交换器的行为。策略适用于给定的 vhost,并由名称、模式、定义和可选优先级组成。策略可以设置、清除和列出。
clear_global_parametername清除全局运行时参数。这类似于
clear_parameter,但键值对不与虚拟主机绑定。- name
- 要清除的全局运行时参数的名称。
例如,此命令清除全局运行时参数 "mqtt_default_vhosts"。
rabbitmqctl clear_global_parameter mqtt_default_vhostsclear_parameter[-pvhost] component_name key清除参数。
- component_name
- 正在清除参数的组件的名称。
- name
- 正在清除的参数的名称。
例如,此命令清除默认虚拟主机中 "federation-upstream" 组件的参数 "node01"。
rabbitmqctl clear_parameter federation-upstream node01list_global_parameters列出所有全局运行时参数。这类似于
list_parameters,但全局运行时参数不与任何虚拟主机绑定。例如,此命令列出所有全局参数。
rabbitmqctl list_global_parameterslist_parameters[-pvhost]列出虚拟主机的所有参数。
例如,此命令列出默认虚拟主机中的所有参数。
rabbitmqctl list_parametersset_global_parametername value设置全局运行时参数。这类似于
set_parameter,但键值对不与虚拟主机绑定。- name
- 要设置的全局运行时参数的名称。
- value
- 全局运行时参数的值,作为 JSON 文档。在大多数 shell 中,您很可能需要对其进行引用。
例如,此命令将全局运行时参数 "mqtt_default_vhosts" 设置为 JSON 文档 {"O=client,CN=guest":"/"}。
rabbitmqctl set_global_parameter mqtt_default_vhosts '{"O=client,CN=guest":"/"}'set_parameter[-pvhost] component_name name value设置参数。
- component_name
- 正在设置参数的组件的名称。
- name
- 正在设置的参数的名称。
- value
- 参数的值,作为 JSON 文档。在大多数 shell 中,您很可能需要对其进行引用。
例如,此命令在默认虚拟主机中为 "federation-upstream" 组件设置参数 "node01",其值为以下 JSON "guest":
rabbitmqctl set_parameter federation-upstream node01 '{"uri":"amqp://user:password@server/%2F","ack-mode":"on-publish"}'list_policies[-pvhost]列出虚拟主机的所有策略。
例如,此命令列出默认虚拟主机中的所有策略。
rabbitmqctl list_policiesset_operator_policy[-pvhost] [--prioritypriority] [--apply-toapply-to] name pattern definition设置一个操作符策略,该策略会覆盖用户策略中的一部分参数。参数与
set_policy的参数相同。支持的参数有
expires
message-ttl
max-length
max-length-bytes
set_policy[-pvhost] [--prioritypriority] [--apply-toapply-to] name pattern definition设置一个策略。
- name
- 策略的名称。
- pattern
- 正则表达式,如果匹配到资源名称,则策略生效。
- definition
- 策略的定义,格式为 JSON 文档。在大多数 shell 中,您很可能需要将其加上引号。
- priority
- 策略的优先级,一个整数。数值越高,优先级越高。默认为 0。
- apply-to
此策略应应用于哪些类型的对象。可能的值为
queues (所有队列类型,包括 streams)
classic_queues (仅经典队列)
quorum_queues (仅仲裁队列)
streams (仅 stream)
exchanges
all
默认为
all。
例如,此命令在默认虚拟主机中设置策略 "federate-me",以便内置交换机被联合。
rabbitmqctl set_policy federate-me ^amq. '{"federation-upstream-set":"all"}'clear_policy[-pvhost] name清除一个策略。
- name
- 要清除的策略的名称。
例如,此命令清除默认虚拟主机中的 "federate-me" 策略。
rabbitmqctl clear_policy federate-meclear_operator_policy[-pvhost] name清除操作符策略。参数与
clear_policy的参数相同。list_operator_policies[-pvhost]列出虚拟主机的操作符策略覆盖。参数与
list_policies的参数相同。
虚拟主机
请注意,rabbitmqctl 管理 RabbitMQ 的内部用户数据库。来自任何替代授权后端的用户的权限将不会对 rabbitmqctl 可见。
add_vhostvhost [--descriptiondesc--tagstags--default-queue-typedefault-q-type]- vhost
- 要创建的虚拟主机条目的名称。
- desc
- 任意虚拟主机描述,例如其目的,供操作员参考。
- tags
- 供操作员参考的虚拟主机标签的逗号分隔列表。
- default-q-type
- 如果客户端未明确指定队列类型,则使用此类型。值为:quorum, stream。
创建一个虚拟主机。
例如,此命令指示 RabbitMQ 代理创建一个名为 "project9_dev_18" 的新虚拟主机。
rabbitmqctl add_vhost project9_dev_18 --description 'Dev environment no. 18' --tags dev,project9clear_vhost_limits[-pvhost]清除虚拟主机限制。
例如,此命令清除 "qa_env" 虚拟主机中的虚拟主机限制。
rabbitmqctl clear_vhost_limits -p qa_envdelete_vhostvhost- vhost
- 要删除的虚拟主机条目的名称。
删除一个虚拟主机。
删除虚拟主机将删除其所有交换机、队列、绑定、用户权限、参数和策略。
例如,此命令指示 RabbitMQ 代理删除名为 "test" 的虚拟主机。
rabbitmqctl delete_vhost a-vhostlist_vhost_limits[-pvhost] [--global] [--no-table-headers]显示配置的虚拟主机限制。
--global- 显示所有虚拟主机的限制。忽略
-p参数。
restart_vhost[-pvhost]- vhost
- 要重启的虚拟主机条目的名称,默认为 "/"。
重启失败的虚拟主机数据存储和队列。
例如,此命令指示 RabbitMQ 代理重启名为 "test" 的虚拟主机。
rabbitmqctl restart_vhost testset_vhost_limits[-pvhost] definition设置虚拟主机限制。
- definition
限制的定义,格式为 JSON 文档。在大多数 shell 中,您很可能需要将其加上引号。
识别的限制为
max-connections
max-queues
使用负值表示“无限制”。
例如,此命令将 "qa_env" 虚拟主机中并发连接的最大数量限制为 64。
rabbitmqctl set_vhost_limits -p qa_env '{"max-connections": 64}'此命令将 "qa_env" 虚拟主机中的队列最大数量限制为 256。
rabbitmqctl set_vhost_limits -p qa_env '{"max-queues": 256}'此命令清除 "qa_env" 虚拟主机中的最大连接数限制。
rabbitmqctl set_vhost_limits -p qa_env '{"max-connections": -1}'此命令禁用 "qa_env" 虚拟主机中的客户端连接。
rabbitmqctl set_vhost_limits -p qa_env '{"max-connections": 0}'set_user_limitsusername definition设置用户限制。
- username
- 要应用限制的用户的名称。
- definition
限制的定义,格式为 JSON 文档。在大多数 shell 中,您很可能需要将其加上引号。
识别的限制为
max-connections
max-channels
使用负值表示“无限制”。
例如,此命令将用户 "limited_user" 允许打开的并发连接的最大数量限制为 64。
rabbitmqctl set_user_limits limited_user '{"max-connections": 64}'此命令将用户 "limited_user" 在连接上允许打开的最大通道数量限制为 16。
rabbitmqctl set_user_limits limited_user '{"max-channels": 16}'此命令清除用户 "limited_user" 的最大连接数限制。
rabbitmqctl clear_user_limits limited_user 'max-connections'此命令禁用用户 "limited_user" 的客户端连接。
rabbitmqctl set_user_limits limited_user '{"max-connections": 0}'clear_user_limitsusername limit清除用户限制。
- username
- 要清除限制的用户的名称。
- limit
- 限制的名称,或 "all" 表示一次清除所有限制。
识别的限制为
max-connections
max-channels
例如,此命令清除用户 "limited_user" 的最大连接限制。
rabbitmqctl clear_user_limits limited_user 'max-connections'此命令清除用户 "limited_user" 的所有限制。
rabbitmqctl clear_user_limits limited_user alltrace_off[-pvhost]- vhost
- 要停止跟踪的虚拟主机的名称。
停止跟踪。
trace_on[-pvhost]- vhost
- 要开始跟踪的虚拟主机的名称。
开始跟踪。请注意,跟踪状态不是持久的;如果节点重启,它将恢复到关闭状态。
配置
decodevalue passphrase [--ciphercipher] [--hashhash] [--iterationsiterations]- value passphrase
要解密的值(由 encode 命令生成)和密码。
例如:
rabbitmqctl decode '{encrypted, <<"...">>}' mypassphrase--ciphercipher--hashhash--iterationsiterations用于指定解密设置的选项。它们可以独立使用。
例如:
rabbitmqctl decode --cipher blowfish_cfb64 --hash sha256 --iterations 10000 '{encrypted,<<"...">>} mypassphrase
encodevalue passphrase [--ciphercipher] [--hashhash] [--iterationsiterations]- value passphrase
要加密的值和密码。
例如:
rabbitmqctl encode '<<"guest">>' mypassphrase--ciphercipher--hashhash--iterationsiterations用于指定加密设置的选项。它们可以独立使用。
例如:
rabbitmqctl encode --cipher blowfish_cfb64 --hash sha256 --iterations 10000 '<<"guest">>' mypassphrase
set_cluster_namename将集群名称设置为 name。集群名称会在连接时通告给客户端,并被 federation 和 shovel 插件用于记录消息的来源。集群名称默认从集群中第一个节点的 hostname 派生,但可以更改。
例如,此命令将集群名称设置为 "london"。
rabbitmqctl set_cluster_name londonset_disk_free_limitdisk_limit- disk_limit
- 下限,以字节为单位的整数,或带有内存单位符号的字符串(参见 vm_memory_high_watermark),例如 512M 或 1G。一旦可用磁盘空间达到此限制,就会设置磁盘警报。
set_disk_free_limit mem_relativefraction- fraction
- 相对于可用 RAM 总量的比例,为一个非负浮点数。小于 1.0 的值可能存在风险,应谨慎使用。
set_log_level[log_level]设置运行节点中的日志级别。
支持的 log_level 值有
debug
info
warning
error
critical
none
示例
rabbitmqctl set_log_level debugset_vm_memory_high_watermarkfraction- fraction
- 触发流控的新内存阈值比例,为一个大于或等于 0 的浮点数。
set_vm_memory_high_watermark[absolute] memory_limit
功能标志
连接操作
close_all_connections[-pvhost] [--global] [--per-connection-delaydelay] [--limitlimit] explanation-pvhost- 应关闭连接的虚拟主机的名称。指定
--global时忽略。 --global- 是否应关闭所有虚拟主机的连接。覆盖
-p。 --per-connection-delaydelay- 每次关闭连接后等待的毫秒数。
--limitlimit- 要关闭的连接数。仅对每个虚拟主机有效。指定
--global时忽略。 - explanation
- 解释字符串。
指示代理关闭指定虚拟主机或整个 RabbitMQ 节点的全部连接。
例如,此命令指示 RabbitMQ 代理关闭 "qa_env" 虚拟主机上的 10 个连接,并将解释 "Please close" 传递给它们。
rabbitmqctl close_all_connections -p qa_env --limit 10 'Please close'此命令指示代理关闭到节点的全部连接。
rabbitmqctl close_all_connections --globalclose_connectionconnectionpid explanation- connectionpid
- 要关闭的连接关联的 Erlang 进程的 ID。
- explanation
- 解释字符串。
指示代理关闭与 Erlang 进程 ID connectionpid 关联的连接(另请参阅
list_connections命令),并将 explanation 字符串作为 AMQP 连接关闭协议的一部分传递给已连接的客户端。例如,此命令指示 RabbitMQ 代理关闭与 Erlang 进程 ID "<rabbit@tanto.4262.0>" 关联的连接,并将解释 "go away" 传递给已连接的客户端。
rabbitmqctl close_connection "<rabbit@tanto.4262.0>" "go away"
杂项
evalexpression在目标节点上评估 Erlang 表达式。
队列操作
插件命令
RabbitMQ 插件可以在启用时扩展 rabbitmqctl 工具以添加新命令。当前可用的命令可以在 rabbitmqctl help 输出中找到。以下命令由 RabbitMQ 插件添加,并在默认发行版中可用。
Shovel 插件
Federation 插件
AMQP 1.0 插件
list_amqp10_connections[amqp10_connectioninfoitem ...]与
list_connections命令类似,但返回对 AMQP-1.0 连接有意义的字段。amqp10_connectioninfoitem 参数用于指示在结果中包含哪些连接信息项。结果中的列顺序将与参数的顺序匹配。amqp10_connectioninfoitem 可以取以下列表中的任何值。pid- 与连接关联的 Erlang 进程的 ID。
auth_mechanism- 使用的 SASL 身份验证机制,例如 "PLAIN"。
host- 通过反向 DNS 获取的服务器主机名,或者如果反向 DNS 失败或关闭,则为其 IP 地址。
frame_max- 最大帧大小(字节)。
timeout- 连接超时 / 协商的心跳间隔(秒)。
user- 与连接关联的用户名。
state连接状态;以下之一:
starting
waiting_amqp0100
securing
running
blocking
blocked
closing
closed
recv_oct- 接收的字节数。
recv_cnt- 接收的数据包数。
send_oct- 发送的字节数。
send_cnt- 发送的数据包数。
ssl- 指示连接是否使用 SSL 保护的布尔值。
ssl_protocol- SSL 协议(例如 "tlsv1")。
ssl_key_exchange- SSL 密钥交换算法(例如 "rsa")。
ssl_cipher- SSL 密码算法(例如 "aes_256_cbc")。
ssl_hash- SSL 哈希函数(例如 "sha")。
peer_cert_subject- 对等方的 SSL 证书主题,以 RFC4514 格式表示。
peer_cert_issuer- 对端的 SSL 证书颁发者,采用 RFC4514 格式。
peer_cert_validity- 对端 SSL 证书有效的时期。
node- 连接建立到的 RabbitMQ 节点的节点名称。
MQTT 插件
list_mqtt_connections[mqtt_connectioninfoitem]与
list_connections命令类似,但返回对 MQTT 连接有意义的字段。mqtt_connectioninfoitem 参数用于指示在结果中包含哪些连接信息项。结果中的列顺序将与参数的顺序匹配。mqtt_connectioninfoitem 可以取以下列表中的任何值。host- 通过反向 DNS 获取的服务器主机名,或者如果反向 DNS 失败或关闭,则为其 IP 地址。
port- 服务器端口。
peer_host- 通过反向 DNS 获取的对端主机名,或者如果反向 DNS 失败或未启用,则为其 IP 地址。
peer_port- 对端端口。
protocolMQTT 协议版本,可以是以下之一:
{'MQTT', N/A}
{'MQTT', 3.1.0}
{'MQTT', 3.1.1}
channels- 使用该连接的通道数量。
channel_max- 此连接上的最大通道数。
frame_max- 最大帧大小(字节)。
client_properties- 客户端在连接建立期间传输的信息属性。
ssl- 指示连接是否使用 SSL 保护的布尔值。
ssl_protocol- SSL 协议(例如 "tlsv1")。
ssl_key_exchange- SSL 密钥交换算法(例如 "rsa")。
ssl_cipher- SSL 密码算法(例如 "aes_256_cbc")。
ssl_hash- SSL 哈希函数(例如 "sha")。
conn_name- 连接的可读名称。
connection_state连接状态;以下之一:
starting
running
blocked
connection- 与内部 amqp 直接连接关联的 Erlang 进程的 ID。
consumer_tags- QOS0 和 QOS1 的消费者标签元组。
message_id- 在控制消息中发送的最后一个 Packet ID。
client_id- 连接的 MQTT 客户端标识符。
clean_sess- MQTT 清理会话标志。
will_msg- 在 CONNECT 帧中发送的 MQTT Will 消息。
exchange- 在 rabbitmq_mqtt application 环境中配置的用于路由 MQTT 消息的交换机。
ssl_login_name- SSL 对等证书认证名称。
retainer_pid- 与连接的保留存储关联的 Erlang 进程的 ID。
user- 与连接关联的用户名。
vhost- 虚拟主机名称,其中非 ASCII 字符已像 C 语言一样进行转义。
decommission_mqtt_node在禁用插件的节点或从集群中移除节点之前,必须将其退役。
例如,此命令将移除节点 rabbit@stringer。
rabbitmqctl decommission_mqtt_node rabbit@stringer
STOMP 插件
list_stomp_connections[stomp_connectioninfoitem]与
list_connections命令类似,但返回对 STOMP 连接有意义的字段。stomp_connectioninfoitem 参数用于指示在结果中包含哪些连接信息项。结果中的列顺序将与参数的顺序匹配。stomp_connectioninfoitem 可以取以下列表中的任何值。conn_name- 连接的可读名称。
connection- 与内部 amqp 直接连接关联的 Erlang 进程的 ID。
connection_state连接状态;以下之一:
running
blocking
blocked
session_id- STOMP 协议会话标识符。
channel- 与连接关联的 AMQP 通道。
version- 为连接协商的 STOMP 协议版本。
implicit_connect- 指示连接是否使用隐式连接(无 CONNECT 帧)建立。
auth_login- 连接的有效用户名。
auth_mechanismSTOMP 授权机制。可以是以下之一:
config
ssl
stomp_headers
port- 服务器端口。
host- 服务器主机名,通过反向 DNS 获取,如果反向 DNS 失败或未启用,则为主机的 IP 地址。
peer_port- 对端端口。
peer_host- 通过反向 DNS 获取的对端主机名,或者如果反向 DNS 失败或未启用,则为其 IP 地址。
protocolSTOMP 协议版本,可以是以下之一:
{'STOMP', 0}
{'STOMP', 1}
{'STOMP', 2}
channels- 使用该连接的通道数量。
channel_max- 此连接上的最大通道数。
frame_max- 最大帧大小(字节)。
client_properties- 客户端在连接期间传输的信息属性。
ssl- 指示连接是否使用 SSL 保护的布尔值。
ssl_protocol- TLS 协议(例如 "tlsv1")。
ssl_key_exchange- TLS 密钥交换算法(例如 "rsa")。
ssl_cipher- TLS 密码算法(例如 "aes_256_cbc")。
ssl_hash- SSL 哈希函数(例如 "sha")。
管理代理插件
另请参阅
rabbitmq-diagnostics(8), rabbitmq-plugins(8), rabbitmq-server(8), rabbitmq-queues(8), rabbitmq-streams(8), rabbitmq-upgrade(8), rabbitmq-service(8), rabbitmq-env.conf(5), rabbitmq-echopid(8)
作者
The RabbitMQ Team <contact-tanzu-data.pdl@broadcom.com>