可以使用 Site Recovery Manager REST API 运行恢复计划。
过程
- 发出 POST 请求以登录到主站点。
POST BASE_URL/api/rest/srm/API_VERSION/session
- 发出 GET 请求以获取配对 ID 和本地 vCenter Server ID。
GET BASE_URL/api/rest/srm/v1/pairings/
示例响应:[ { "pairing_id": "7ae3c72d-9fd6-3157-bec5-07c2982bd1e8", "local_vc_server": { "id": "0a98c22d-a553-47e4-bd56-2844f45d8ef6", "url": "https://s2-srm2-219-12.eng.vmware.com:443/sdk", "name": "s2-srm2-219-12.eng.vmware.com", "server_status": "OK", }, ... ]
保存配对 ID 和本地 vCenter Server ID。
- 发出 GET 请求以获取所有现有恢复计划的列表。
GET BASE_URL/api/rest/srm/v1/pairings/PAIRING_ID/recovery-management/plans
将 PAIRING_ID 替换为在“步骤 1”中记录的值。
示例响应:[ { "id": "DrRecoveryRecoveryPlan:08ba3a70-5770-4089-a395-f11226e6fe21:93eb1820-f2fd-4238-b8fb-418cd96c1146", "status": "TEST_COMPLETE", "protected_site_name": "primary-vc", "recovery_site_name": "secondary-vc", "protected_vc_guid": "0a98c22d-a553-47e4-bd56-2844f45d8ef6", "recovery_vc_guid": "71541212-0cb3-409f-9974-1733cd53d993", "name": "rp2", "description": null, "location": "DrFolder:DrRecoveryRootFolder:93eb1820-f2fd-4238-b8fb-418cd96c1146", "location_name": "Recovery Plans", "progress": 0, "is_running": false }, {...}, {...}, {...}, ]
保存恢复计划 ID。
- 通过发出 POST 请求来登录到远程站点。
POST BASE_URL/api/rest/srm/v1/pairings/PAIRING_ID/remote-session
将 PAIRING_ID 替换为在“步骤 1”中记录的值。
在“身份验证”标头中输入远程 Platform Services Controller 的用户名和密码。 - 发出 POST 请求以运行恢复计划。
POST BASE_URL/api/rest/srm/v1/pairings/PAIRING_ID/recovery-management/plans/RECOVERY_PLAN_ID/actions/recovery
将 PAIRING_ID 替换为在步骤 1 中记录的值,并将 RECOVERY_PLAN_ID 替换为在步骤 2 中记录的值。
示例响应:{ "skip_protection_site_operations": "false", "migrate_eligible_vms": "false", "sync_data": "true", "planned_failover": "true" }