AWS ARC - Zonal Shift

2025/03/26 - AWS ARC - Zonal Shift - 3 updated api methods

Changes  Add new shiftType field for ARC zonal shifts.

GetManagedResource (updated) Link ¶
Changes (response)
{'zonalShifts': {'shiftType': 'ZONAL_SHIFT | PRACTICE_RUN | FIS_EXPERIMENT | '
                              'ZONAL_AUTOSHIFT'}}

Get information about a resource that's been registered for zonal shifts with Amazon Route 53 Application Recovery Controller in this Amazon Web Services Region. Resources that are registered for zonal shifts are managed resources in ARC. You can start zonal shifts and configure zonal autoshift for managed resources.

See also: AWS API Documentation

Request Syntax

client.get_managed_resource(
    resourceIdentifier='string'
)
type resourceIdentifier:

string

param resourceIdentifier:

[REQUIRED]

The identifier for the resource that Amazon Web Services shifts traffic for. The identifier is the Amazon Resource Name (ARN) for the resource.

At this time, supported resources are Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

rtype:

dict

returns:

Response Syntax

{
    'appliedWeights': {
        'string': ...
    },
    'arn': 'string',
    'autoshifts': [
        {
            'appliedStatus': 'APPLIED'|'NOT_APPLIED',
            'awayFrom': 'string',
            'startTime': datetime(2015, 1, 1)
        },
    ],
    'name': 'string',
    'practiceRunConfiguration': {
        'blockedDates': [
            'string',
        ],
        'blockedWindows': [
            'string',
        ],
        'blockingAlarms': [
            {
                'alarmIdentifier': 'string',
                'type': 'CLOUDWATCH'
            },
        ],
        'outcomeAlarms': [
            {
                'alarmIdentifier': 'string',
                'type': 'CLOUDWATCH'
            },
        ]
    },
    'zonalAutoshiftStatus': 'ENABLED'|'DISABLED',
    'zonalShifts': [
        {
            'appliedStatus': 'APPLIED'|'NOT_APPLIED',
            'awayFrom': 'string',
            'comment': 'string',
            'expiryTime': datetime(2015, 1, 1),
            'practiceRunOutcome': 'FAILED'|'INTERRUPTED'|'PENDING'|'SUCCEEDED',
            'resourceIdentifier': 'string',
            'shiftType': 'ZONAL_SHIFT'|'PRACTICE_RUN'|'FIS_EXPERIMENT'|'ZONAL_AUTOSHIFT',
            'startTime': datetime(2015, 1, 1),
            'zonalShiftId': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • appliedWeights (dict) --

      A collection of key-value pairs that indicate whether resources are active in Availability Zones or not. The key name is the Availability Zone where the resource is deployed. The value is 1 or 0.

      • (string) --

        • (float) --

    • arn (string) --

      The Amazon Resource Name (ARN) for the resource.

    • autoshifts (list) --

      An array of the autoshifts that are active for the resource.

      • (dict) --

        A complex structure that lists an autoshift that is currently active for a managed resource and information about the autoshift.

        For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

        • appliedStatus (string) --

          The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one active traffic shift. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-initiated zonal shifts, or an autoshift. The appliedStatus field for a shift that is in progress for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an appliedStatus set to APPLIED.

          The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-initiated zonal shifts > autoshifts > practice run zonal shifts.

          For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

        • awayFrom (string) --

          The Availability Zone (for example, use1-az1) that traffic is shifted away from for a resource, when Amazon Web Services starts an autoshift. Until the autoshift ends, traffic for the resource is instead directed to other Availability Zones in the Amazon Web Services Region. An autoshift can end for a resource, for example, when Amazon Web Services ends the autoshift for the Availability Zone or when you disable zonal autoshift for the resource.

        • startTime (datetime) --

          The time (UTC) when the autoshift started.

    • name (string) --

      The name of the resource.

    • practiceRunConfiguration (dict) --

      The practice run configuration for zonal autoshift that's associated with the resource.

      • blockedDates (list) --

        An array of one or more dates that you can specify when Amazon Web Services does not start practice runs for a resource.

        Specify blocked dates, in UTC, in the format YYYY-MM-DD, separated by spaces.

        • (string) --

      • blockedWindows (list) --

        An array of one or more windows of days and times that you can block ARC from starting practice runs for a resource.

        Specify the blocked windows in UTC, using the format DAY:HH:MM-DAY:HH:MM, separated by spaces. For example, MON:18:30-MON:19:30 TUE:18:30-TUE:19:30.

        • (string) --

      • blockingAlarms (list) --

        The blocking alarm for practice runs is an optional alarm that you can specify that blocks practice runs when the alarm is in an ALARM state.

        • (dict) --

          A control condition is an alarm that you specify for a practice run. When you configure practice runs with zonal autoshift for a resource, you specify Amazon CloudWatch alarms, which you create in CloudWatch to use with the practice run. The alarms that you specify are an outcome alarm, to monitor application health during practice runs and, optionally, a blocking alarm, to block practice runs from starting or to interrupt a practice run in progress.

          Control condition alarms do not apply for autoshifts.

          For more information, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

          • alarmIdentifier (string) --

            The Amazon Resource Name (ARN) for an Amazon CloudWatch alarm that you specify as a control condition for a practice run.

          • type (string) --

            The type of alarm specified for a practice run. You can only specify Amazon CloudWatch alarms for practice runs, so the only valid value is CLOUDWATCH.

      • outcomeAlarms (list) --

        The outcome alarm for practice runs is an alarm that you specify that ends a practice run when the alarm is in an ALARM state.

        • (dict) --

          A control condition is an alarm that you specify for a practice run. When you configure practice runs with zonal autoshift for a resource, you specify Amazon CloudWatch alarms, which you create in CloudWatch to use with the practice run. The alarms that you specify are an outcome alarm, to monitor application health during practice runs and, optionally, a blocking alarm, to block practice runs from starting or to interrupt a practice run in progress.

          Control condition alarms do not apply for autoshifts.

          For more information, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

          • alarmIdentifier (string) --

            The Amazon Resource Name (ARN) for an Amazon CloudWatch alarm that you specify as a control condition for a practice run.

          • type (string) --

            The type of alarm specified for a practice run. You can only specify Amazon CloudWatch alarms for practice runs, so the only valid value is CLOUDWATCH.

    • zonalAutoshiftStatus (string) --

      The status for zonal autoshift for a resource. When the autoshift status is ENABLED, Amazon Web Services shifts traffic for a resource away from an Availability Zone, on your behalf, when Amazon Web Services determines that there's an issue in the Availability Zone that could potentially affect customers.

    • zonalShifts (list) --

      The zonal shifts that are currently active for a resource.

      • (dict) --

        A complex structure that lists the zonal shifts for a managed resource and their statuses for the resource.

        • appliedStatus (string) --

          The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one active traffic shift. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-initiated zonal shifts, or an autoshift. The appliedStatus field for a shift that is in progress for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an appliedStatus set to APPLIED.

          The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-initiated zonal shifts > autoshifts > practice run zonal shifts.

          For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

        • awayFrom (string) --

          The Availability Zone (for example, use1-az1) that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

        • comment (string) --

          A comment that you enter for a customer-initiated zonal shift. Only the latest comment is retained; no comment history is maintained. That is, a new comment overwrites any existing comment string.

        • expiryTime (datetime) --

          The expiry time (expiration time) for a customer-initiated zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

          When you start a zonal shift, you specify how long you want it to be active, which ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

        • practiceRunOutcome (string) --

          The outcome, or end state, returned for a practice run. The following values can be returned:

          • PENDING: Outcome value when a practice run is in progress.

          • SUCCEEDED: Outcome value when the outcome alarm specified for the practice run configuration does not go into an ALARM state during the practice run, and the practice run was not interrupted before it completed the expected 30 minute zonal shift.

          • INTERRUPTED: Outcome value when the practice run was stopped before the expected 30 minute zonal shift duration, or there was another problem with the practice run that created an inconclusive outcome.

          • FAILED: Outcome value when the outcome alarm specified for the practice run configuration goes into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

          For more information about practice run outcomes, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

        • resourceIdentifier (string) --

          The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

          At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

        • shiftType (string) --

          Defines the zonal shift type.

        • startTime (datetime) --

          The time (UTC) when the zonal shift starts.

        • zonalShiftId (string) --

          The identifier of a zonal shift.

ListManagedResources (updated) Link ¶
Changes (response)
{'items': {'zonalShifts': {'shiftType': 'ZONAL_SHIFT | PRACTICE_RUN | '
                                        'FIS_EXPERIMENT | ZONAL_AUTOSHIFT'}}}

Lists all the resources in your Amazon Web Services account in this Amazon Web Services Region that are managed for zonal shifts in Amazon Route 53 Application Recovery Controller, and information about them. The information includes the zonal autoshift status for the resource, as well as the Amazon Resource Name (ARN), the Availability Zones that each resource is deployed in, and the resource name.

See also: AWS API Documentation

Request Syntax

client.list_managed_resources(
    maxResults=123,
    nextToken='string'
)
type maxResults:

integer

param maxResults:

The number of objects that you want to return with this call.

type nextToken:

string

param nextToken:

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.

rtype:

dict

returns:

Response Syntax

{
    'items': [
        {
            'appliedWeights': {
                'string': ...
            },
            'arn': 'string',
            'autoshifts': [
                {
                    'appliedStatus': 'APPLIED'|'NOT_APPLIED',
                    'awayFrom': 'string',
                    'startTime': datetime(2015, 1, 1)
                },
            ],
            'availabilityZones': [
                'string',
            ],
            'name': 'string',
            'practiceRunStatus': 'ENABLED'|'DISABLED',
            'zonalAutoshiftStatus': 'ENABLED'|'DISABLED',
            'zonalShifts': [
                {
                    'appliedStatus': 'APPLIED'|'NOT_APPLIED',
                    'awayFrom': 'string',
                    'comment': 'string',
                    'expiryTime': datetime(2015, 1, 1),
                    'practiceRunOutcome': 'FAILED'|'INTERRUPTED'|'PENDING'|'SUCCEEDED',
                    'resourceIdentifier': 'string',
                    'shiftType': 'ZONAL_SHIFT'|'PRACTICE_RUN'|'FIS_EXPERIMENT'|'ZONAL_AUTOSHIFT',
                    'startTime': datetime(2015, 1, 1),
                    'zonalShiftId': 'string'
                },
            ]
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      The items in the response list.

      • (dict) --

        A complex structure for a managed resource in an Amazon Web Services account with information about zonal shifts and autoshifts.

        A managed resource is a load balancer that has been registered with ARC by Elastic Load Balancing. You can start a zonal shift in ARC for a managed resource to temporarily move traffic for the resource away from an Availability Zone in an Amazon Web Services Region. You can also configure zonal autoshift for a managed resource.

        • appliedWeights (dict) --

          A collection of key-value pairs that indicate whether resources are active in Availability Zones or not. The key name is the Availability Zone where the resource is deployed. The value is 1 or 0.

          • (string) --

            • (float) --

        • arn (string) --

          The Amazon Resource Name (ARN) for the managed resource.

        • autoshifts (list) --

          An array of the autoshifts that have been completed for a resource.

          • (dict) --

            A complex structure that lists an autoshift that is currently active for a managed resource and information about the autoshift.

            For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

            • appliedStatus (string) --

              The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one active traffic shift. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-initiated zonal shifts, or an autoshift. The appliedStatus field for a shift that is in progress for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an appliedStatus set to APPLIED.

              The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-initiated zonal shifts > autoshifts > practice run zonal shifts.

              For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

            • awayFrom (string) --

              The Availability Zone (for example, use1-az1) that traffic is shifted away from for a resource, when Amazon Web Services starts an autoshift. Until the autoshift ends, traffic for the resource is instead directed to other Availability Zones in the Amazon Web Services Region. An autoshift can end for a resource, for example, when Amazon Web Services ends the autoshift for the Availability Zone or when you disable zonal autoshift for the resource.

            • startTime (datetime) --

              The time (UTC) when the autoshift started.

        • availabilityZones (list) --

          The Availability Zones that a resource is deployed in.

          • (string) --

        • name (string) --

          The name of the managed resource.

        • practiceRunStatus (string) --

          This status tracks whether a practice run configuration exists for a resource. When you configure a practice run for a resource so that a practice run configuration exists, ARC sets this value to ENABLED. If a you have not configured a practice run for the resource, or delete a practice run configuration, ARC sets the value to DISABLED.

          ARC updates this status; you can't set a practice run status to ENABLED or DISABLED.

        • zonalAutoshiftStatus (string) --

          The status of autoshift for a resource. When you configure zonal autoshift for a resource, you can set the value of the status to ENABLED or DISABLED.

        • zonalShifts (list) --

          An array of the zonal shifts for a resource.

          • (dict) --

            A complex structure that lists the zonal shifts for a managed resource and their statuses for the resource.

            • appliedStatus (string) --

              The appliedStatus field specifies which application traffic shift is in effect for a resource when there is more than one active traffic shift. There can be more than one application traffic shift in progress at the same time - that is, practice run zonal shifts, customer-initiated zonal shifts, or an autoshift. The appliedStatus field for a shift that is in progress for a resource can have one of two values: APPLIED or NOT_APPLIED. The zonal shift or autoshift that is currently in effect for the resource has an appliedStatus set to APPLIED.

              The overall principle for precedence is that zonal shifts that you start as a customer take precedence autoshifts, which take precedence over practice runs. That is, customer-initiated zonal shifts > autoshifts > practice run zonal shifts.

              For more information, see How zonal autoshift and practice runs work in the Amazon Route 53 Application Recovery Controller Developer Guide.

            • awayFrom (string) --

              The Availability Zone (for example, use1-az1) that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

            • comment (string) --

              A comment that you enter for a customer-initiated zonal shift. Only the latest comment is retained; no comment history is maintained. That is, a new comment overwrites any existing comment string.

            • expiryTime (datetime) --

              The expiry time (expiration time) for a customer-initiated zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

              When you start a zonal shift, you specify how long you want it to be active, which ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

            • practiceRunOutcome (string) --

              The outcome, or end state, returned for a practice run. The following values can be returned:

              • PENDING: Outcome value when a practice run is in progress.

              • SUCCEEDED: Outcome value when the outcome alarm specified for the practice run configuration does not go into an ALARM state during the practice run, and the practice run was not interrupted before it completed the expected 30 minute zonal shift.

              • INTERRUPTED: Outcome value when the practice run was stopped before the expected 30 minute zonal shift duration, or there was another problem with the practice run that created an inconclusive outcome.

              • FAILED: Outcome value when the outcome alarm specified for the practice run configuration goes into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

              For more information about practice run outcomes, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

            • resourceIdentifier (string) --

              The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

              At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

            • shiftType (string) --

              Defines the zonal shift type.

            • startTime (datetime) --

              The time (UTC) when the zonal shift starts.

            • zonalShiftId (string) --

              The identifier of a zonal shift.

    • 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.

ListZonalShifts (updated) Link ¶
Changes (response)
{'items': {'shiftType': 'ZONAL_SHIFT | PRACTICE_RUN | FIS_EXPERIMENT | '
                        'ZONAL_AUTOSHIFT'}}

Lists all active and completed zonal shifts in Amazon Route 53 Application Recovery Controller in your Amazon Web Services account in this Amazon Web Services Region. ListZonalShifts returns customer-initiated zonal shifts, as well as practice run zonal shifts that ARC started on your behalf for zonal autoshift.

For more information about listing autoshifts, see ">ListAutoshifts.

See also: AWS API Documentation

Request Syntax

client.list_zonal_shifts(
    maxResults=123,
    nextToken='string',
    resourceIdentifier='string',
    status='ACTIVE'|'EXPIRED'|'CANCELED'
)
type maxResults:

integer

param maxResults:

The number of objects that you want to return with this call.

type nextToken:

string

param nextToken:

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.

type resourceIdentifier:

string

param resourceIdentifier:

The identifier for the resource that you want to list zonal shifts for. The identifier is the Amazon Resource Name (ARN) for the resource.

type status:

string

param status:

A status for a zonal shift.

The Status for a zonal shift can have one of the following values:

  • ACTIVE: The zonal shift has been started and active.

  • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

  • CANCELED: The zonal shift was canceled.

rtype:

dict

returns:

Response Syntax

{
    'items': [
        {
            'awayFrom': 'string',
            'comment': 'string',
            'expiryTime': datetime(2015, 1, 1),
            'practiceRunOutcome': 'FAILED'|'INTERRUPTED'|'PENDING'|'SUCCEEDED',
            'resourceIdentifier': 'string',
            'shiftType': 'ZONAL_SHIFT'|'PRACTICE_RUN'|'FIS_EXPERIMENT'|'ZONAL_AUTOSHIFT',
            'startTime': datetime(2015, 1, 1),
            'status': 'ACTIVE'|'EXPIRED'|'CANCELED',
            'zonalShiftId': 'string'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • items (list) --

      The items in the response list.

      • (dict) --

        Lists information about zonal shifts in Amazon Route 53 Application Recovery Controller, including zonal shifts that you start yourself and zonal shifts that ARC starts on your behalf for practice runs with zonal autoshift.

        Zonal shifts are temporary, including customer-initiated zonal shifts and the zonal autoshift practice run zonal shifts that ARC starts weekly, on your behalf. A zonal shift that a customer starts can be active for up to three days (72 hours). A practice run zonal shift has a 30 minute duration.

        • awayFrom (string) --

          The Availability Zone (for example, use1-az1) that traffic is moved away from for a resource when you start a zonal shift. Until the zonal shift expires or you cancel it, traffic for the resource is instead moved to other Availability Zones in the Amazon Web Services Region.

        • comment (string) --

          A comment that you enter about the zonal shift. Only the latest comment is retained; no comment history is maintained. That is, a new comment overwrites any existing comment string.

        • expiryTime (datetime) --

          The expiry time (expiration time) for a customer-initiated zonal shift. A zonal shift is temporary and must be set to expire when you start the zonal shift. You can initially set a zonal shift to expire in a maximum of three days (72 hours). However, you can update a zonal shift to set a new expiration at any time.

          When you start a zonal shift, you specify how long you want it to be active, which ARC converts to an expiry time (expiration time). You can cancel a zonal shift when you're ready to restore traffic to the Availability Zone, or just wait for it to expire. Or you can update the zonal shift to specify another length of time to expire in.

        • practiceRunOutcome (string) --

          The outcome, or end state, of a practice run. The following values can be returned:

          • PENDING: Outcome value when the practice run is in progress.

          • SUCCEEDED: Outcome value when the outcome alarm specified for the practice run configuration does not go into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

          • INTERRUPTED: Outcome value when the practice run did not run for the expected 30 minutes or there was another problem with the practice run that created an inconclusive outcome.

          • FAILED: Outcome value when the outcome alarm specified for the practice run configuration goes into an ALARM state during the practice run, and the practice run was not interrupted before it completed.

          For more information about practice run outcomes, see Considerations when you configure zonal autoshift in the Amazon Route 53 Application Recovery Controller Developer Guide.

        • resourceIdentifier (string) --

          The identifier for the resource to include in a zonal shift. The identifier is the Amazon Resource Name (ARN) for the resource.

          At this time, you can only start a zonal shift for Network Load Balancers and Application Load Balancers with cross-zone load balancing turned off.

        • shiftType (string) --

          Defines the zonal shift type.

        • startTime (datetime) --

          The time (UTC) when the zonal shift starts.

        • status (string) --

          A status for a zonal shift.

          The Status for a zonal shift can have one of the following values:

          • ACTIVE: The zonal shift has been started and active.

          • EXPIRED: The zonal shift has expired (the expiry time was exceeded).

          • CANCELED: The zonal shift was canceled.

        • zonalShiftId (string) --

          The identifier of a zonal shift.

    • 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.