问题
Cloudant local data edition version : 1.0.0.3
Linux distribution and version : centos 6.6
I recently installed Cloudant local data edition , configured it properly on 4 node cluster(1 load balancer and 3 data nodes). everything looked fine then fired some curl command to create , retrieve and delete databases but got internal_server_error. When i launched cloudant dashboard and got entered as admin , the specified operation actually was occuring but on terminal i got error messages.
Command Snippet
[root@******1983 etc]# curl -X GET -u admin:**** http://*******/_all_dbs
["_users","first_data","first_testing_database","metrics","metrics_app","new","stats","t1","t_alpha"]
[root@******1983 etc]# curl -X GET -u admin:**** http://********/t_alpha
{"error":"error","reason":"internal_server_error",}
[root@******1983 etc]# curl -X DELETE -u admin:**** http://********/t_alpha
{"error":"error","reason":"internal_server_error",}
i used the instructions to use the Weatherreport utility to check the health of my Cloudant cluster. i set the path using export command: export PATH=$PATH:/opt/cloudant/bin then run weatherreport but it says "could not connect to local cluster node". i have given full address of my all 4 nodes in /etc/hosts , /etc/sysconfig/network , /etc/resolve.conf
command snippet
[root@******** etc]# /opt/cloudant/bin/weatherreport
['cloudant_diag3989@******** #'] [warning] Could not connect to the local cluster node 'cloudant@********#', some checks will not run.
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_tcp_queues: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_search: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_safe_to_rebuild: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_process_memory: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_process_calls: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_nodes_connected: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_node_stats: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_message_queues: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_memory_use: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_membership: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_mem3_sync: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_ioq: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_internal_replication: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_disk: nodedown
['cloudant_diag3989@******** #'] [crit] Bad rpc call executing check weatherreport_check_custodian: nodedown
回答1:
Cloudant Local uses the FQDN to communicate between nodes. Please ensure you have the correct FQDN and corresponding IP address for all nodes in /etc/hosts on ALL nodes (load balancer and DB nodes).
i.e.
192.168.0.10 lb1.cloudant.local lb1
192.168.0.11 db1.cloudant.local db1
192.168.0.12 db2.cloudant.local db2
192.168.0.13 db3.cloudant.local db3
/etc/resolv.conf (not resolve.conf ^^) should (only) contain your DNS IP address(es) on all nodes.
i.e.
nameserver 192.168.0.1
nameserver 8.8.4.4
AFAIK, /etc/sysconfig/network only applies to Debian/Ubuntu and contains network info for the local machine only.
回答2:
Check /opt/cloudant/etc/vm.args file. You have set incorrect -name parameter with machine name. This is clear from error message
"Could not connect to the local cluster node 'cloudant@********#'.
Here extra # is present at the end of machine name.
来源:https://stackoverflow.com/questions/35603111/cloudant-internal-server-error