本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 列出和更新路由控制和狀態 AWS CLI
建立叢集、路由控制和控制面板等 Amazon Application Recovery Controller (ARC) 資源後,您可以與叢集互動,列出和更新容錯移轉的路由控制狀態。
對於您建立的每個叢集, ARC會為您提供一組叢集端點,五個 中各一個 AWS 區域。當您呼叫叢集以擷取或將路由控制狀態設定為 On
或 時,您必須指定其中一個區域端點 ( AWS 區域 和端點 URL)Off
。當您使用 AWS CLI取得或更新路由控制狀態時,除了區域端點之外,您還必須指定區域端點--region
的 ,如本節範例所示。
您可以使用任何區域叢集端點。建議您的系統輪換區域端點,並準備好使用每個可用的端點重試。如需循序說明嘗試叢集端點的程式碼範例,請參閱 Application Recovery Controller 使用 的動作 AWS SDKs 。
如需使用 的詳細資訊 AWS CLI,請參閱 AWS CLI 命令參考。如需路由控制API動作的清單和詳細資訊的連結,請參閱 路由控制API操作。
重要
雖然您可以在 Amazon Route 53 主控台上更新路由控制狀態,但我們建議您使用 AWS CLI 或 更新路由控制狀態 AWS SDK。ARC 透過ARC路由控制資料平面提供極高的可靠性,用於重新路由流量和跨儲存格容錯移轉。如需使用 ARC 進行容錯移轉的更多建議,請參閱 中路由控制的最佳實務 ARC。
當您建立路由控制時,狀態會設為 Off
。這表示流量不會路由至該路由控制的目標儲存格。您可以執行命令 來驗證路由控制的狀態get-routing-control-state
。
若要決定要指定的區域和端點,請執行 describe-clusters
命令以檢視 ClusterEndpoints
。每個 都ClusterEndpoint
包含一個區域和對應的端點,您可以用來取得或更新路由控制狀態。 DescribeCluster 是復原控制組態API操作。我們建議您將ARC區域叢集端點的本機副本保留在書籤中,或將硬式編碼在用來重試端點的自動化程式碼中。
1. 列出路由控制項
您可以使用高度可靠的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
{}