上章节介绍了vhost 级别的运行时参数怎样通过 rabbitmqctl 和 HTTP API 进行设置,本章将介绍怎样去设置 global 级别的运行时参数。
与 vhost 级别类似,global 级别的运行时参数也可以通过 rabbitmqctl 命令和 HTTP API 进行设置。
改名了用来设置一个 global 级别的运行时参数,命令格式:
rabbitmqctl set_global_parameter name value
示例:设置一个名为 test 的 global 级别的运行时参数
D:\server\rabbitmq_server-3.9.11\sbin> rabbitmqctl set_global_parameter test "{}" Setting global runtime parameter "test" to "{}" ...
该命令用来列出所有 global 级别的运行时参数,命令格式:
rabbitmqctl list_glbal_parameters
示例:
D:\server\rabbitmq_server-3.9.11\sbin> rabbitmqctl list_global_parameters Listing global runtime parameters ... name value test [] cluster_name "hello@hxstrive" internal_cluster_id "rabbitmq-cluster-id-H1p37LXd_IqU1MxV_T2PdA"
该命令用来清除指定名称的 global 级别运行时参数,命令格式:
rabbitmqctl clear_global_parameter name
示例:清理上面设置的名为 test 的 global 级别运行时参数
# 清理 test 运行时参数 D:\server\rabbitmq_server-3.9.11\sbin> rabbitmqctl clear_global_parameter test Clearing global runtime parameter "test" ... # 列出所有 global 运行时参数,名为 test 的参数已经被删除 D:\server\rabbitmq_server-3.9.11\sbin> rabbitmqctl list_global_parameters Listing global runtime parameters ... name value cluster_name "hello@hxstrive" internal_cluster_id "rabbitmq-cluster-id-H1p37LXd_IqU1MxV_T2PdA"
使用 HTTP 的 PUT 方法访问 /api/global-parameters/name 接口,设置一个 global 级别运行时参数。下面将演示,怎样通过 postman 通过调用该接口添加一个名为 test 的 global 级别运行时参数。如下图:
注意:调用接口的正文内容格式如下:
{"name":"user_vhost_mapping","value":{"guest":"/","rabbit":"warren"}}
其中,value 对应的就是参数的值,必须是一个 JSON 格式。
调用该接口也是需要授权的,采用 HTTP 基础授权方式进行授权,postman 授权方式如下:
使用 HTTP 的 DELETE 方法访问 /api/global-parameters/name 接口,清除 global 级别运行时参数。例如:清除上面刚刚设置的名为 test 的 global 级别运行时参数。如下图:
使用 HTTP 的 GET 方法访问 /api/global-parameters 接口,获取 global 级别运行时参数。例如:
(1)获取所有 global 级别的运行时参数,接口地址为:
http://127.0.0.1:15672/api/global-parameters
运行效果如下图:
(2)获取指定名称的 global 级别运行时参数,例如:获取名为 test 的 global 级别运行时参数,接口地址为:
http://127.0.0.1:15672/api/global-parameters/test
运行效果如下图: