Skip to content

Commit a0a37d0

Browse files
author
AWS
committed
Route53 Recovery Cluster Update: Amazon Route 53 Application Recovery Controller's routing control - Routing Control Data Plane APIs help you update the state (On/Off) of the routing controls to reroute traffic across application replicas in a 100% available manner.
1 parent a436e91 commit a0a37d0

File tree

4 files changed

+378
-0
lines changed

4 files changed

+378
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"type": "feature",
3+
"category": "Route53 Recovery Cluster",
4+
"contributor": "",
5+
"description": "Amazon Route 53 Application Recovery Controller's routing control - Routing Control Data Plane APIs help you update the state (On/Off) of the routing controls to reroute traffic across application replicas in a 100% available manner."
6+
}
+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<?xml version="1.0"?>
2+
<!--
3+
~ Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4+
~
5+
~ Licensed under the Apache License, Version 2.0 (the "License").
6+
~ You may not use this file except in compliance with the License.
7+
~ A copy of the License is located at
8+
~
9+
~ http://aws.amazon.com/apache2.0
10+
~
11+
~ or in the "license" file accompanying this file. This file is distributed
12+
~ on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
13+
~ express or implied. See the License for the specific language governing
14+
~ permissions and limitations under the License.
15+
-->
16+
17+
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
18+
xmlns="http://maven.apache.org/POM/4.0.0"
19+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
20+
<modelVersion>4.0.0</modelVersion>
21+
<parent>
22+
<groupId>software.amazon.awssdk</groupId>
23+
<artifactId>services</artifactId>
24+
<version>2.17.6-SNAPSHOT</version>
25+
</parent>
26+
<artifactId>route53recoverycluster</artifactId>
27+
<name>AWS Java SDK :: Services :: Route53 Recovery Cluster</name>
28+
<description>The AWS Java SDK for Route53 Recovery Cluster module holds the client classes that are used for
29+
communicating with Route53 Recovery Cluster.
30+
</description>
31+
<url>https://aws.amazon.com/sdkforjava</url>
32+
<build>
33+
<plugins>
34+
<plugin>
35+
<groupId>org.apache.maven.plugins</groupId>
36+
<artifactId>maven-jar-plugin</artifactId>
37+
<configuration>
38+
<archive>
39+
<manifestEntries>
40+
<Automatic-Module-Name>software.amazon.awssdk.services.route53recoverycluster</Automatic-Module-Name>
41+
</manifestEntries>
42+
</archive>
43+
</configuration>
44+
</plugin>
45+
</plugins>
46+
</build>
47+
48+
<dependencies>
49+
<dependency>
50+
<groupId>software.amazon.awssdk</groupId>
51+
<artifactId>protocol-core</artifactId>
52+
<version>${awsjavasdk.version}</version>
53+
</dependency>
54+
<dependency>
55+
<groupId>software.amazon.awssdk</groupId>
56+
<artifactId>aws-json-protocol</artifactId>
57+
<version>${awsjavasdk.version}</version>
58+
</dependency>
59+
</dependencies>
60+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"pagination": {
3+
}
4+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,308 @@
1+
{
2+
"version":"2.0",
3+
"metadata":{
4+
"apiVersion":"2019-12-02",
5+
"endpointPrefix":"route53-recovery-cluster",
6+
"jsonVersion":"1.0",
7+
"protocol":"json",
8+
"serviceFullName":"Route53 Recovery Cluster",
9+
"serviceId":"Route53 Recovery Cluster",
10+
"signatureVersion":"v4",
11+
"signingName":"route53-recovery-cluster",
12+
"targetPrefix":"ToggleCustomerAPI",
13+
"uid":"route53-recovery-cluster-2019-12-02"
14+
},
15+
"operations":{
16+
"GetRoutingControlState":{
17+
"name":"GetRoutingControlState",
18+
"http":{
19+
"method":"POST",
20+
"requestUri":"/"
21+
},
22+
"input":{"shape":"GetRoutingControlStateRequest"},
23+
"output":{"shape":"GetRoutingControlStateResponse"},
24+
"errors":[
25+
{"shape":"AccessDeniedException"},
26+
{"shape":"InternalServerException"},
27+
{"shape":"ResourceNotFoundException"},
28+
{"shape":"ValidationException"},
29+
{"shape":"ThrottlingException"},
30+
{"shape":"EndpointTemporarilyUnavailableException"}
31+
],
32+
"documentation":"<p>Get the state for a routing control. A routing control is a simple on/off switch that you can use to route traffic to cells. When the state is On, traffic flows to a cell. When it's off, traffic does not flow. </p> <p>Before you can create a routing control, you first must create a cluster to host the control. For more information, see <a href=\"https://docs.aws.amazon.com/recovery-cluster/latest/api/cluster.html\">CreateCluster</a>. Access one of the endpoints for the cluster to get or update the routing control state to redirect traffic.</p> <p>For more information about working with routing controls, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Routing control</a> in the Route 53 Application Recovery Controller Developer Guide.</p>"
33+
},
34+
"UpdateRoutingControlState":{
35+
"name":"UpdateRoutingControlState",
36+
"http":{
37+
"method":"POST",
38+
"requestUri":"/"
39+
},
40+
"input":{"shape":"UpdateRoutingControlStateRequest"},
41+
"output":{"shape":"UpdateRoutingControlStateResponse"},
42+
"errors":[
43+
{"shape":"AccessDeniedException"},
44+
{"shape":"InternalServerException"},
45+
{"shape":"ResourceNotFoundException"},
46+
{"shape":"ValidationException"},
47+
{"shape":"ThrottlingException"},
48+
{"shape":"EndpointTemporarilyUnavailableException"},
49+
{"shape":"ConflictException"}
50+
],
51+
"documentation":"<p>Set the state of the routing control to reroute traffic. You can set the value to be On or Off. When the state is On, traffic flows to a cell. When it's off, traffic does not flow.</p> <p>For more information about working with routing controls, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Routing control</a> in the Route 53 Application Recovery Controller Developer Guide.</p>"
52+
},
53+
"UpdateRoutingControlStates":{
54+
"name":"UpdateRoutingControlStates",
55+
"http":{
56+
"method":"POST",
57+
"requestUri":"/"
58+
},
59+
"input":{"shape":"UpdateRoutingControlStatesRequest"},
60+
"output":{"shape":"UpdateRoutingControlStatesResponse"},
61+
"errors":[
62+
{"shape":"AccessDeniedException"},
63+
{"shape":"InternalServerException"},
64+
{"shape":"ResourceNotFoundException"},
65+
{"shape":"ValidationException"},
66+
{"shape":"ThrottlingException"},
67+
{"shape":"EndpointTemporarilyUnavailableException"},
68+
{"shape":"ConflictException"}
69+
],
70+
"documentation":"<p>Set multiple routing control states. You can set the value for each state to be On or Off. When the state is On, traffic flows to a cell. When it's off, traffic does not flow.</p> <p>For more information about working with routing controls, see <a href=\"https://docs.aws.amazon.com/r53recovery/latest/dg/routing-control.html\">Routing control</a> in the Route 53 Application Recovery Controller Developer Guide.</p>"
71+
}
72+
},
73+
"shapes":{
74+
"AccessDeniedException":{
75+
"type":"structure",
76+
"required":["message"],
77+
"members":{
78+
"message":{"shape":"String"}
79+
},
80+
"documentation":"<p>You don't have sufficient permissions to query the routing control state.</p>",
81+
"exception":true
82+
},
83+
"Arn":{
84+
"type":"string",
85+
"max":255,
86+
"min":1,
87+
"pattern":"^[A-Za-z0-9:\\/_-]*$"
88+
},
89+
"ConflictException":{
90+
"type":"structure",
91+
"required":[
92+
"message",
93+
"resourceId",
94+
"resourceType"
95+
],
96+
"members":{
97+
"message":{
98+
"shape":"String",
99+
"documentation":"Description of the ConflictException error"
100+
},
101+
"resourceId":{
102+
"shape":"String",
103+
"documentation":"Identifier of the resource in use"
104+
},
105+
"resourceType":{
106+
"shape":"String",
107+
"documentation":"Type of the resource in use"
108+
}
109+
},
110+
"documentation":"<p>There was a conflict with this request. Try again.</p>",
111+
"exception":true
112+
},
113+
"EndpointTemporarilyUnavailableException":{
114+
"type":"structure",
115+
"required":["message"],
116+
"members":{
117+
"message":{"shape":"String"}
118+
},
119+
"documentation":"<p>The cluster endpoint isn't available. Try another cluster endpoint.</p>",
120+
"exception":true
121+
},
122+
"GetRoutingControlStateRequest":{
123+
"type":"structure",
124+
"required":["RoutingControlArn"],
125+
"members":{
126+
"RoutingControlArn":{
127+
"shape":"Arn",
128+
"documentation":"<p>The Amazon Resource Number (ARN) for the routing control that you want to get the state for.</p>"
129+
}
130+
}
131+
},
132+
"GetRoutingControlStateResponse":{
133+
"type":"structure",
134+
"required":[
135+
"RoutingControlArn",
136+
"RoutingControlState"
137+
],
138+
"members":{
139+
"RoutingControlArn":{
140+
"shape":"Arn",
141+
"documentation":"<p>The Amazon Resource Number (ARN) of the response.</p>"
142+
},
143+
"RoutingControlState":{
144+
"shape":"RoutingControlState",
145+
"documentation":"<p>The state of the routing control.</p>"
146+
}
147+
}
148+
},
149+
"InternalServerException":{
150+
"type":"structure",
151+
"required":["message"],
152+
"members":{
153+
"message":{"shape":"String"},
154+
"retryAfterSeconds":{"shape":"RetryAfterSeconds"}
155+
},
156+
"documentation":"<p>There was an unexpected error during processing of the request.</p>",
157+
"exception":true,
158+
"fault":true
159+
},
160+
"ResourceNotFoundException":{
161+
"type":"structure",
162+
"required":[
163+
"message",
164+
"resourceId",
165+
"resourceType"
166+
],
167+
"members":{
168+
"message":{"shape":"String"},
169+
"resourceId":{
170+
"shape":"String",
171+
"documentation":"Hypothetical resource identifier that was not found"
172+
},
173+
"resourceType":{
174+
"shape":"String",
175+
"documentation":"Hypothetical resource type that was not found"
176+
}
177+
},
178+
"documentation":"<p>The request references a routing control that was not found.</p>",
179+
"exception":true
180+
},
181+
"RetryAfterSeconds":{
182+
"type":"integer",
183+
"documentation":"Advice to clients on when the call can be safely retried"
184+
},
185+
"RoutingControlState":{
186+
"type":"string",
187+
"enum":[
188+
"On",
189+
"Off"
190+
]
191+
},
192+
"String":{"type":"string"},
193+
"ThrottlingException":{
194+
"type":"structure",
195+
"required":["message"],
196+
"members":{
197+
"message":{"shape":"String"},
198+
"retryAfterSeconds":{"shape":"RetryAfterSeconds"}
199+
},
200+
"documentation":"<p>The request was denied because of request throttling.</p>",
201+
"exception":true
202+
},
203+
"UpdateRoutingControlStateEntries":{
204+
"type":"list",
205+
"member":{"shape":"UpdateRoutingControlStateEntry"}
206+
},
207+
"UpdateRoutingControlStateEntry":{
208+
"type":"structure",
209+
"required":[
210+
"RoutingControlArn",
211+
"RoutingControlState"
212+
],
213+
"members":{
214+
"RoutingControlArn":{
215+
"shape":"Arn",
216+
"documentation":"<p>The Amazon Resource Number (ARN) for the routing control state entry.</p>"
217+
},
218+
"RoutingControlState":{
219+
"shape":"RoutingControlState",
220+
"documentation":"<p>The routing control state in a set of routing control state entries.</p>"
221+
}
222+
},
223+
"documentation":"<p>A routing control state.</p>"
224+
},
225+
"UpdateRoutingControlStateRequest":{
226+
"type":"structure",
227+
"required":[
228+
"RoutingControlArn",
229+
"RoutingControlState"
230+
],
231+
"members":{
232+
"RoutingControlArn":{
233+
"shape":"Arn",
234+
"documentation":"<p>The Amazon Resource Number (ARN) for the routing control that you want to update the state for.</p>"
235+
},
236+
"RoutingControlState":{
237+
"shape":"RoutingControlState",
238+
"documentation":"<p>The state of the routing control. You can set the value to be On or Off.</p>"
239+
}
240+
}
241+
},
242+
"UpdateRoutingControlStateResponse":{
243+
"type":"structure",
244+
"members":{
245+
}
246+
},
247+
"UpdateRoutingControlStatesRequest":{
248+
"type":"structure",
249+
"required":["UpdateRoutingControlStateEntries"],
250+
"members":{
251+
"UpdateRoutingControlStateEntries":{
252+
"shape":"UpdateRoutingControlStateEntries",
253+
"documentation":"<p>A set of routing control entries that you want to update.</p>"
254+
}
255+
}
256+
},
257+
"UpdateRoutingControlStatesResponse":{
258+
"type":"structure",
259+
"members":{
260+
}
261+
},
262+
"ValidationException":{
263+
"type":"structure",
264+
"required":["message"],
265+
"members":{
266+
"message":{"shape":"String"},
267+
"reason":{"shape":"ValidationExceptionReason"},
268+
"fields":{"shape":"ValidationExceptionFieldList"}
269+
},
270+
"documentation":"<p>There was a validation error on the request.</p>",
271+
"exception":true
272+
},
273+
"ValidationExceptionField":{
274+
"type":"structure",
275+
"required":[
276+
"name",
277+
"message"
278+
],
279+
"members":{
280+
"name":{
281+
"shape":"String",
282+
"documentation":"<p>The field that had the validation exception.</p>"
283+
},
284+
"message":{
285+
"shape":"String",
286+
"documentation":"<p>Information about the validation exception.</p>"
287+
}
288+
},
289+
"documentation":"<p>There was a validation error on the request.</p>"
290+
},
291+
"ValidationExceptionFieldList":{
292+
"type":"list",
293+
"member":{"shape":"ValidationExceptionField"},
294+
"documentation":"The fields that caused the error, if applicable"
295+
},
296+
"ValidationExceptionReason":{
297+
"type":"string",
298+
"documentation":"Reason the request failed validation",
299+
"enum":[
300+
"unknownOperation",
301+
"cannotParse",
302+
"fieldValidationFailed",
303+
"other"
304+
]
305+
}
306+
},
307+
"documentation":"<p>Welcome to the Amazon Route 53 Application Recovery Controller API Reference Guide for Recovery Control Data Plane .</p> <p>Recovery control in Route 53 Application Recovery Controller includes extremely reliable routing controls that enable you to recover applications by rerouting traffic, for example, across Availability Zones or AWS Regions. Routing controls are simple on/off switches hosted on a cluster. A cluster is a set of five redundant regional endpoints against which you can execute API calls to update or get the state of routing controls. You use routing controls to failover traffic to recover your application across Availability Zones or Regions.</p> <p>This API guide includes information about how to get and update routing control states in Route 53 Application Recovery Controller.</p> <p>For more information about Route 53 Application Recovery Controller, see the following:</p> <ul> <li> <p>You can create clusters, routing controls, and control panels by using the control plane API for Recovery Control. For more information, see <a href=\"https://docs.aws.amazon.com/recovery-cluster/latest/api/\">Amazon Route 53 Application Recovery Controller Recovery Control API Reference</a>.</p> </li> <li> <p>Route 53 Application Recovery Controller also provides continuous readiness checks to ensure that your applications are scaled to handle failover traffic. For more information about the related API actions, see <a href=\"https://docs.aws.amazon.com/recovery-readiness/latest/api/\">Amazon Route 53 Application Recovery Controller Recovery Readiness API Reference</a>.</p> </li> <li> <p>For more information about creating resilient applications and preparing for recovery readiness with Route 53 Application Recovery Controller, see the <a href=\"r53recovery/latest/dg/\">Amazon Route 53 Application Recovery Controller Developer Guide</a>.</p> </li> </ul>"
308+
}

0 commit comments

Comments
 (0)