FailoverReplication - Amazon OpenSearch Service
Services or capabilities described in AWS documentation might vary by Region. To see the differences applicable to the AWS European Sovereign Cloud Region, see the AWS European Sovereign Cloud User Guide.

FailoverReplication

Promotes a secondary domain to primary without coordinating with the current primary. Use this operation when the primary is unreachable and you cannot wait for it to recover.

Writes that had not yet replicated when the primary became unreachable are lost. You must set AllowDataLoss to acknowledge this. To promote a domain without losing writes, use the SwitchoverReplication operation instead.

Call this operation in the Region of the domain you want to promote.

Request Syntax

POST /2021-01-01/opensearch/domain/DomainName/replication/failover HTTP/1.1 Content-type: application/json { "AllowDataLoss": boolean, "PeerDomainArn": "string" }

URI Request Parameters

The request uses the following URI parameters.

DomainName

The name of an OpenSearch Service domain. Domain names are unique across the domains owned by an account within an AWS Region.

Length Constraints: Minimum length of 3. Maximum length of 28.

Pattern: [a-z][a-z0-9\-]+

Required: Yes

Request Body

The request accepts the following data in JSON format.

AllowDataLoss

Acknowledges that writes which had not yet replicated are lost. You must set this to true; the request is rejected otherwise.

Type: Boolean

Required: Yes

PeerDomainArn

The Amazon Resource Name (ARN) of the relationship's current primary. The request is rejected if this domain is no longer the peer of the domain you are calling.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 512.

Pattern: arn:aws[a-z\-]*:[a-z]+:[a-z0-9\-]+:[0-9]+:domain\/[a-z0-9\-]+

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "DomainArn": "string", "Status": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

DomainArn

The Amazon Resource Name (ARN) of the domain being promoted.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 512.

Pattern: arn:aws[a-z\-]*:[a-z]+:[a-z0-9\-]+:[0-9]+:domain\/[a-z0-9\-]+

Status

The state of the replication relationship. This is FAILING_OVER while the promotion is in progress.

Type: String

Valid Values: PENDING_SETUP | ACTIVE | SWITCHING_OVER | FAILING_OVER | PENDING_REMOVAL | DETACHED | EJECTED | FAILED

Errors

For information about the errors that are common to all actions, see Common Error Types.

DisabledOperationException

An error occured because the client wanted to access an unsupported operation.

HTTP Status Code: 409

InternalException

Request processing failed because of an unknown error, exception, or internal failure.

HTTP Status Code: 500

ResourceNotFoundException

An exception for accessing or deleting a resource that doesn't exist.

HTTP Status Code: 409

ValidationException

An exception for accessing or deleting a resource that doesn't exist.

HTTP Status Code: 400

Examples

Example

This example illustrates one usage of FailoverReplication.

Sample Request

POST /2021-01-01/opensearch/domain/my-secondary/replication/failover HTTP/1.1 Host: es.us-west-2.amazonaws.com Content-Type: application/json Content-Length: 95 {"PeerDomainArn": "arn:aws:es:us-east-1:123456789012:domain/my-primary", "AllowDataLoss": true}

Sample Response

HTTP/1.1 200 OK Content-Type: application/json { "DomainArn": "arn:aws:es:us-west-2:123456789012:domain/my-secondary", "Status": "FAILING_OVER" }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: