trivup is a flexible, pluggable, light-weight, partly naiivistic, framework for trivially bringing up a cluster of applications.
The initial use-case is to bring up a simple Kafka cluster for easily testing librdkafka on different broker versions.
SECURITY WARNING: trivup will run unprotected, wide-open, poorly-configured, server applications on your machine, providing an ingress vector for intrusion, theft and data-loss. DO NOT RUN ON PUBLIC NETWORKS.
To spin up a Kafka cluster with Confluent Schema-Registry:
$ python3 -m trivup.clusters.KafkaCluster --version 3.1.0 --sr
--help for more options.
A sub-shell will be started with access to all cluster components, try:
$KAFKA_PATH/bin/kafka-topics.sh --zookeeper $ZK_ADDRESS \ --create --topic test --partitions 4 --replication-factor 3 kafkacat -b $BROKERS -L
As you exit the sub-shell the cluster will be brought down and deleted:
See tests/test_KafkaCluster.py for a code example.
pip install -r requirements.txt
To bootstrap your Ubuntu/Debian system with the required packages, do:
$ make bootstrap-ubuntu # or, to also install krb5-kdc and docker: $ make bootstrap-ubuntu-full
Set TRIVUP_ROOT=~/trivup-cache (or wherever you like) to define where trivup will have its working directory and where downloads are cached.