Pulsarctl
A CLI tool for the Apache Pulsar project.
Requirement
Usage
Prerequisite
If you have not installed Go, install it according to the installation instruction.
Since the go mod
package management tool is used in this project, Go 1.11 or higher version is required.
Install
- Clone the project from GitHub to your local.
git clone https://github.com/streamnative/pulsarctl.git
- Use
go mod
to get the dependencies needed for the project.
go mod download
After entering the go mod download
command, if some libs can not be downloaded, then you can download them by referring to the proxy provided by GOPROXY.io.
Build
export GO111MODULE=on
go build -o pulsarctl main.go
Project Status
The following is an incomplete list of features that are not yet implemented:
Functions
Sources
- localrun
- available-sources
- reload
Sinks
- localrun
- available-sources
- reload
Schemas
Namespaces
- delete-bookie-affinity-group
- get-bookie-affinity-group
- set-bookie-affinity-group
Bookies
- racks-placement
- get-bookie-rack
- delete-bookie-rack
- set-bookie-rack
Different With Java Pulsar Admin
We move the subscription commands from the Topics to the Subscriptions in pulsarctl.
pulsar-admin |
pulsarctl |
bin/pulsar-admin topics create-subscription |
pulsarctl subscription create |
bin/pulsar-admin topics unsubscribe |
pulsarctl subscription delete |
bin/pulsar-admin topics skip |
pulsarctl subscription skip |
bin/pulsar-admin topics expire-messages |
pulsarctl subscription expire |
bin/pulsar-admin topics peek-messages |
pulsarctl subscription peek |
bin/pulsar-admin topics reset-cursor |
pulsarctl subscription seek |
bin/pulsar-admin topics subscriptions |
pulsarctl subscription list |
Contribute
Contributions are welcomed and greatly appreciated.
For more information about how to submit a patch and the contribution workflow, see CONTRIBUTING.md.
License
Licensed under the Apache License Version 2.0: http://www.apache.org/licenses/LICENSE-2.0