目前你可以通过以下方式使用管理接口:
- 使用HTTP调用Pulsar broker提供的管理 API。 For some restful apis, they might be redirected to topic owner brokers for serving with , hence the HTTP callers should handle
307 Temporary Redirect
. If you are usingcurl
, you should specify-L
to handle redirections. pulsar-admin
CLI工具,它在目录的bin
文件夹中:
这个工具的完整文档你可以在Pulsar 命令行工具中找到。
- Java客户端接口。
Pulsar的三种接口 [`pulsar-admin<0>CLI工具,java管理API, API 中的每一种—-需要一些特殊的设置,如果你在Pulsar 实例中开启了。
如果启用了 身份验证, 则需要提供一个授权配置以使用 工具。 默认情况下,的配置文件在conf/client.conf
](/docs/zh-CN/2.5.2/reference-configuration#client)文件中。 以下是可用参数:``
Java 管理客户端
要使用 Java 管理 API,需实例化一个 PulsarAdmin 对象,为 Pulsar 和 ClientConfiguration 指定一个URL。 下面是一个使用 localhost
的最小示例:
// Pass auth-plugin class fully-qualified name if Pulsar-security enabled
String authPluginClassName = "com.org.MyAuthPluginClass";
// Pass auth-param if auth-plugin class requires it
String authParams = "param1=value1";
boolean tlsAllowInsecureConnection = false;
PulsarAdmin admin = PulsarAdmin.builder()
.authentication(authPluginClassName,authParams)
.serviceHttpUrl(url)
.tlsTrustCertsFilePath(tlsTrustCertsFilePath)
.allowTlsInsecureConnection(tlsAllowInsecureConnection)
If you have multiple brokers to use, you can use multi-host like Pulsar service. For example,
String url = "http://localhost:8080,localhost:8081,localhost:8082";
// Pass auth-plugin class fully-qualified name if Pulsar-security enabled
String authPluginClassName = "com.org.MyAuthPluginClass";
// Pass auth-param if auth-plugin class requires it
String authParams = "param1=value1";
boolean useTls = false;
boolean tlsAllowInsecureConnection = false;
String tlsTrustCertsFilePath = null;
PulsarAdmin admin = PulsarAdmin.builder()
.authentication(authPluginClassName,authParams)
.serviceHttpUrl(url)
.tlsTrustCertsFilePath(tlsTrustCertsFilePath)
.allowTlsInsecureConnection(tlsAllowInsecureConnection)
.build();
``