You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 7, 2020. It is now read-only.
Able to specify a network interface in env var, then start.sh or cluster.sh uses the specified network to resolve the default IP into $LOCAL_IP.
devOps should be able to dynamically allocate EMQ_HOST or EMQ_NODE__NAME in a deterministic way, since Docker services with multiple networks will attach interfaces in random order.
Justification
With multiple networks attached, the current way to get LOCAL_IP in start.sh is not deterministic; While IP is generated after the container is spawn.
Workarounds
Are there any workarounds you currently have in place because the feature is missing?
In short, no.
The overlay network address is load balanced and cannot resolve single nodes, individual nodes spawned need a way to resolve their own unique address correctly, especially when there are more than one interface and/or IP available.
The text was updated successfully, but these errors were encountered:
What cluster should I join? DNS name, elb end point, or others?
Second, the note for cluster
Note: You must publsh port 4369 and range of port 6000-6999 for EMQ Clustered.
So does it mean I have to open multiple port , 4369 and 6000-6999 on elb ? Currently aws elb doesn't support to listen multiple ports. I have to set the port redirection one by one
@ozbillwang Not sure if you're spawning them in docker swarm. If so, ELB may not be able to route inside the swarm ingress network. You could either use host networking for your containers, or spin up something like Traefik to route external connections from ELB to container IP's or service networks.
Make sure you read and understand http://emqtt.io/docs/v2/index.html.
Use one of the two templates below and delete the rest.
Missing feature
Able to specify a network interface in env var, then
start.sh
orcluster.sh
uses the specified network to resolve the default IP into$LOCAL_IP
.devOps should be able to dynamically allocate
EMQ_HOST
orEMQ_NODE__NAME
in a deterministic way, since Docker services with multiple networks will attach interfaces in random order.Justification
With multiple networks attached, the current way to get
LOCAL_IP
instart.sh
is not deterministic; While IP is generated after the container is spawn.Workarounds
Are there any workarounds you currently have in place because the feature is missing?
In short, no.
The overlay network address is load balanced and cannot resolve single nodes, individual nodes spawned need a way to resolve their own unique address correctly, especially when there are more than one interface and/or IP available.
The text was updated successfully, but these errors were encountered: