mirror of https://github.com/hashicorp/consul
143 lines
3.3 KiB
Markdown
143 lines
3.3 KiB
Markdown
---
|
|
layout: docs
|
|
page_title: Error Messages
|
|
description: >-
|
|
Look up Consul-Terraform-Sync error message to learn how to resolve potential issues using CTS.
|
|
---
|
|
|
|
# Error Messages
|
|
|
|
This topic explains error messages you may encounter when using Consul-Terraform-Sync (CTS).
|
|
|
|
## Example error log messages
|
|
|
|
If you configured the CTS cluster to run in [high availability mode](/consul/docs/nia/usage/run-ha) and the local module is missing, then the following message appears in the log:
|
|
|
|
```shell-session
|
|
[ERROR] ha.compat: error="compatibility check failure: stat ./example-module: no such file or directory"
|
|
```
|
|
|
|
The resolution is to add the missing local module on the incompatible CTS instance. Refer to the [`module` documentation](/consul/docs/nia/configuration#module) in the CTS configuration reference for additional information.
|
|
|
|
## Example API and CLI error messages
|
|
|
|
**Error**:
|
|
|
|
```json
|
|
{
|
|
"error": {
|
|
"message": "redirect requests to leader 'cts-01' at cts-01.example.com:8558"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Conditions**:
|
|
|
|
- CTS can determine the leader.
|
|
- `high_availability.instance.address` is configured for the leader.
|
|
- The CTS instance you sent the request to is not the leader.
|
|
|
|
|
|
|
|
**Resolution**:
|
|
|
|
Redirect the request to the leader instance, for example:
|
|
|
|
```shell-session
|
|
$ curl --request GET cts-01.example.com:8558/v1/tasks
|
|
```
|
|
---
|
|
|
|
|
|
**Error**:
|
|
|
|
```json
|
|
{
|
|
"error": {
|
|
"message": "redirect requests to leader 'cts-01'"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Conditions**:
|
|
|
|
* CTS can determine the leader.
|
|
* The CTS instance you sent the request to is not the leader.
|
|
* `high_availability.instance.address` is not configured.
|
|
|
|
**Resolution**:
|
|
|
|
Identify the leader instance address and redirect the request to the leader. You can identify the leader by calling the [`status/cluster` API endpoint](/consul/docs/nia/api/status#cluster-status) or by checking the logs for the following entry:
|
|
|
|
```shell-session
|
|
[INFO] ha: acquired leadership lock: id=<ID-OF-CTS-INSTANCE>.
|
|
|
|
We recommend deploying a cluster that has three instances.
|
|
|
|
---
|
|
|
|
**Error**:
|
|
|
|
```json
|
|
{
|
|
"error": {
|
|
"message": "redirect requests to leader"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Conditions**:
|
|
|
|
* The CTS instance you sent the request to is not the leader.
|
|
* The CTS is unable to determine the leader.
|
|
* Note that these conditions are rare.
|
|
|
|
|
|
**Resolution**:
|
|
|
|
Identify and send the request to the leader CTS instance. You can identify the leader by calling the [`status/cluster` API endpoint](/consul/docs/nia/api/status#cluster-status) or by checking the logs for the following entry:
|
|
|
|
```shell-session
|
|
[INFO] ha: acquired leadership lock: id=<ID-OF-CTS-INSTANCE>
|
|
```
|
|
|
|
---
|
|
|
|
**Error**:
|
|
|
|
```json
|
|
{
|
|
"error": {
|
|
"message": "this endpoint is only available with high availability configured"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Conditions**:
|
|
|
|
- You called the [`status/cluster` API endpoint](/consul/docs/nia/api/status#cluster-status) without configuring CTS for [high availability](/consul/docs/nia/usage/run-ha).
|
|
|
|
**Resolution**:
|
|
|
|
Configure CTS to run in [high availability mode](/consul/docs/nia/usage/run-ha).
|
|
|
|
---
|
|
|
|
**Error**:
|
|
|
|
```json
|
|
{
|
|
"error": {
|
|
"message": "example error message: unsupported status parameter value"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Conditions**:
|
|
|
|
- You sent a request to the `status` API endpoint.
|
|
- The request included an unsupported parameter value.
|
|
|
|
**Resolution**:
|
|
|
|
Send a new request and verify that all of the parameter values are correct. |