Support Questions

Find answers, ask questions, and share your expertise

how to check by API that all hosts are are heart-beating

avatar

what is the API or other CLI to check that all hosts in the cluster are without heart-beat loss ?

Michael-Bronson
1 ACCEPTED SOLUTION

avatar
Master Mentor

@Michael Bronson

Something like this you can try:

# curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 host_state

.

OR

# curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 HEARTBEAT_LOST

OUTPUT
-------
        "host_name" : "hdfcluster4.example.com",
        "host_state" : "HEARTBEAT_LOST"

.

For healthy nodes we can grep like:

#   curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 HEALTHY

OUTPUT
-------
        "host_name" : "hdfcluster1.example.com",
        "host_state" : "HEALTHY"
--
        "host_name" : "hdfcluster2.example.com",
        "host_state" : "HEALTHY"
--
        "host_name" : "hdfcluster3.example.com",
        "host_state" : "HEALTHY"

.

View solution in original post

1 REPLY 1

avatar
Master Mentor

@Michael Bronson

Something like this you can try:

# curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 host_state

.

OR

# curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 HEARTBEAT_LOST

OUTPUT
-------
        "host_name" : "hdfcluster4.example.com",
        "host_state" : "HEARTBEAT_LOST"

.

For healthy nodes we can grep like:

#   curl -u admin:admin  -H 'X-Requested-By: ambari' -X GET "http://hdfcluster1.example.com:8080/api/v1/clusters/TestCluster?fields=hosts/Hosts/host_name,hosts/Hosts/host_state" | grep -B1 HEALTHY

OUTPUT
-------
        "host_name" : "hdfcluster1.example.com",
        "host_state" : "HEALTHY"
--
        "host_name" : "hdfcluster2.example.com",
        "host_state" : "HEALTHY"
--
        "host_name" : "hdfcluster3.example.com",
        "host_state" : "HEALTHY"

.