Honeybee is a distributed YouTube live chat and moderation events collector.
- Fetch streams index from Holodex (every 10 minutes)
- Queue newly scheduled streams to a job pool
- One of the cluster members takes it and start collecting events
cp .env.placeholder .env
vim .env
docker swarm init --advertise-addr $(curl -s https://api.ipify.org)
docker network create -d overlay --attachable honeybee
docker stack deploy -c cluster.yml hb
# in master node
make logindb
db.createUser({
user: "worker",
pwd: passwordPrompt(), // or cleartext password
roles: [{ role: "readWrite", db: "honeybee" }],
});
sed -i "s/MONGO_WORKER_PASSWORD=/MONGO_WORKER_PASSWORD=<password>/" .env
make health
cd tf
terraform init
terraform apply -var total_workers=5
cd tf
terraform destroy
./hb --help