Eventstore: Having trouble binding http prefixes with EC2

Created on 8 Mar 2015  路  11Comments  路  Source: EventStore/EventStore

Hello, my instance has a single private IP. I bind to that with --ext-ip=

The external IP of the instance routes to it internally.

When I bring up ES, I try to go to http://ec2-my-ip.compute-1.amazonaws.com:2113/

I see the error Bad Request (Invalid host) when I expect to see the web UI.

Please advise.

Most helpful comment

For anyone who stumbled on this - adding "--add-interface-prefixes=false" solved this for me:

./run-node.sh --ext-ip=10.0.0.175 --ext-http-port=2113 --ext-http-prefixes="http://*:2113/" --add-interface-prefixes=false

All 11 comments

Http Prefixes, and ensure you're binding to an interface that exists in ifconfig

Sent from my iPhone

Yes, I intended to add that in my original post but missed it. I try --http-prefixes=http://ec2-52-1-C-D.compute-1.amazonaws.com:2113/

It's when I add this that I get the error on the command line:

Exit reason: Http async server failed to start listening at [http://ec2-52-1-C-D.compute-1.amazonaws.com:2113/].

My command line is:

./run-node.sh --ext-ip=172.30.0.218 --ext-http-port=2113 --http-prefixes=http://ec2-52-1-14-98.compute-1.amazonaws.com:2113/

Error message is:

[01814,09,06:13:21.075] Starting HTTP server on [http://ec2-52-1-14-98.compute-1.amazonaws.com:2113/]...
[01814,09,06:13:21.083] Failed to start http server
The requested address is not valid in this context
[01814,09,06:13:21.097] Exiting with exit code: 1.
Exit reason: Http async server failed to start listening at [http://ec2-52-1-14-98.compute-1.amazonaws.com:2113/].

In this example, 52.1.14.98 is an Elastic IP.

Can you post the output of ifconfig? Something here definitely looks wrong - that config should be good.

ubuntu@ip-172-30-0-218:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 0a:7c:21:b0:6e:c3  
          inet addr:172.30.0.218  Bcast:172.30.0.255  Mask:255.255.255.0
          inet6 addr: fe80::87c:21ff:feb0:6ec3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:9001  Metric:1
          RX packets:404206 errors:0 dropped:0 overruns:0 frame:0
          TX packets:385325 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:56713357 (56.7 MB)  TX bytes:89136670 (89.1 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Can you try replacing your prefixes with --http-prefixes="http://*:2113"?

It works with the following command

./run-node.sh --ext-ip=172.30.0.218 --ext-http-port=2113 --http-prefixes="http://*:2113/"

Just a hunch (probably incorrect) - try --http-prefixes="--http-prefixes=http://ec2-52-1-14-98.compute-1.amazonaws.com:2113/"?

I'm guessing this resolved the issue?

Sorry to let this stagnate. I haven't been able to revisit the issue. So far I'm having a good experience with the suggestions, but haven't put up my EC2 instance since.

For anyone who stumbled on this - adding "--add-interface-prefixes=false" solved this for me:

./run-node.sh --ext-ip=10.0.0.175 --ext-http-port=2113 --ext-http-prefixes="http://*:2113/" --add-interface-prefixes=false
Was this page helpful?
0 / 5 - 0 ratings