Installation 4.16.05: apigee-validate fails (healthCheck); fixed by restarting routers; noticed by others?

Not applicable

After installing Apigee on a private cloud (Amazon) in a 4 node configuration, where:

  • node 1 contains: ui, management server, cassandra and zookeeper;
  • node 2 contains: router, message processor, cassandra and zookeeper;
  • node 3 contains: router, message processor, cassandra and zookeeper;
  • node 4 contains: qpid and postgresql

This configuration is tested by apigee-validate as is suggested in the installation guide 'ApigeeEdgePrivateCloud-Install-Config-Guide.pdf' by executing the following commands on node 1 (management server):

/opt/apigee/apigee-service/bin/apigee-service apigee-validate install
/opt/apigee/apigee-service/bin/apigee-service apigee-validate setup -f <configuration-file>

The setup-command fails in one of the last commands that will execute a call to an API-proxy:

curl -H "host: VALIDATE.apigee.com" http://<ip-router>:59001/v1/apigee/healthCheck

which is caused by the fact that the routers do not listen on port 59001. This is the case for both routers (node 2 and node 3).

This can be fixed by restarting the routers on node 2 and 3 by the following command:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Above command will now return "Ok" and the routers are listening on port 59001, which is tested by

nc -z <ip-router> 59001


My questions are: did any one else encounter this issue? Is it caused by my installation?

1 1 558
1 REPLY 1

Not applicable

I found that this is caused by the fact that edge-router is running as root and therefore some files will be created with root rights which causes that they are not able to be read by processes that run as 'apigee' (per example /opt/apigee/var/log/edge-router/nginx/VALIDATE~test.59001_error_log)

Why edge-router is running as root is next step in investigation.