cancel
Showing results for 
Search instead for 
Did you mean: 

Head's Up! These forums are read-only. All users and content have migrated. Please join us at community.neo4j.com.

Amazon Community AMI: Service Unavailable: Websocket Connection Failure

njho
Node Link

Hi!

Currently trying to launch the Community AMI with Neo4j browser v3.2.10 & Neo4j 3.4.9. I am using Google Chrome to access the browser. I'm receiving the following error:

ServiceUnavailable: WebSocket connection failure. Due to security constraints in your web browser, the reason for the failure is not available to this Neo4j Driver. Please use your browsers development console to determine the root cause of the failure. Common reasons include the database being unavailable, using the wrong connection URL or temporary network problems. If you have enabled encryption, ensure your browser is configured to trust the certificate Neo4j is configured to use. WebSocket readyState is: 3

Solutions Tried as suggested from Troubleshooting Connection Issues to Neo4j:

  1. Follow directions for your browser to trust the server's certificate for the bolt port, and then refresh the page.
    http://ec2-54-xxx-xxx-111.compute-1.amazonaws.com:7687/ on Chrome returns: not a WebSocket handshake request: missing upgrade, and there is not an option to trust this certificate.
  2. Use Google Chrome
    Currently using Google Chrome - Does not work
  3. Set dbms.connector.bolt.tls_level=OPTIONAL in your neo4j config.
    Updating this and, dbms.connector.bolt.address=0.0.0.0:7687 did not seem to correct the issue after changing neo4j.template in /etc/neo4j/
  4. Security Groups should be good as per the following:

Is acquiring an SSL Certificate currently the only way to get running?
Curious what the best option is to get going. Thanks

2 REPLIES 2

I'm not sure about this particular error not a WebSocket handshake request: missing upgrade but I'll look into it.

You have several options on how to proceed:

  1. Install an SSL cert. You can follow these instructions to do that, it's not too difficult.
  2. Use HTTP and not HTTPs on port 7474 instead of 7473. Be aware this will mean you're passing username/password unencrypted back and forth to the cloud instance.
  3. Use cypher-shell rather than the driver built into the web browser. This should work because it's not based on websockets and doesn't have to respect the browser's security model.

Installing the SSL cert worked. Thanks!