Skip to content

Instantly share code, notes, and snippets.

@PeterCorless
Last active May 16, 2019 21:29
Show Gist options
  • Save PeterCorless/207dafb62ae72aa3c6c00617bfeff3bc to your computer and use it in GitHub Desktop.
Save PeterCorless/207dafb62ae72aa3c6c00617bfeff3bc to your computer and use it in GitHub Desktop.
scylla-kafka-akka-mqtt-blog
tar -xzf confluent-5.0.0-2.11.tar.gz
cd confluent-5.0.0/
$ export PATH="$PATH:/YOUR_LOCAL_PATH_TO_BINARIES/confluent-5.0.0/bin"
$confluent start kafka
$bin/zookeeper-server-start ./etc/kafka/zookeeper.properties
$bin/kafka-server-start ./etc/kafka/server.properties
topic.regex.list=temperature:.*temperature, brightness:.*brightness
listeners=0.0.0.0:1883
bootstrap.servers=PLAINTEXT://localhost:9092
confluent.topic.replication.factor=1
$bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic temperature
$bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic brightness
$bin/kafka-mqtt-start kafka-mqtt-dev.properties
$brew install mosquitto
$brew link mosquitto
$mosquitto_pub -h 0.0.0.0 -p 1883 -t car/engine/temperature -q 2 -m "190F"
$mosquitto_pub -h 0.0.0.0 -p 1883 -t car/engine/temperature -q 2 -m "200F"
$mosquitto_pub -h 0.0.0.0 -p 1883 -t car/engine/temperature -q 2 -m "210F"
$kafka-console-consumer --bootstrap-server localhost:9092 \
--topic temperature \
--property print.key=true \
--from-beginning
while true; do echo $(( $RANDOM % (231-180) + 180)); sleep .2; done | \
mosquitto_pub -h 0.0 .0.0 -p 1883 -t car/engine/temperature -q 2 -l
$git clone https://github.com/scylladb/scylla-code-samples/
$cd gce_deploy_and_install_scylla_cluster
$./gce_deploy_and_install_scylla_cluster.sh -t n1-standard-16 -n -c5 -v2.3
$cd /confluent-5.0.0/config
$touch cassandra-sink.properties
$vi cassandra-sink.properties
#Connector `cassandra-sink`:
name=cassandra-sink
connector.class=com.datamountaineer.streamreactor.connect.cassandra.sink.CassandraSinkConnector
tasks.max=1
topics=temperature
connect.cassandra.kcql=INSERT INTO temperature SELECT * FROM temperature
connect.cassandra.contact.points=<IP1>,<IP2> (public IP addresses SCYLLA nodes)
connect.cassandra.port=9042
connect.cassandra.key.space=demo
connect.cassandra.username=cassandra
connect.cassandra.password=cassandra
connect.progress.enabled=true
#task ids: 0
$cd /confluent-5.0.0/lib
$wget https://github.com/Landoop/stream-reactor/releases/download/1.1.0/stream-reactor-1.1.0-1.1.0.tar.gz
$tar -xzf stream-reactor-1.1.0-1.1.0.tar.gz
$connect-distributed etc/schema-registry/connect-avro-distributed.properties
$cd /confluent-5.0.0/config
$java -jar kafka-connect-cli-0.6-all.jar create cassandra-sink < cassandra-sink.properties
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment