Change Data Capture platform example using MySQL, Maxwell, Kafka, Storm and Elasticsearch.
I assume you have locally installed storm, docker-machine, docker-compose and MySQL running on port 3306.
docker-machine create --driver virtualbox --virtualbox-memory 4096 --virtualbox-cpu-count 2 cluster-cdc
MYSQL_HOST=10.0.2.2 MYSQL_PORT=3306 MYSQL_USER=root MYSQL_PASSWORD=root ADVERTISED_HOST=$(docker-machine ip cluster-cdc) docker-compose up
To manage java versions I use jenv.
jenv local 1.6
jenv exec mvn package -DskipTests=true
The example topology works in a pass through mode, where you can easily plug in and experiment with custom analysis and data format manipulation.
jenv exec storm jar target/cdc-topology-1.0.0-jar-with-dependencies.jar cdc.storm.KafkaEsTopology KafkaEs -c nimbus.host=$(docker-machine ip cluster-cdc) -c nimbus.thrift.port=49627
open http://$(docker-machine ip cluster-cdc):49080
open http://$(docker-machine ip cluster-cdc):5601
docker-machine stop cluster-cdc