Closed rajendra-t closed 1 year ago
This is probably wrongly set SPLINE_CONSUMER_URL
this url must be accessible from the browser where you are opening the ui. It is used by javascript running in the browser.
I was looking at the following URL and I see below error.
curl -L http://hostIP:8529
class="offline-header">
The connection to the server has bee n lost. The server may be under heavy load.
Trying to reconnect in 10 seconds.
<but ton class="button-success">Reconnect now
I guess you are dealing with several independent problems.
"Server is unavailable" message on the Spline UI.
As Adam explained, please check the value of the SPLINE_CONSUMER_URL
config variable that you provide to the Spline Web-UI container. That URL should be the same as the Consumer URL on the Spline Gateway index page:
But make sure that that URL is accessible from your Spline user browser, as the Spline UI page connects to it directly from the browser.
curl -L http://hostip:8529/
- Here you connect to the ArangoDB UI. It doesn't have to be accessible from the outside of the docker or k8s network. But if you receive an HTML page that complains about the database server connection issue then there is indeed an issue. Make sure your ArangoDB cluster is working correctly. Please consult ArangoDB documentation.
Thanks for the feedback, step #1 error is due to Step 2 not working. I have used the following command to start the docker container for arangodb and container is running however it is not available due to heavy load as you can see in the error message.
sudo sysctl -w "vm.max_map_count=512000" sudo bash -c "echo madvise > /sys/kernel/mm/transparent_hugepage/enabled" sudo bash -c "echo madvise > /sys/kernel/mm/transparent_hugepage/defrag" sudo docker run -p 8529:8529 -e ARANGO_NO_AUTH=1 arangodb/arangodb:3.8.4
Error message when we do - curl -L http://localhost:8529
You have been disconnected from the server
The connection to the server has bee n lost. The server may be under heavy load.
Trying to reconnect in 10 seconds.
Reconnect now< I am using UbuntuServer 18_04-lts-gen2 VM to install above, I could not find much information from arangodb documentation - can you please help if there is any changes to configuration is required?
Is there a heavy traffic? What's VM resources? Make sure the VM is given enough RAM. 1Gb+ is recommended. If you are using it for anything more serious than test/dev purpose then you need a cluster deployment.
I am using single node deployment on Azure VM (8cpu and 32gb memory ) Below Is the docker logs for the container, I don't see any issues with memory availability.
2022-07-30T14:25:50Z [1] INFO [25362] {memory} Available physical memory: 33672134656 bytes, available cores: 8
2022-07-30T14:25:50Z [1] INFO [144fe] {general} using storage engine 'rocksdb'
2022-07-30T14:25:50Z [1] INFO [3bb7d] {cluster} Starting up with role SINGLE
2022-07-30T14:25:50Z [1] INFO [f6e0e] {aql} memory limit per AQL query automatically set to 20203280793 bytes. to modify this value, please adjust the startup
option --query.memory-limit
2022-07-30T14:25:50Z [1] INFO [a1c60] {syscall} file-descriptors (nofiles) hard limit is 1048576, soft limit is 1048576
2022-07-30T14:25:50Z [1] INFO [fe333] {engines} RocksDB recovery starting, scanning WAL starting from sequence number 44
2022-07-30T14:25:50Z [1] INFO [a4ec8] {engines} RocksDB recovery finished, WAL entries scanned: 65, max tick found in WAL: 101, last HLC value: 17397880178197
13536
2022-07-30T14:25:50Z [1] INFO [c1b63] {arangosearch} ArangoSearch maintenance: [1..1] commit thread(s), [1..1] consolidation thread(s)
2022-07-30T14:25:50Z [1] INFO [6ea38] {general} using endpoint 'http+tcp://0.0.0.0:8529' for non-encrypted requests
2022-07-30T14:25:51Z [1] INFO [cf3f4] {general} ArangoDB (version 3.8.4 [linux]) is ready for business. Have fun!
I noticed one more error when I do Curl -L http://localhost:8529
I noticed one more error when I do Curl -L http://localhost:8529/
You need to enable JavaScript to run this app.
This is not an error, it just tells you that ArangoDB UI requires a JavaScript enabled browser to work properly, which curl
obviously is not.
Thanks @wajda for the feedback.
So with above I understand that since javascript error is coming due to curl - is that same reason for also message that shows "You have been disconnected from the server The connection to the server has bee
n lost. The server may be under heavy load.
Trying to reconnect in 10 seconds."
Based on the arangodb container logs that I shared earlier it is not giving any error and docker status is also shows running.
Is there any issues due to the way web UI connects to the consumer API? ( my error is similar to this post - https://github.com/AbsaOSS/spline/issues/980)
I see, F12 gives below information. my guess is Linux is not able to resolve localhost:8080 somehow
Forgot to share the screenshot earlier, I am getting below error in web UI
However REST gateway is running fine
It's impossible to tell what's the issue by looking at those screenshots. From the fact the issue is intermittent I can assume that is either performance related problem or your cluster/LB (if you use one) is not working correctly.
Thanks wajada, looks like this issue is with Load balancer and hence unable to make this work.
Instead I tried installing this on AKS, and there also I am stuck with 404 error while accessing the URL using Public / External IP
Do you have the steps to install ingress-nginx controller?
I am trying below
helm install \
ingress-nginx ingress-nginx/ingress-nginx \
--create-namespace --namespace ingress-nginx \
--set controller.ingressClass="nginx" \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-health-probe-request-path"=/healthz \
--set controller.service.externalTrafficPolicy=Local
The port forwarding to my local is working fine
Check the URL that you get 404 from. It has to be a valid IP to your Ingress, ClusterIP, NodePort or LoadBalancer
Check our helm charts here - https://github.com/AbsaOSS/spline-getting-started/tree/main/k8s/charts Please also check the following shell script to install Spline on K8S https://github.com/AbsaOSS/spline-getting-started/blob/main/k8s/charts/install-spline-on-k8s.sh
Note the commented lines 6 and 7:
# API=$(kubectl get svc -n ingress-nginx ingress-nginx-controller -o jsonpath="{.*.loadBalancer.ingress[*].hostname}")
# UI=$(kubectl get svc -n ingress-nginx ingress-nginx-extra-controller -o jsonpath="{.*.loadBalancer.ingress[*].hostname}")
You need to uncomment those when using ingress.
Hi Team, We have installed Spline UI / Server/ Kafka and Arango DB using the docker images provided into a VM. All the docker containers are running without error. Also the REST Gateway status is showing success in the http://hostIP:8080. However when we open the Spline UI using http://hostIP:9090 it is showing an error "Server is unavailable."
Below are the details of version of the server installed Version: 0.7.4 Build Revision: 90363b3 Build Date: 2022-03-08 Project Pages: https://absaoss.github.io/spline Copyright: © 2019 ABSA Group Limited License: Apache License, Version 2.0.
Can you please suggest what is the issue here?