--- Title: Check all cluster nodes requests alwaysopen: false categories: - docs - operate - rs description: Requests that run checks on all cluster nodes. headerRange: '[1-2]' linkTitle: check toc: 'true' weight: $weight url: '/operate/rs/7.22/references/rest-api/requests/cluster/check/' --- | Method | Path | Description | |--------|------|-------------| | [GET](#get-cluster-check) | `/v1/cluster/check` | Runs checks on all cluster nodes | ## Check all nodes {#get-cluster-check} GET /v1/cluster/check Runs the following checks on all cluster nodes: | Check name | Description | |-----------|-------------| | bootstrap_status | Verifies the local node's bootstrap process completed without errors. | | services | Verifies all Redis Enterprise Software services are running. | | port_range | Verifies the [`ip_local_port_range`](https://www.kernel.org/doc/html/latest/networking/ip-sysctl.html) doesn't conflict with the ports Redis Enterprise might assign to shards. | | pidfiles | Verifies all active local shards have PID files. | | capabilities | Verifies all binaries have the proper capability bits. | | existing_sockets | Verifies sockets exist for all processes that require them. | | host_settings | Verifies the following:
• Linux `overcommit_memory` setting is 1.
• `transparent_hugepage` is disabled.
• Socket maximum connections setting `somaxconn` is 1024. | | tcp_connectivity | Verifies this node can connect to all other alive nodes. | #### Required permissions | Permission name | |-----------------| | [view_all_nodes_checks]({{< relref "/operate/rs/7.22/references/rest-api/permissions#view_all_nodes_checks" >}}) | ### Request {#get-request} #### Example HTTP request GET /v1/cluster/check #### Request headers | Key | Value | Description | |-----|-------|-------------| | Host | cnm.cluster.fqdn | Domain name | | Accept | application/json | Accepted media type | ### Response {#get-response} Returns a JSON array with results from all nodes. When errors occur, the server returns a JSON object with `result: false` and an `error` field that provides additional information for each node that had an error. If an error occurs during a check, the `error` field only includes a message for the first check that fails on each node. Possible `error` messages: - "bootstrap request to cnm_http failed,resp_code: ...,resp_content: ..." - "process ... is not running or not responding (...)" - "could not communicate with 'supervisorctl': ..." - "connectivity check failed retrieving ports for testing" #### Example JSON body ```json { "cluster_test_result": false, "nodes": [ { "node_uid": "1", "result": true }, { "node_uid": "2", "result": true }, { "node_uid": "3", "result": false, "error": "process alert_mgr is not running or not responding ([Errno 111] Connection refused)" } ] } ``` ### Status codes {#get-status-codes} | Code | Description | |------|-------------| | [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error |