如何查看YugabyteDB中的yb-tserver黑名单?是否支持通过yb-admin工具或API实现?
嘿,这个问题问得很实用!针对你想查询YugabyteDB中已加入黑名单的yb-tserver列表的需求,还有关于yb-admin工具是否支持该操作的疑问,我整理了具体的解决方法:
1. 用yb-admin工具直接查看黑名单列表
当然可以用yb-admin工具来查看!这是最直接的命令行方式,具体命令如下:
yb-admin list_blacklisted_tservers
如果你的Master节点不是默认本地地址,需要指定任意一个Master节点的地址:
yb-admin --master_addresses <master-ip>:7100 list_blacklisted_tservers
执行后,命令会直接输出黑名单中所有yb-tserver的UUID和对应的网络地址,格式大概像这样:
Blacklisted tservers:
- UUID: xxx-xxx-xxx, Address:
:9100
2. 通过Master HTTP API获取黑名单数据
如果你需要用程序或脚本自动化获取这个列表,可以调用YugabyteDB Master节点的HTTP API。具体的API端点是:
http://<master-ip>:7000/blacklist
用curl请求的例子:
curl http://<master-ip>:7000/blacklist
返回的是JSON格式的数据,示例如下:
{ "blacklisted_nodes": [ { "node_uuid": "xxx-xxx-xxx", "node_address": "<tserver-ip>:9100" } ] }
额外小提示
顺带提一下相关的黑名单管理命令,方便你后续操作:
- 将某个tserver加入黑名单:
yb-admin blacklist_tserver <tserver-uuid-or-address> - 将某个tserver移出黑名单:
yb-admin remove_from_blacklist <tserver-uuid-or-address>
内容的提问来源于stack exchange,提问作者dh YB




