Skip to content

Commit 354b025

Browse files
author
awstools
committed
feat(client-arc-zonal-shift): Adds the option to subscribe to get notifications when a zonal autoshift occurs in a region.
1 parent 5782916 commit 354b025

14 files changed

+825
-165
lines changed

clients/client-arc-zonal-shift/README.md

Lines changed: 39 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,30 +6,37 @@
66

77
AWS SDK for JavaScript ARCZonalShift Client for Node.js, Browser and React Native.
88

9-
<p>Welcome to the Zonal Shift API Reference Guide for Amazon Route 53 Application Recovery Controller (Route 53 ARC).</p>
9+
<p>Welcome to the API Reference Guide for zonal shift and zonal autoshift in Amazon Route 53 Application Recovery Controller (Route 53 ARC).</p>
1010
<p>You can start a zonal shift to move traffic for a load balancer resource away from an Availability Zone to
1111
help your application recover quickly from an impairment in an Availability Zone. For example,
1212
you can recover your application from a developer's bad code deployment or from an
1313
Amazon Web Services infrastructure failure in a single Availability Zone.</p>
14-
<p>You can also configure zonal autoshift for a load balancer resource. Zonal autoshift
15-
is a capability in Route 53 ARC where Amazon Web Services shifts away application resource
16-
traffic from an Availability Zone, on your behalf, to help reduce your time to recovery during events.
17-
Amazon Web Services shifts away traffic for resources that are enabled for zonal autoshift whenever Amazon Web Services
18-
determines that there's an issue in the Availability Zone that could potentially affect
19-
customers.</p>
20-
<p>To ensure that zonal autoshift is safe for your application, you must
14+
<p>You can also configure zonal autoshift for supported load balancer resources. Zonal autoshift
15+
is a capability in Route 53 ARC where you authorize Amazon Web Services to shift away application resource
16+
traffic from an Availability Zone during events, on your behalf, to help reduce your time to recovery.
17+
Amazon Web Services starts an autoshift when internal telemetry indicates that there is an Availability
18+
Zone impairment that could potentially impact customers.</p>
19+
<p>To help make sure that zonal autoshift is safe for your application, you must
2120
also configure practice runs when you enable zonal autoshift for a resource. Practice runs start
22-
weekly zonal shifts for a resource, to shift
23-
traffic for the resource out of an Availability Zone. Practice runs make sure, on a regular basis,
24-
that you have enough capacity in all the Availability Zones in an Amazon Web Services Region
25-
for your application to continue to operate normally
21+
weekly zonal shifts for a resource, to shift traffic for the resource away from an Availability Zone.
22+
Practice runs help you to make sure, on a regular basis, that you have enough capacity in all the
23+
Availability Zones in an Amazon Web Services Region for your application to continue to operate normally
2624
when traffic for a resource is shifted away from one Availability Zone.</p>
2725
<important>
28-
<p>You must prescale resource capacity in all Availability Zones in the Region
29-
where your application is deployed, before you configure practice runs or enable zonal autoshift
30-
for a resource. You should not rely on scaling on demand when an autoshift or practice run
31-
starts. </p>
26+
<p>Before you configure practice runs or enable zonal autoshift, we strongly recommend
27+
that you prescale your application resource capacity in all Availability Zones in the Region where
28+
your application resources are deployed. You should not rely on scaling on demand when an
29+
autoshift or practice run starts. Zonal autoshift, including practice runs, works independently,
30+
and does not wait for auto scaling actions to complete. Relying on auto scaling, instead of
31+
pre-scaling, can result in loss of availability.</p>
32+
<p>If you use auto scaling to handle regular cycles of traffic, we strongly recommend that you configure
33+
the minimum capacity of your auto scaling to continue operating normally with the loss of an
34+
Availability Zone. </p>
3235
</important>
36+
<p>Be aware that Route 53 ARC does not inspect the health of individual resources. Amazon Web Services only starts an
37+
autoshift when Amazon Web Services telemetry detects that there is an Availability Zone impairment that could
38+
potentially impact customers. In some cases, resources might be shifted away that are not experiencing
39+
impact.</p>
3340
<p>For more information about using zonal shift and zonal autoshift, see the
3441
<a href="https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html">Amazon Route 53 Application Recovery Controller
3542
Developer Guide</a>.</p>
@@ -252,6 +259,14 @@ DeletePracticeRunConfiguration
252259

253260
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/arc-zonal-shift/command/DeletePracticeRunConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/DeletePracticeRunConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/DeletePracticeRunConfigurationCommandOutput/)
254261

262+
</details>
263+
<details>
264+
<summary>
265+
GetAutoshiftObserverNotificationStatus
266+
</summary>
267+
268+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/arc-zonal-shift/command/GetAutoshiftObserverNotificationStatusCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/GetAutoshiftObserverNotificationStatusCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/GetAutoshiftObserverNotificationStatusCommandOutput/)
269+
255270
</details>
256271
<details>
257272
<summary>
@@ -292,6 +307,14 @@ StartZonalShift
292307

