列出並更新路由控制項與狀態 AWS CLI - Amazon Route 53 Application Recovery Controller

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

列出並更新路由控制項與狀態 AWS CLI

建立 Amazon Route 53 應用程式復原控制器資源 (例如叢集、路由控制和控制面板) 之後,您可以與叢集互動,列出和更新容錯移轉的路由控制狀態。

Route 53 會針對您建立的每個叢集ARC提供一組叢集端點,每個叢集端點中的五個端點中各一個 AWS 區域。當您呼叫叢集以擷取或將路由控制狀態設定為或時,必須指定這些區域端點之一 ( AWS 區域 和端點URL) OffOn當您使用 AWS CLI、取得或更新路由控制狀態時,除了區域端點之外,您還必須指定地區端點--region的,如本節中的範例所示。

您可以使用任何區域叢集端點。我們建議您的系統在區域端點之間輪換,並準備好重試每個可用的端點。如需依序說明嘗試叢集端點的程式碼範例,請參閱應用程式復原控制器的動作 AWS SDKs

若要取得有關使用的更多資訊 AWS CLI,請參閱《 AWS CLI 指令參考》。如需路由控制API動作的清單與詳細資訊的連結,請參閱 製程控制API作業

重要

雖然您可以在 Amazon Route 53 主控台上更新路由控制狀態,但我們建議您使用 AWS CLI 或更新路由控制狀態 AWS SDK。Route 53 透過 Route 53 ARC 路由控制資料平面ARC提供極高的可靠性,可用於重新路由流量和跨儲存格的容錯移轉。如需使用 Route 53 進行容錯移轉ARC的詳細建議,請參閱路 Route 53 中路由控制的最佳實踐 ARC

當您建立路由控制時,狀態會設定為Off。這表示流量不會路由至該路由控制的目標儲存格。您可以執行指令來驗證路由控制項的狀態get-routing-control-state

若要確定要指定的區域和端點,請執行指describe-clusters令以檢視ClusterEndpoints。每個都ClusterEndpoint包括一個區域和對應的端點,您可以用來取得或更新路由控制狀態。 DescribeCluster是復原控制組態API作業。我們建議您將 Route 53 ARC 區域叢集端點的本機副本保留在書籤或自動化程式碼中以硬式編碼方式保留,以便重試端點。

1. 列出路由控制

您可以使用高度可靠的 Route 53 ARC 資料平面端點來檢視路由控制和路由控制狀態。

1. 列出特定控制台的路由控制項。如果未指定控制面板,則list-routing-controls返回叢集中的所有路由控制項。

aws route53-recovery-cluster list-routing-controls --control-panel-arn \ arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456 \ --region us-west-2 \ --endpoint-url https://host-dddddd.us-west-2.example.com/v1
{ "RoutingControls": [{ "ControlPanelArn": "arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456", "ControlPanelName": "ExampleControlPanel", "RoutingControlArn": "arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/abcdefg1234567", "RoutingControlName": "RCOne", "RoutingControlState": "On" }, { "ControlPanelArn": "arn:aws:route53-recovery-control::023759465626:controlpanel/0123456bbbbbbb0123456bbbbbb0123456", "ControlPanelName": "ExampleControlPanel", "RoutingControlArn": "arn:aws:route53-recovery-control::023759465626:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/zzzzxxxxyyyy123456", "RoutingControlName": "RCTwo", "RoutingControlState": "Off" } ]

2. 取得路由控制項

2. 取得路由控制狀態。

aws route53-recovery-cluster get-routing-control-state --routing-control-arn \ arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/abcdefg1234567 \ --region us-west-2 \ --endpoint-url https://host-dddddd.us-west-2.example.com/v1
{"RoutingControlArn": "arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/abcdefg1234567", "RoutingControlName": "RCOne", "RoutingControlState": "On" }

2. 更新製程控制

若要將流量路由傳送至路由控制項控制的目標端點,請將路由控制狀態更新為On。執行指令來更新路由控制狀態update-routing-control-state。(請求成功時,響應為空。)

2a. 更新路由控制狀態。

aws route53-recovery-cluster update-routing-control-state \ --routing-control-arn \ arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/abcdefg1234567 \ --routing-control-state On \ --region us-west-2 \ --endpoint-url https://host-dddddd.us-west-2.example.com/v1
{}

您可以使用一個API呼叫來同時更新多個路由控制項:update-routing-control-states。(請求成功時,響應為空。)

2b. 一次更新數個製程控制狀態 (批次更新)。

aws route53-recovery-cluster update-routing-control-states \ --update-routing-control-state-entries \ '[{"RoutingControlArn": "arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/abcdefg1234567", "RoutingControlState": "Off"}, \ {"RoutingControlArn": "arn:aws:route53-recovery-control::111122223333:controlpanel/0123456bbbbbbb0123456bbbbbb0123456/routingcontrol/hijklmnop987654321", "RoutingControlState": "On"}]' \ --region us-west-2 \ --endpoint-url https://host-dddddd.us-west-2.example.com/v1
{}