You can find the original 'README' at Burrow.
- Remove Notifier and Zookeeper - do not need
Notifier
andZookeeper
settings - Fix SASL Bug: set
sasl.handshake-first
totrue
- Add SASL Mechanisms: PLAIN, OAUTHBEARER, GSSAPI
- Our docker image is available through the Docker Hub repository. You can run a burrow in a few simple steps.
- First you need to create a new configuration file 'burrow.yaml', we recommend the yaml format.
- You can run the
Burrow
with the following command.
docker run -p 8000:8000 -v ./burrow.yaml:/etc/burrow/burrow.yaml spitharepo/burrow:latest
Burrow is written in Go, so before you get started, you should install and set up Go. As the dependencies are managed using Go module, the lowest version of Go supported is 1.11, though we recommend using version 1.12 for development.
$ Clone github.com/linkedin/Burrow to a directory outside of $GOPATH. Alternatively, you can export GO111MODULE=on to enable Go module.
$ cd to the source directory.
$ go mod tidy
$ go install
$ $GOPATH/bin/Burrow --config-dir /path/containing/config
A Docker file is available which builds this project on top of an Alpine Linux image.
To use it, build your docker container, mount your Burrow configuration into /etc/burrow
and run docker.
A Docker Compose is also available for quick and easy development.
Install Docker Compose and then:
-
Build the docker container:
docker-compose build
-
Run the docker compose stack which includes kafka and zookeeper:
docker-compose down; docker-compose up
-
Some test topics have already been created by default and Burrow can be accessed on
http://localhost:8000/v3/kafka
.
For information on how to write your configuration file, check out the detailed wiki
- PLAIN
sasl:
my-kafka:
mechanism: PLAIN
username: client
password: client-secret
- SCRAM
sasl:
my-kafka:
mechanism: SCRAM-SHA-512
username: client
password: client-secret
- OAUTHBEARER
sasl:
my-kafka:
mechanism: OAUTHBEARER
clientId: client
clientSecret: client-secret
tokenEndpoint: http://.../realms/my-kafka/protocol/openid-connect/token
- GSSAPI
sasl:
my-kafka:
mechanism: GSSAPI
servicename: kafka
realm: mydomain.com
username: client
keytabPath: keytab/client.keytab
kerberosConfigPath: /etc/krb5.conf
disablePAFXFAST: fasle
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.