293308
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/arc-zonal-shift/command/StartZonalShiftCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/StartZonalShiftCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/StartZonalShiftCommandOutput/)
294309

310+
</details>
311+
<details>
312+
<summary>
313+
UpdateAutoshiftObserverNotificationStatus
314+
</summary>
315+
316+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/arc-zonal-shift/command/UpdateAutoshiftObserverNotificationStatusCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/UpdateAutoshiftObserverNotificationStatusCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-arc-zonal-shift/Interface/UpdateAutoshiftObserverNotificationStatusCommandOutput/)
317+
295318
</details>
296319
<details>
297320
<summary>

clients/client-arc-zonal-shift/src/ARCZonalShift.ts

Lines changed: 70 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ import {
1818
DeletePracticeRunConfigurationCommandInput,
1919
DeletePracticeRunConfigurationCommandOutput,
2020
} from "./commands/DeletePracticeRunConfigurationCommand";
21+
import {
22+
GetAutoshiftObserverNotificationStatusCommand,
23+
GetAutoshiftObserverNotificationStatusCommandInput,
24+
GetAutoshiftObserverNotificationStatusCommandOutput,
25+
} from "./commands/GetAutoshiftObserverNotificationStatusCommand";
2126
import {
2227
GetManagedResourceCommand,
2328
GetManagedResourceCommandInput,
@@ -43,6 +48,11 @@ import {
4348
StartZonalShiftCommandInput,
4449
StartZonalShiftCommandOutput,
4550
} from "./commands/StartZonalShiftCommand";
51+
import {
52+
UpdateAutoshiftObserverNotificationStatusCommand,
53+
UpdateAutoshiftObserverNotificationStatusCommandInput,
54+
UpdateAutoshiftObserverNotificationStatusCommandOutput,
55+
} from "./commands/UpdateAutoshiftObserverNotificationStatusCommand";
4656
import {
4757
UpdatePracticeRunConfigurationCommand,
4858
UpdatePracticeRunConfigurationCommandInput,
@@ -63,11 +73,13 @@ const commands = {
6373
CancelZonalShiftCommand,
6474
CreatePracticeRunConfigurationCommand,
6575
DeletePracticeRunConfigurationCommand,
76+
GetAutoshiftObserverNotificationStatusCommand,
6677
GetManagedResourceCommand,
6778
ListAutoshiftsCommand,
6879
ListManagedResourcesCommand,
6980
ListZonalShiftsCommand,
7081
StartZonalShiftCommand,
82+
UpdateAutoshiftObserverNotificationStatusCommand,
7183
UpdatePracticeRunConfigurationCommand,
7284
UpdateZonalAutoshiftConfigurationCommand,
7385
UpdateZonalShiftCommand,
@@ -125,6 +137,24 @@ export interface ARCZonalShift {
125137
cb: (err: any, data?: DeletePracticeRunConfigurationCommandOutput) => void
126138
): void;
127139

140+
/**
141+
* @see {@link GetAutoshiftObserverNotificationStatusCommand}
142+
*/
143+
getAutoshiftObserverNotificationStatus(): Promise<GetAutoshiftObserverNotificationStatusCommandOutput>;
144+
getAutoshiftObserverNotificationStatus(
145+
args: GetAutoshiftObserverNotificationStatusCommandInput,
146+
options?: __HttpHandlerOptions
147+
): Promise<GetAutoshiftObserverNotificationStatusCommandOutput>;
148+
getAutoshiftObserverNotificationStatus(
149+
args: GetAutoshiftObserverNotificationStatusCommandInput,
150+
cb: (err: any, data?: GetAutoshiftObserverNotificationStatusCommandOutput) => void
151+
): void;
152+
getAutoshiftObserverNotificationStatus(
153+
args: GetAutoshiftObserverNotificationStatusCommandInput,
154+
options: __HttpHandlerOptions,
155+
cb: (err: any, data?: GetAutoshiftObserverNotificationStatusCommandOutput) => void
156+
): void;
157+
128158
/**
129159
* @see {@link GetManagedResourceCommand}
130160
*/
@@ -204,6 +234,23 @@ export interface ARCZonalShift {
204234
cb: (err: any, data?: StartZonalShiftCommandOutput) => void
205235
): void;
206236

237+
/**
238+
* @see {@link UpdateAutoshiftObserverNotificationStatusCommand}
239+
*/
240+
updateAutoshiftObserverNotificationStatus(
241+
args: UpdateAutoshiftObserverNotificationStatusCommandInput,
242+
options?: __HttpHandlerOptions
243+
): Promise<UpdateAutoshiftObserverNotificationStatusCommandOutput>;
244+
updateAutoshiftObserverNotificationStatus(
245+
args: UpdateAutoshiftObserverNotificationStatusCommandInput,
246+
cb: (err: any, data?: UpdateAutoshiftObserverNotificationStatusCommandOutput) => void
247+
): void;
248+
updateAutoshiftObserverNotificationStatus(
249+
args: UpdateAutoshiftObserverNotificationStatusCommandInput,
250+
options: __HttpHandlerOptions,
251+
cb: (err: any, data?: UpdateAutoshiftObserverNotificationStatusCommandOutput) => void
252+
): void;
253+
207254
/**
208255
* @see {@link UpdatePracticeRunConfigurationCommand}
209256
*/
@@ -257,30 +304,37 @@ export interface ARCZonalShift {
257304
}
258305

259306
/**
260-
* <p>Welcome to the Zonal Shift API Reference Guide for Amazon Route 53 Application Recovery Controller (Route 53 ARC).</p>
307+
* <p>Welcome to the API Reference Guide for zonal shift and zonal autoshift in Amazon Route 53 Application Recovery Controller (Route 53 ARC).</p>
261308
* <p>You can start a zonal shift to move traffic for a load balancer resource away from an Availability Zone to
262309
* help your application recover quickly from an impairment in an Availability Zone. For example,
263310
* you can recover your application from a developer's bad code deployment or from an
264311
* Amazon Web Services infrastructure failure in a single Availability Zone.</p>
265-
* <p>You can also configure zonal autoshift for a load balancer resource. Zonal autoshift
266-
* is a capability in Route 53 ARC where Amazon Web Services shifts away application resource
267-
* traffic from an Availability Zone, on your behalf, to help reduce your time to recovery during events.
268-
* Amazon Web Services shifts away traffic for resources that are enabled for zonal autoshift whenever Amazon Web Services
269-
* determines that there's an issue in the Availability Zone that could potentially affect
270-
* customers.</p>
271-
* <p>To ensure that zonal autoshift is safe for your application, you must
312+
* <p>You can also configure zonal autoshift for supported load balancer resources. Zonal autoshift
313+
* is a capability in Route 53 ARC where you authorize Amazon Web Services to shift away application resource
314+
* traffic from an Availability Zone during events, on your behalf, to help reduce your time to recovery.
315+
* Amazon Web Services starts an autoshift when internal telemetry indicates that there is an Availability
316+
* Zone impairment that could potentially impact customers.</p>
317+
* <p>To help make sure that zonal autoshift is safe for your application, you must
272318
* also configure practice runs when you enable zonal autoshift for a resource. Practice runs start
273-
* weekly zonal shifts for a resource, to shift
274-
* traffic for the resource out of an Availability Zone. Practice runs make sure, on a regular basis,
275-
* that you have enough capacity in all the Availability Zones in an Amazon Web Services Region
276-
* for your application to continue to operate normally
319+
* weekly zonal shifts for a resource, to shift traffic for the resource away from an Availability Zone.
320+
* Practice runs help you to make sure, on a regular basis, that you have enough capacity in all the
321+
* Availability Zones in an Amazon Web Services Region for your application to continue to operate normally
277322
* when traffic for a resource is shifted away from one Availability Zone.</p>
278323
* <important>
279-
* <p>You must prescale resource capacity in all Availability Zones in the Region
280-
* where your application is deployed, before you configure practice runs or enable zonal autoshift
281-
* for a resource. You should not rely on scaling on demand when an autoshift or practice run
282-
* starts. </p>
324+
* <p>Before you configure practice runs or enable zonal autoshift, we strongly recommend
325+
* that you prescale your application resource capacity in all Availability Zones in the Region where
326+
* your application resources are deployed. You should not rely on scaling on demand when an
327+
* autoshift or practice run starts. Zonal autoshift, including practice runs, works independently,
328+
* and does not wait for auto scaling actions to complete. Relying on auto scaling, instead of
329+
* pre-scaling, can result in loss of availability.</p>
330+
* <p>If you use auto scaling to handle regular cycles of traffic, we strongly recommend that you configure
331+
* the minimum capacity of your auto scaling to continue operating normally with the loss of an
332+
* Availability Zone. </p>
283333
* </important>
334+
* <p>Be aware that Route 53 ARC does not inspect the health of individual resources. Amazon Web Services only starts an
335+
* autoshift when Amazon Web Services telemetry detects that there is an Availability Zone impairment that could
336+
* potentially impact customers. In some cases, resources might be shifted away that are not experiencing
337+
* impact.</p>
284338
* <p>For more information about using zonal shift and zonal autoshift, see the
285339
* <a href="https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html">Amazon Route 53 Application Recovery Controller
286340
* Developer Guide</a>.</p>

0 commit comments

Comments
 (0)