2025/08/01 - ARC - Region switch - 20 new api methods
Changes This is the initial SDK release for Region switch
Adds or updates tags for a Region switch resource. You can assign metadata to your resources in the form of tags, which are key-value pairs.
See also: AWS API Documentation
Request Syntax
client.tag_resource( arn='string', tags={ 'string': 'string' } )
string
[REQUIRED]
The Amazon Resource Name (ARN) for a tag that you add to a resource.
dict
[REQUIRED]
Tags that you add to a resource. You can add a maximum of 50 tags in Region switch.
(string) --
(string) --
dict
Response Syntax
{}
Response Structure
(dict) --
Updates an in-progress plan execution. This operation allows you to modify certain aspects of the execution, such as adding a comment or changing the action.
See also: AWS API Documentation
Request Syntax
client.update_plan_execution( planArn='string', executionId='string', action='switchToGraceful'|'switchToUngraceful'|'pause'|'resume', comment='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan with the execution to update.
string
[REQUIRED]
The execution identifier of a plan execution.
string
[REQUIRED]
The action specified for a plan execution, for example, Switch to Graceful or Pause.
string
An optional comment about the plan execution.
dict
Response Syntax
{}
Response Structure
(dict) --
Lists the events that occurred during a plan execution. These events provide a detailed timeline of the execution process.
See also: AWS API Documentation
Request Syntax
client.list_plan_execution_events( planArn='string', executionId='string', maxResults=123, nextToken='string', name='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
string
[REQUIRED]
The execution identifier of a plan execution.
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
string
The name of the plan execution event.
dict
Response Syntax
{ 'items': [ { 'timestamp': datetime(2015, 1, 1), 'type': 'unknown'|'executionPending'|'executionStarted'|'executionSucceeded'|'executionFailed'|'executionPausing'|'executionPaused'|'executionCanceling'|'executionCanceled'|'executionPendingApproval'|'executionBehaviorChangedToUngraceful'|'executionBehaviorChangedToGraceful'|'executionPendingChildPlanManualApproval'|'executionSuccessMonitoringApplicationHealth'|'stepStarted'|'stepUpdate'|'stepSucceeded'|'stepFailed'|'stepSkipped'|'stepPausedByError'|'stepPausedByOperator'|'stepCanceled'|'stepPendingApproval'|'stepExecutionBehaviorChangedToUngraceful'|'stepPendingApplicationHealthMonitor', 'stepName': 'string', 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck', 'resources': [ 'string', ], 'error': 'string', 'description': 'string', 'eventId': 'string', 'previousEventId': 'string' }, ], 'nextToken': 'string' }
Response Structure
(dict) --
items (list) --
The items in the plan execution event.
(dict) --
Represents an event that occurred during a plan execution. These events provide a detailed timeline of the execution process.
timestamp (datetime) --
The timestamp for an execution event.
type (string) --
The type of an execution event.
stepName (string) --
The step name for an execution event.
executionBlockType (string) --
The execution block type for an execution event.
resources (list) --
The resources for an execution event.
(string) --
error (string) --
Errors for an execution event.
description (string) --
The description for an execution event.
eventId (string) --
The event ID for an execution event.
previousEventId (string) --
The event ID of the previous execution event.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
Retrieves the evaluation status of a Region switch plan. The evaluation status provides information about the last time the plan was evaluated and any warnings or issues detected.
See also: AWS API Documentation
Request Syntax
client.get_plan_evaluation_status( planArn='string', maxResults=123, nextToken='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the Region switch plan to retrieve evaluation status for.
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
dict
Response Syntax
{ 'planArn': 'string', 'lastEvaluationTime': datetime(2015, 1, 1), 'lastEvaluatedVersion': 'string', 'region': 'string', 'evaluationState': 'passed'|'actionRequired'|'pendingEvaluation'|'unknown', 'warnings': [ { 'workflow': { 'action': 'activate'|'deactivate', 'name': 'string' }, 'version': 'string', 'stepName': 'string', 'resourceArn': 'string', 'warningStatus': 'active'|'resolved', 'warningUpdatedTime': datetime(2015, 1, 1), 'warningMessage': 'string' }, ], 'nextToken': 'string' }
Response Structure
(dict) --
planArn (string) --
The Amazon Resource Name (ARN) of the plan.
lastEvaluationTime (datetime) --
The time of the last time that Region switch ran an evaluation of the plan.
lastEvaluatedVersion (string) --
The version of the last evaluation of the plan.
region (string) --
The Amazon Web Services Region for the plan.
evaluationState (string) --
The evaluation state for the plan.
warnings (list) --
The current evaluation warnings for the plan.
(dict) --
Represents a warning about a resource in a Region switch plan.
workflow (dict) --
The workflow for the resource warning.
action (string) --
The action for a minimal workflow, which can be Activate or Deactivate.
name (string) --
The name for a minimal workflow
version (string) --
The version for the resource warning.
stepName (string) --
The name of the step for the resource warning.
resourceArn (string) --
The Amazon Resource Name (ARN) of the resource.
warningStatus (string) --
The status of the resource warning.
warningUpdatedTime (datetime) --
The timestamp when the warning was last updated.
warningMessage (string) --
The warning message about what needs to be corrected.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
Lists the tags attached to a Region switch resource.
See also: AWS API Documentation
Request Syntax
client.list_tags_for_resource( arn='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the resource.
dict
Response Syntax
{ 'resourceTags': { 'string': 'string' } }
Response Structure
(dict) --
resourceTags (dict) --
The tags for a resource.
(string) --
(string) --
Deletes a Region switch plan. You must specify the ARN of the plan to delete.
You cannot delete a plan that has an active execution in progress.
See also: AWS API Documentation
Request Syntax
client.delete_plan( arn='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
dict
Response Syntax
{}
Response Structure
(dict) --
Lists the executions of a Region switch plan. This operation returns information about both current and historical executions.
See also: AWS API Documentation
Request Syntax
client.list_plan_executions( planArn='string', maxResults=123, nextToken='string', state='inProgress'|'pausedByFailedStep'|'pausedByOperator'|'completed'|'completedWithExceptions'|'canceled'|'planExecutionTimedOut'|'pendingManualApproval'|'failed'|'pending'|'completedMonitoringApplicationHealth' )
string
[REQUIRED]
The ARN for the plan.
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
string
The state of the plan execution. For example, the plan execution might be In Progress.
dict
Response Syntax
{ 'items': [ { 'planArn': 'string', 'executionId': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1), 'comment': 'string', 'startTime': datetime(2015, 1, 1), 'endTime': datetime(2015, 1, 1), 'mode': 'graceful'|'ungraceful', 'executionState': 'inProgress'|'pausedByFailedStep'|'pausedByOperator'|'completed'|'completedWithExceptions'|'canceled'|'planExecutionTimedOut'|'pendingManualApproval'|'failed'|'pending'|'completedMonitoringApplicationHealth', 'executionAction': 'activate'|'deactivate', 'executionRegion': 'string', 'actualRecoveryTime': 'string' }, ], 'nextToken': 'string' }
Response Structure
(dict) --
items (list) --
The items in the plan execution to return.
(dict) --
A summarized representation of a plan execution. This structure contains key information about an execution without all the detailed step data.
planArn (string) --
The Amazon Resource Name (ARN) of the plan.
executionId (string) --
The execution identifier of a plan execution.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan execution was last updated.
comment (string) --
An optional comment about the plan execution.
startTime (datetime) --
The timestamp when the plan execution was started.
endTime (datetime) --
The timestamp when the plan execution was ended.
mode (string) --
The plan execution mode. Valid values are Practice, for testing without making actual changes, or Recovery, for actual traffic shifting and application recovery.
executionState (string) --
The plan execution state. Provides the state of a plan execution, for example, In Progress or Paused by Operator.
executionAction (string) --
The plan execution action. Valid values are Activate, to activate an Amazon Web Services Region, or Deactivate, to deactivate a Region.
executionRegion (string) --
The Amazon Web Services Region for a plan execution.
actualRecoveryTime (string) --
The actual recovery time that Region switch calculates for a plan execution. Actual recovery time includes the time for the plan to run added to the time elapsed until the application health alarms that you've specified are healthy again.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
Updates a specific step in an in-progress plan execution. This operation allows you to modify the step's comment or action.
See also: AWS API Documentation
Request Syntax
client.update_plan_execution_step( planArn='string', executionId='string', comment='string', stepName='string', actionToTake='switchToUngraceful'|'skip' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan containing the execution step to update.
string
[REQUIRED]
The unique identifier of the plan execution containing the step to update.
string
[REQUIRED]
An optional comment about the plan execution.
string
[REQUIRED]
The name of the execution step to update.
string
[REQUIRED]
The updated action to take for the step. This can be used to skip or retry a step.
dict
Response Syntax
{}
Response Structure
(dict) --
Creates a new Region switch plan. A plan defines the steps required to shift traffic from one Amazon Web Services Region to another.
You must specify a name for the plan, the primary Region, and at least one additional Region. You can also provide a description, execution role, recovery time objective, associated alarms, triggers, and workflows that define the steps to execute during a Region switch.
See also: AWS API Documentation
Request Syntax
client.create_plan( description='string', workflows=[ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], executionRole='string', recoveryTimeObjectiveMinutes=123, associatedAlarms={ 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, triggers=[ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], name='string', regions=[ 'string', ], recoveryApproach='activeActive'|'activePassive', primaryRegion='string', tags={ 'string': 'string' } )
string
The description of a Region switch plan.
list
[REQUIRED]
An array of workflows included in a Region switch plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) -- [REQUIRED]
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) -- [REQUIRED]
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) -- [REQUIRED]
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) -- [REQUIRED]
The retry interval specified.
regionToRun (string) -- [REQUIRED]
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) -- [REQUIRED]
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) -- [REQUIRED]
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) -- [REQUIRED]
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of a routing control.
state (string) -- [REQUIRED]
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) -- [REQUIRED]
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) -- [REQUIRED]
The global cluster identifier for a global database.
databaseClusterArns (list) -- [REQUIRED]
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) -- [REQUIRED]
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) -- [REQUIRED]
The Kubernetes resource type for the configuration.
apiVersion (string) -- [REQUIRED]
The API version type for the Kubernetes resource.
kind (string) -- [REQUIRED]
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) -- [REQUIRED]
The namespace for the Kubernetes resource.
name (string) -- [REQUIRED]
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) -- [REQUIRED]
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) -- [REQUIRED]
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) -- [REQUIRED]
The type of an execution block in a workflow.
workflowTargetAction (string) -- [REQUIRED]
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
string
[REQUIRED]
An execution role is a way to categorize a Region switch plan.
integer
Optionally, you can specify an recovery time objective for a Region switch plan, in minutes.
dict
The alarms associated with a Region switch plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) -- [REQUIRED]
The resource identifier for alarms that you associate with a plan.
alarmType (string) -- [REQUIRED]
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
list
The triggers associated with a Region switch plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) -- [REQUIRED]
The Amazon Web Services Region for a trigger.
action (string) -- [REQUIRED]
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) -- [REQUIRED]
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) -- [REQUIRED]
The name of the CloudWatch alarm associated with the condition.
condition (string) -- [REQUIRED]
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) -- [REQUIRED]
The minimum time, in minutes, that must elapse between automatic executions of the plan.
string
[REQUIRED]
The name of a Region switch plan.
list
[REQUIRED]
An array that specifies the Amazon Web Services Regions for a Region switch plan. Specify two Regions.
(string) --
string
[REQUIRED]
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
string
The primary Amazon Web Services Region for the application. This is the Region where the application normally runs before any Region switch occurs.
dict
The tags to apply to the Region switch plan.
(string) --
(string) --
dict
Response Syntax
{ 'plan': { 'arn': 'string', 'description': 'string', 'workflows': [ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], 'executionRole': 'string', 'recoveryTimeObjectiveMinutes': 123, 'associatedAlarms': { 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, 'triggers': [ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'owner': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1) } }
Response Structure
(dict) --
plan (dict) --
The details of the created Region switch plan.
arn (string) --
The Amazon Resource Name (ARN) of the plan.
description (string) --
The description for a plan.
workflows (list) --
The workflows for a plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) --
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) --
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) --
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) --
The retry interval specified.
regionToRun (string) --
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) --
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) --
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) --
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) --
The Amazon Resource Name (ARN) of a routing control.
state (string) --
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) --
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) --
The global cluster identifier for a global database.
databaseClusterArns (list) --
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) --
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) --
The Kubernetes resource type for the configuration.
apiVersion (string) --
The API version type for the Kubernetes resource.
kind (string) --
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) --
The namespace for the Kubernetes resource.
name (string) --
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) --
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) --
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) --
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) --
The type of an execution block in a workflow.
workflowTargetAction (string) --
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
executionRole (string) --
The execution role for a plan.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective for a plan.
associatedAlarms (dict) --
The associated application health alarms for a plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) --
The resource identifier for alarms that you associate with a plan.
alarmType (string) --
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
triggers (list) --
The triggers for a plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) --
The Amazon Web Services Region for a trigger.
action (string) --
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) --
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) --
The name of the CloudWatch alarm associated with the condition.
condition (string) --
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) --
The minimum time, in minutes, that must elapse between automatic executions of the plan.
name (string) --
The name for a plan.
regions (list) --
The Amazon Web Services Regions for a plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
owner (string) --
The owner of a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan was last updated.
Approves a step in a plan execution that requires manual approval. When you create a plan, you can include approval steps that require manual intervention before the execution can proceed. This operation allows you to provide that approval.
You must specify the plan ARN, execution ID, step name, and approval status. You can also provide an optional comment explaining the approval decision.
See also: AWS API Documentation
Request Syntax
client.approve_plan_execution_step( planArn='string', executionId='string', stepName='string', approval='approve'|'decline', comment='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
string
[REQUIRED]
The execution identifier of a plan execution.
string
[REQUIRED]
The name of a step in a plan execution.
string
[REQUIRED]
The status of approval for a plan execution step.
string
A comment that you can enter about a plan execution.
dict
Response Syntax
{}
Response Structure
(dict) --
Retrieves detailed information about a Region switch plan. You must specify the ARN of the plan.
See also: AWS API Documentation
Request Syntax
client.get_plan( arn='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
dict
Response Syntax
{ 'plan': { 'arn': 'string', 'description': 'string', 'workflows': [ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], 'executionRole': 'string', 'recoveryTimeObjectiveMinutes': 123, 'associatedAlarms': { 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, 'triggers': [ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'owner': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1) } }
Response Structure
(dict) --
plan (dict) --
The detailed information about the requested Region switch plan.
arn (string) --
The Amazon Resource Name (ARN) of the plan.
description (string) --
The description for a plan.
workflows (list) --
The workflows for a plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) --
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) --
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) --
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) --
The retry interval specified.
regionToRun (string) --
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) --
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) --
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) --
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) --
The Amazon Resource Name (ARN) of a routing control.
state (string) --
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) --
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) --
The global cluster identifier for a global database.
databaseClusterArns (list) --
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) --
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) --
The Kubernetes resource type for the configuration.
apiVersion (string) --
The API version type for the Kubernetes resource.
kind (string) --
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) --
The namespace for the Kubernetes resource.
name (string) --
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) --
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) --
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) --
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) --
The type of an execution block in a workflow.
workflowTargetAction (string) --
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
executionRole (string) --
The execution role for a plan.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective for a plan.
associatedAlarms (dict) --
The associated application health alarms for a plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) --
The resource identifier for alarms that you associate with a plan.
alarmType (string) --
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
triggers (list) --
The triggers for a plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) --
The Amazon Web Services Region for a trigger.
action (string) --
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) --
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) --
The name of the CloudWatch alarm associated with the condition.
condition (string) --
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) --
The minimum time, in minutes, that must elapse between automatic executions of the plan.
name (string) --
The name for a plan.
regions (list) --
The Amazon Web Services Regions for a plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
owner (string) --
The owner of a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan was last updated.
Starts the execution of a Region switch plan. You can execute a plan in either PRACTICE or RECOVERY mode.
In PRACTICE mode, the execution simulates the steps without making actual changes to your application's traffic routing. In RECOVERY mode, the execution performs actual changes to shift traffic between Regions.
See also: AWS API Documentation
Request Syntax
client.start_plan_execution( planArn='string', targetRegion='string', action='activate'|'deactivate', mode='graceful'|'ungraceful', comment='string', latestVersion='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan to execute.
string
[REQUIRED]
The Amazon Web Services Region to target with this execution. This is the Region that traffic will be shifted to or from, depending on the action.
string
[REQUIRED]
The action to perform. Valid values are ACTIVATE (to shift traffic to the target Region) or DEACTIVATE (to shift traffic away from the target Region).
string
The plan execution mode. Valid values are Practice, for testing without making actual changes, or Recovery, for actual traffic shifting and application recovery.
string
An optional comment explaining why the plan execution is being started.
string
A boolean value indicating whether to use the latest version of the plan. If set to false, you must specify a specific version.
dict
Response Syntax
{ 'executionId': 'string', 'plan': 'string', 'planVersion': 'string', 'activateRegion': 'string', 'deactivateRegion': 'string' }
Response Structure
(dict) --
executionId (string) --
The execution identifier of a plan execution.
plan (string) --
The details of the Region switch plan.
planVersion (string) --
The version of the plan, a unique number generated by Region switch.
activateRegion (string) --
The Amazon Web Services Region to activate.
deactivateRegion (string) --
The Amazon Web Services Region to deactivate.
Lists all Region switch plans in your Amazon Web Services account that are available in the current Amazon Web Services Region.
See also: AWS API Documentation
Request Syntax
client.list_plans_in_region( maxResults=123, nextToken='string' )
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
dict
Response Syntax
{ 'plans': [ { 'arn': 'string', 'owner': 'string', 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1), 'description': 'string', 'executionRole': 'string', 'activePlanExecution': 'string', 'recoveryTimeObjectiveMinutes': 123 }, ], 'nextToken': 'string' }
Response Structure
(dict) --
plans (list) --
The plans that were requested.
(dict) --
A summarized representation of a Region switch plan. This structure contains key information about a plan without all the detailed workflow and step data.
arn (string) --
The Amazon Resource Name (ARN) of the Region switch plan.
owner (string) --
The owner of a Region switch plan.
name (string) --
The name of a Region switch plan.
regions (list) --
The Amazon Web Services Region specified for a Region switch plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan execution was last updated.
description (string) --
The description of a Region switch plan.
executionRole (string) --
The execution role is a way to categorize a Region switch plan.
activePlanExecution (string) --
Specifies if this is the active plan execution at this time.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective that you've specified.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
List the Amazon Route 53 health checks.
See also: AWS API Documentation
Request Syntax
client.list_route53_health_checks( arn='string', hostedZoneId='string', recordName='string', maxResults=123, nextToken='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the Amazon Route 53 health check request.
string
The hosted zone ID for the health checks.
string
The record name for the health checks.
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
dict
Response Syntax
{ 'healthChecks': [ { 'hostedZoneId': 'string', 'recordName': 'string', 'healthCheckId': 'string', 'region': 'string' }, ], 'nextToken': 'string' }
Response Structure
(dict) --
healthChecks (list) --
List of the health checks requested.
(dict) --
The Amazon Route 53 health check.
hostedZoneId (string) --
The Amazon Route 53 health check hosted zone ID.
recordName (string) --
The Amazon Route 53 record name.
healthCheckId (string) --
The Amazon Route 53 health check ID.
region (string) --
The Amazon Route 53 Region.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
Retrieves information about a Region switch plan in a specific Amazon Web Services Region. This operation is useful for getting Region-specific information about a plan.
See also: AWS API Documentation
Request Syntax
client.get_plan_in_region( arn='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan in Region.
dict
Response Syntax
{ 'plan': { 'arn': 'string', 'description': 'string', 'workflows': [ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], 'executionRole': 'string', 'recoveryTimeObjectiveMinutes': 123, 'associatedAlarms': { 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, 'triggers': [ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'owner': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1) } }
Response Structure
(dict) --
plan (dict) --
The details of the Region switch plan.
arn (string) --
The Amazon Resource Name (ARN) of the plan.
description (string) --
The description for a plan.
workflows (list) --
The workflows for a plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) --
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) --
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) --
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) --
The retry interval specified.
regionToRun (string) --
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) --
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) --
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) --
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) --
The Amazon Resource Name (ARN) of a routing control.
state (string) --
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) --
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) --
The global cluster identifier for a global database.
databaseClusterArns (list) --
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) --
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) --
The Kubernetes resource type for the configuration.
apiVersion (string) --
The API version type for the Kubernetes resource.
kind (string) --
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) --
The namespace for the Kubernetes resource.
name (string) --
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) --
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) --
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) --
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) --
The type of an execution block in a workflow.
workflowTargetAction (string) --
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
executionRole (string) --
The execution role for a plan.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective for a plan.
associatedAlarms (dict) --
The associated application health alarms for a plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) --
The resource identifier for alarms that you associate with a plan.
alarmType (string) --
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
triggers (list) --
The triggers for a plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) --
The Amazon Web Services Region for a trigger.
action (string) --
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) --
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) --
The name of the CloudWatch alarm associated with the condition.
condition (string) --
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) --
The minimum time, in minutes, that must elapse between automatic executions of the plan.
name (string) --
The name for a plan.
regions (list) --
The Amazon Web Services Regions for a plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
owner (string) --
The owner of a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan was last updated.
Removes tags from a Region switch resource.
See also: AWS API Documentation
Request Syntax
client.untag_resource( arn='string', resourceTagKeys=[ 'string', ] )
string
[REQUIRED]
The Amazon Resource Name (ARN) for a tag you remove a resource from.
list
[REQUIRED]
Tag keys that you remove from a resource.
(string) --
dict
Response Syntax
{}
Response Structure
(dict) --
Cancels an in-progress plan execution. This operation stops the execution of the plan and prevents any further steps from being processed.
You must specify the plan ARN and execution ID. You can also provide an optional comment explaining why the execution was canceled.
See also: AWS API Documentation
Request Syntax
client.cancel_plan_execution( planArn='string', executionId='string', comment='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
string
[REQUIRED]
The execution identifier of a plan execution.
string
A comment that you can enter about canceling a plan execution step.
dict
Response Syntax
{}
Response Structure
(dict) --
Updates an existing Region switch plan. You can modify the plan's description, workflows, execution role, recovery time objective, associated alarms, and triggers.
See also: AWS API Documentation
Request Syntax
client.update_plan( arn='string', description='string', workflows=[ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], executionRole='string', recoveryTimeObjectiveMinutes=123, associatedAlarms={ 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, triggers=[ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ] )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan.
string
The updated description for the Region switch plan.
list
[REQUIRED]
The updated workflows for the Region switch plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) -- [REQUIRED]
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) -- [REQUIRED]
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) -- [REQUIRED]
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) -- [REQUIRED]
The retry interval specified.
regionToRun (string) -- [REQUIRED]
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) -- [REQUIRED]
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) -- [REQUIRED]
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) -- [REQUIRED]
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of a routing control.
state (string) -- [REQUIRED]
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) -- [REQUIRED]
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) -- [REQUIRED]
The global cluster identifier for a global database.
databaseClusterArns (list) -- [REQUIRED]
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) -- [REQUIRED]
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) -- [REQUIRED]
The Kubernetes resource type for the configuration.
apiVersion (string) -- [REQUIRED]
The API version type for the Kubernetes resource.
kind (string) -- [REQUIRED]
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) -- [REQUIRED]
The namespace for the Kubernetes resource.
name (string) -- [REQUIRED]
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) -- [REQUIRED]
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) -- [REQUIRED]
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) -- [REQUIRED]
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) -- [REQUIRED]
The type of an execution block in a workflow.
workflowTargetAction (string) -- [REQUIRED]
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
string
[REQUIRED]
The updated IAM role ARN that grants Region switch the permissions needed to execute the plan steps.
integer
The updated target recovery time objective (RTO) in minutes for the plan.
dict
The updated CloudWatch alarms associated with the plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) -- [REQUIRED]
The resource identifier for alarms that you associate with a plan.
alarmType (string) -- [REQUIRED]
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
list
The updated conditions that can automatically trigger the execution of the plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) -- [REQUIRED]
The Amazon Web Services Region for a trigger.
action (string) -- [REQUIRED]
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) -- [REQUIRED]
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) -- [REQUIRED]
The name of the CloudWatch alarm associated with the condition.
condition (string) -- [REQUIRED]
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) -- [REQUIRED]
The minimum time, in minutes, that must elapse between automatic executions of the plan.
dict
Response Syntax
{ 'plan': { 'arn': 'string', 'description': 'string', 'workflows': [ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], 'executionRole': 'string', 'recoveryTimeObjectiveMinutes': 123, 'associatedAlarms': { 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, 'triggers': [ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'owner': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1) } }
Response Structure
(dict) --
plan (dict) --
The details of the updated Region switch plan.
arn (string) --
The Amazon Resource Name (ARN) of the plan.
description (string) --
The description for a plan.
workflows (list) --
The workflows for a plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) --
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) --
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) --
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) --
The retry interval specified.
regionToRun (string) --
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) --
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) --
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) --
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) --
The Amazon Resource Name (ARN) of a routing control.
state (string) --
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) --
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) --
The global cluster identifier for a global database.
databaseClusterArns (list) --
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) --
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) --
The Kubernetes resource type for the configuration.
apiVersion (string) --
The API version type for the Kubernetes resource.
kind (string) --
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) --
The namespace for the Kubernetes resource.
name (string) --
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) --
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) --
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) --
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) --
The type of an execution block in a workflow.
workflowTargetAction (string) --
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
executionRole (string) --
The execution role for a plan.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective for a plan.
associatedAlarms (dict) --
The associated application health alarms for a plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) --
The resource identifier for alarms that you associate with a plan.
alarmType (string) --
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
triggers (list) --
The triggers for a plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) --
The Amazon Web Services Region for a trigger.
action (string) --
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) --
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) --
The name of the CloudWatch alarm associated with the condition.
condition (string) --
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) --
The minimum time, in minutes, that must elapse between automatic executions of the plan.
name (string) --
The name for a plan.
regions (list) --
The Amazon Web Services Regions for a plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
owner (string) --
The owner of a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan was last updated.
Lists all Region switch plans in your Amazon Web Services account.
See also: AWS API Documentation
Request Syntax
client.list_plans( maxResults=123, nextToken='string' )
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
dict
Response Syntax
{ 'plans': [ { 'arn': 'string', 'owner': 'string', 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1), 'description': 'string', 'executionRole': 'string', 'activePlanExecution': 'string', 'recoveryTimeObjectiveMinutes': 123 }, ], 'nextToken': 'string' }
Response Structure
(dict) --
plans (list) --
The plans that were requested.
(dict) --
A summarized representation of a Region switch plan. This structure contains key information about a plan without all the detailed workflow and step data.
arn (string) --
The Amazon Resource Name (ARN) of the Region switch plan.
owner (string) --
The owner of a Region switch plan.
name (string) --
The name of a Region switch plan.
regions (list) --
The Amazon Web Services Region specified for a Region switch plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan execution was last updated.
description (string) --
The description of a Region switch plan.
executionRole (string) --
The execution role is a way to categorize a Region switch plan.
activePlanExecution (string) --
Specifies if this is the active plan execution at this time.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective that you've specified.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
Retrieves detailed information about a specific plan execution. You must specify the plan ARN and execution ID.
See also: AWS API Documentation
Request Syntax
client.get_plan_execution( planArn='string', executionId='string', maxResults=123, nextToken='string' )
string
[REQUIRED]
The Amazon Resource Name (ARN) of the plan with the execution to retrieve.
string
[REQUIRED]
The execution identifier of a plan execution.
integer
The number of objects that you want to return with this call.
string
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.
dict
Response Syntax
{ 'planArn': 'string', 'executionId': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1), 'comment': 'string', 'startTime': datetime(2015, 1, 1), 'endTime': datetime(2015, 1, 1), 'mode': 'graceful'|'ungraceful', 'executionState': 'inProgress'|'pausedByFailedStep'|'pausedByOperator'|'completed'|'completedWithExceptions'|'canceled'|'planExecutionTimedOut'|'pendingManualApproval'|'failed'|'pending'|'completedMonitoringApplicationHealth', 'executionAction': 'activate'|'deactivate', 'executionRegion': 'string', 'stepStates': [ { 'name': 'string', 'status': 'notStarted'|'running'|'failed'|'completed'|'canceled'|'skipped'|'pendingApproval', 'startTime': datetime(2015, 1, 1), 'endTime': datetime(2015, 1, 1), 'stepMode': 'graceful'|'ungraceful' }, ], 'plan': { 'arn': 'string', 'description': 'string', 'workflows': [ { 'steps': [ { 'name': 'string', 'description': 'string', 'executionBlockConfiguration': { 'customActionLambdaConfig': { 'timeoutMinutes': 123, 'lambdas': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'retryIntervalMinutes': ..., 'regionToRun': 'activatingRegion'|'deactivatingRegion', 'ungraceful': { 'behavior': 'skip' } }, 'ec2AsgCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'asgs': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'autoscalingMaxInLast24Hours' }, 'executionApprovalConfig': { 'timeoutMinutes': 123, 'approvalRole': 'string' }, 'arcRoutingControlConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'regionAndRoutingControls': { 'string': [ { 'routingControlArn': 'string', 'state': 'On'|'Off' }, ] } }, 'globalAuroraConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'behavior': 'switchoverOnly'|'failover', 'ungraceful': { 'ungraceful': 'failover' }, 'globalClusterIdentifier': 'string', 'databaseClusterArns': [ 'string', ] }, 'parallelConfig': { 'steps': {'... recursive ...'} }, 'regionSwitchPlanConfig': { 'crossAccountRole': 'string', 'externalId': 'string', 'arn': 'string' }, 'ecsCapacityIncreaseConfig': { 'timeoutMinutes': 123, 'services': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string', 'serviceArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours'|'containerInsightsMaxInLast24Hours' }, 'eksResourceScalingConfig': { 'timeoutMinutes': 123, 'kubernetesResourceType': { 'apiVersion': 'string', 'kind': 'string' }, 'scalingResources': [ { 'string': { 'string': { 'namespace': 'string', 'name': 'string', 'hpaName': 'string' } } }, ], 'eksClusters': [ { 'crossAccountRole': 'string', 'externalId': 'string', 'clusterArn': 'string' }, ], 'ungraceful': { 'minimumSuccessPercentage': 123 }, 'targetPercent': 123, 'capacityMonitoringApproach': 'sampledMaxInLast24Hours' }, 'route53HealthCheckConfig': { 'timeoutMinutes': 123, 'crossAccountRole': 'string', 'externalId': 'string', 'hostedZoneId': 'string', 'recordName': 'string', 'recordSets': [ { 'recordSetIdentifier': 'string', 'region': 'string' }, ] } }, 'executionBlockType': 'CustomActionLambda'|'ManualApproval'|'AuroraGlobalDatabase'|'EC2AutoScaling'|'ARCRoutingControl'|'ARCRegionSwitchPlan'|'Parallel'|'ECSServiceScaling'|'EKSResourceScaling'|'Route53HealthCheck' }, ], 'workflowTargetAction': 'activate'|'deactivate', 'workflowTargetRegion': 'string', 'workflowDescription': 'string' }, ], 'executionRole': 'string', 'recoveryTimeObjectiveMinutes': 123, 'associatedAlarms': { 'string': { 'crossAccountRole': 'string', 'externalId': 'string', 'resourceIdentifier': 'string', 'alarmType': 'applicationHealth'|'trigger' } }, 'triggers': [ { 'description': 'string', 'targetRegion': 'string', 'action': 'activate'|'deactivate', 'conditions': [ { 'associatedAlarmName': 'string', 'condition': 'red'|'green' }, ], 'minDelayMinutesBetweenExecutions': 123 }, ], 'name': 'string', 'regions': [ 'string', ], 'recoveryApproach': 'activeActive'|'activePassive', 'primaryRegion': 'string', 'owner': 'string', 'version': 'string', 'updatedAt': datetime(2015, 1, 1) }, 'actualRecoveryTime': 'string', 'nextToken': 'string' }
Response Structure
(dict) --
planArn (string) --
The Amazon Resource Name (ARN) of the plan.
executionId (string) --
The execution identifier of a plan execution.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan execution was last updated.
comment (string) --
A comment included on the plan execution.
startTime (datetime) --
The time (UTC) when the plan execution started.
endTime (datetime) --
The time (UTC) when the plan execution ended.
mode (string) --
The plan execution mode. Valid values are Practice, for testing without making actual changes, or Recovery, for actual traffic shifting and application recovery.
executionState (string) --
The plan execution state. Provides the state of a plan execution, for example, In Progress or Paused by Operator.
executionAction (string) --
The plan execution action. Valid values are Activate, to activate an Amazon Web Services Region, or Deactivate, to deactivate a Region.
executionRegion (string) --
The Amazon Web Services Region for a plan execution.
stepStates (list) --
The states of the steps in the plan execution.
(dict) --
Represents the state of a step in a plan execution.
name (string) --
The name of a step in a workflow.
status (string) --
The status of a step in a workflow. For example, a status might be Completed or Pending Approval.
startTime (datetime) --
The timestamp when a step started execution.
endTime (datetime) --
The timestamp when a step endeded execution.
stepMode (string) --
The mode for a step execution. The mode can be Graceful or Ungraceful.
plan (dict) --
The details of the Region switch plan.
arn (string) --
The Amazon Resource Name (ARN) of the plan.
description (string) --
The description for a plan.
workflows (list) --
The workflows for a plan.
(dict) --
Represents a workflow in a Region switch plan. A workflow defines a sequence of steps to execute during a Region switch.
steps (list) --
The steps that make up the workflow.
(dict) --
Represents a step in a Region switch plan workflow. Each step performs a specific action during the Region switch process.
name (string) --
The name of a step in a workflow.
description (string) --
The description of a step in a workflow.
executionBlockConfiguration (dict) --
The configuration for an execution block in a workflow.
customActionLambdaConfig (dict) --
An Amazon Web Services Lambda execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
lambdas (list) --
The Amazon Web Services Lambda functions for the execution block.
(dict) --
Configuration for Amazon Web Services Lambda functions used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the Lambda function.
retryIntervalMinutes (float) --
The retry interval specified.
regionToRun (string) --
The Amazon Web Services Region for the function to run in.
ungraceful (dict) --
The settings for ungraceful execution.
behavior (string) --
The ungraceful behavior for a Lambda function, which must be set to skip.
ec2AsgCapacityIncreaseConfig (dict) --
An EC2 Auto Scaling group execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
asgs (list) --
The EC2 Auto Scaling groups for the configuration.
(dict) --
Configuration for an Amazon EC2 Auto Scaling group used in a Region switch plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the EC2 Auto Scaling group.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage that you specify for EC2 Auto Scaling groups.
targetPercent (integer) --
The target percentage that you specify for EC2 Auto Scaling groups.
capacityMonitoringApproach (string) --
The monitoring approach that you specify EC2 Auto Scaling groups for the configuration.
executionApprovalConfig (dict) --
A manual approval execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
approvalRole (string) --
The IAM approval role for the configuration.
arcRoutingControlConfig (dict) --
An ARC routing control execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
regionAndRoutingControls (dict) --
The Region and ARC routing controls for the configuration.
(string) --
(list) --
(dict) --
Represents the state of an ARC routing control.
routingControlArn (string) --
The Amazon Resource Name (ARN) of a routing control.
state (string) --
The state of an ARC routing control, On or Off.
globalAuroraConfig (dict) --
An Aurora Global Database execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
behavior (string) --
The behavior for a global database, that is, only allow switchover or also allow failover.
ungraceful (dict) --
The settings for ungraceful execution.
ungraceful (string) --
The settings for ungraceful execution.
globalClusterIdentifier (string) --
The global cluster identifier for a global database.
databaseClusterArns (list) --
The database cluster Amazon Resource Names (ARNs) for a global database.
(string) --
parallelConfig (dict) --
A parallel configuration execution block.
steps (list) --
The steps for a parallel execution block.
regionSwitchPlanConfig (dict) --
A Region switch plan execution block.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
arn (string) --
The Amazon Resource Name (ARN) of the plan configuration.
ecsCapacityIncreaseConfig (dict) --
The capacity increase specified for the configuration.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
services (list) --
The services specified for the configuration.
(dict) --
The service for a cross account role.
crossAccountRole (string) --
The cross account role for a service.
externalId (string) --
The external ID (secret key) for the service.
clusterArn (string) --
The cluster Amazon Resource Name (ARN) for a service.
serviceArn (string) --
The Amazon Resource Name (ARN) for a service.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage specified for the configuration.
targetPercent (integer) --
The target percentage specified for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach specified for the configuration, for example, Most_Recent.
eksResourceScalingConfig (dict) --
An Amazon Web Services EKS resource scaling execution block.
timeoutMinutes (integer) --
The timeout value specified for the configuration.
kubernetesResourceType (dict) --
The Kubernetes resource type for the configuration.
apiVersion (string) --
The API version type for the Kubernetes resource.
kind (string) --
The kind for the Kubernetes resource.
scalingResources (list) --
The scaling resources for the configuration.
(dict) --
(string) --
(dict) --
(string) --
(dict) --
Defines a Kubernetes resource to scale in an Amazon EKS cluster.
namespace (string) --
The namespace for the Kubernetes resource.
name (string) --
The name for the Kubernetes resource.
hpaName (string) --
The hpaname for the Kubernetes resource.
eksClusters (list) --
The clusters for the configuration.
(dict) --
The Amazon Web Services EKS cluster execution block configuration.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
clusterArn (string) --
The Amazon Resource Name (ARN) of an Amazon Web Services EKS cluster.
ungraceful (dict) --
The settings for ungraceful execution.
minimumSuccessPercentage (integer) --
The minimum success percentage for the configuration.
targetPercent (integer) --
The target percentage for the configuration.
capacityMonitoringApproach (string) --
The monitoring approach for the configuration, that is, whether it was sampled in the last 24 hours or autoscaled in the last 24 hours.
route53HealthCheckConfig (dict) --
The Amazon Route 53 health check configuration.
timeoutMinutes (integer) --
The Amazon Route 53 health check configuration time out (in minutes).
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
hostedZoneId (string) --
The Amazon Route 53 health check configuration hosted zone ID.
recordName (string) --
The Amazon Route 53 health check configuration record name.
recordSets (list) --
The Amazon Route 53 health check configuration record sets.
(dict) --
The Amazon Route 53 record set.
recordSetIdentifier (string) --
The Amazon Route 53 record set identifier.
region (string) --
The Amazon Route 53 record set Region.
executionBlockType (string) --
The type of an execution block in a workflow.
workflowTargetAction (string) --
The action that the workflow performs. Valid values include ACTIVATE and DEACTIVATE.
workflowTargetRegion (string) --
The Amazon Web Services Region that the workflow targets.
workflowDescription (string) --
The description of the workflow.
executionRole (string) --
The execution role for a plan.
recoveryTimeObjectiveMinutes (integer) --
The recovery time objective for a plan.
associatedAlarms (dict) --
The associated application health alarms for a plan.
(string) --
(dict) --
An Amazon CloudWatch alarm associated with a Region switch plan. These alarms can be used to trigger automatic execution of the plan.
crossAccountRole (string) --
The cross account role for the configuration.
externalId (string) --
The external ID (secret key) for the configuration.
resourceIdentifier (string) --
The resource identifier for alarms that you associate with a plan.
alarmType (string) --
The alarm type for an associated alarm. An associated CloudWatch alarm can be an application health alarm or a trigger alarm.
triggers (list) --
The triggers for a plan.
(dict) --
Defines a condition that can automatically trigger the execution of a Region switch plan.
description (string) --
The description for a trigger.
targetRegion (string) --
The Amazon Web Services Region for a trigger.
action (string) --
The action to perform when the trigger fires. Valid values include ACTIVATE and DEACTIVATE.
conditions (list) --
The conditions that must be met for the trigger to fire.
(dict) --
Defines a condition that must be met for a trigger to fire.
associatedAlarmName (string) --
The name of the CloudWatch alarm associated with the condition.
condition (string) --
The condition that must be met. Valid values include ALARM and OK.
minDelayMinutesBetweenExecutions (integer) --
The minimum time, in minutes, that must elapse between automatic executions of the plan.
name (string) --
The name for a plan.
regions (list) --
The Amazon Web Services Regions for a plan.
(string) --
recoveryApproach (string) --
The recovery approach for a Region switch plan, which can be active/active (activeActive) or active/passive (activePassive).
primaryRegion (string) --
The primary Region for a plan.
owner (string) --
The owner of a plan.
version (string) --
The version for the plan.
updatedAt (datetime) --
The timestamp when the plan was last updated.
actualRecoveryTime (string) --
The actual recovery time that Region switch calculates for a plan execution. Actual recovery time includes the time for the plan to run added to the time elapsed until the application health alarms that you've specified are healthy again.
nextToken (string) --
Specifies that you want to receive the next page of results. Valid only if you received a nextToken response in the previous request. If you did, it indicates that more output is available. Set this parameter to the value provided by the previous call's nextToken response to request the next page of results.