uber-archive / cherami-server

Distributed, scalable, durable, and highly available message queue system. This project is deprecated and not maintained.
https://eng.uber.com/cherami/
MIT License
1.42k stars 102 forks source link

Unable to Create Cluster Within Docker Compose #270

Closed doodle-tnw closed 7 years ago

doodle-tnw commented 7 years ago

I'm trying to start cherami-server in a simple cluster, with an external cassandra and each node running every component.

However when running I get this error

time="2017-08-09T20:40:54Z" level=error msg="RingPop GetHosts failed" ctrlID=c2a42453 deploymentName= err="Not enough hosts to serve the request" module=extentMon
time="2017-08-09T20:41:12Z" level=error msg="Can't talk to Controller service, no hosts found" deploymentName= destID=c58c2988-82b9-4b2b-8094-c05eaeac1b33 dstPth="/healthcheck/healthcheck" err="Not enough hosts to serve the request" frntID=1d5c9c1e

A single node works as expected.

My config looks like this:

DefaultServiceConfig:
  ListenAddress: "172.22.0.3"
  RingHosts: "cherami-1,cherami-2,cherami-3"

DefaultDestinationConfig:
  Replicas: 1

MetadataConfig:
  CassandraHosts: "cassandra"

StorageConfig:
  BaseDir: /var/lib/cherami-store
  HostUUID: "afe6c579-e79c-4da7-b56b-dcbdb66ec6b0"

logging:
  level: info
  stdout: true

With the ListenAddress pointing to the correct ip of each node, RingHosts point to the DNS names for each node and each HostUUID is unique.

Can you see what I am doing wrong?

Cheers!

doodle-tnw commented 7 years ago

Ah seems the Ringhosts require a port to be specified. Can it handle DNS A records like behind a kubernetes service?