ullala is a demo that showcase using kafka as a data pipeline and log aggregation through the ELK stack
- Download kafka command line tools:
scripts/download-kafka.sh
- Run Kafka, Zookeeper, Elasticsearch and Logstash:
docker-compose up
- Set kafka on your host file to point to the running kafka instance (docker-machine ip default on mac)
- Setup topics
scripts/setup-topics.sh
- Install OpenCV for capturer,
brew install opencv
on mac. - Symlink opencv into capturer, for mac you can run
scripts/symlink-opencv-bew.sh
- Install capturer dependencies
pip install -r capturer/requirements.txt
- Run Capturer:
KAFKA_HOSTS=KAFKA:9092 capturer/capturer.py
- Install processor dependencies
cd processor && npm insall
- Run processor:
cd processor && KAFKA_HOSTS=kafka:9092 node index.js
- Install pusher dependencies
cd pusher && npm install
- Run pusher `cd pusher && KAFKA_HOSTS=kafka:9092 node index.js