本文介绍如何通过SMC Java SDK调用DescribeSourceServers查询一个或多个迁移源信息。
背景信息
您可以调用DescribeSourceServers接口批量查询迁移源信息,包括迁移任务ID、内核版本级别、迁移源系统盘大小等详细信息,详情请参见DescribeSourceServers。
代码示例
以下代码适用于查询迁移状态为InUse
(迁移中)的迁移源信息:
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.smc.model.v20190601.DescribeSourceServersRequest;
import com.aliyuncs.smc.model.v20190601.DescribeSourceServersResponse;
import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.List;
public class DescribeSourceServers {
public static void main(String[] args) {
//初始化AcsClient实例,设置地域ID及您的AccessKey信息
DefaultProfile profile = DefaultProfile.getProfile("<region-Id>", "<accessKeyId>", "<accessSecret>");
IAcsClient client = new DefaultAcsClient(profile);
//创建API请求,并设置参数
DescribeSourceServersRequest request = new DescribeSourceServersRequest();
//迁移源ID
List<String> sourceIds = new ArrayList<>();
sourceIds.add("s-bp152mkfswviw7sd****");
//sourceIds.add("s-bp152mkfswviw7sd****");
request.setSourceIds(sourceIds);
//返回的迁移源列表的页码
request.setPageNumber(1);
//分页查询时设置的每页行数
request.setPageSize(10);
//迁移源状态
request.setState("InUse");
//迁移源名称
//request.setName("smcName");
//迁移任务ID
//request.setJobId("j-bp152mkfswviwbqj****");
//发送请求获取返回值或处理异常
try {
DescribeSourceServersResponse response = client.getAcsResponse(request);
System.out.println(new Gson().toJson(response));
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
e.printStackTrace();
}
}
}
执行结果
{
"requestId": "766829A6-BC4D-47D2-A0C6-08870FEA785B",
"totalCount": 1,
"pageNumber": 1,
"pageSize": 10,
"sourceServers": [{
"sourceId": "s-bp152mkfswviw7sd****",
"jobId": "j-bp152mkfswviwbqj****",
"agentVersion": "2.0.5",
"name": "smcName",
"description": "Server Source Imported By GotoAliyun. Hostname: smcName IP Address: 192.***.***.29",
"kernelLevel": 0,
"platform": "CentOS",
"architecture": "x86_64",
"systemDiskSize": 40,
"replicationDriver": "SMT",
"systemInfo": "{\"agent_mode\":\"daemon\",\"agent_type\":\"aliyun\",\"client_type\":\"\",\"cores\":\"2\",\"cpu_info\":\"\",\"cpu_usage\":\"1.99\",\"hostname\":\"smcName\",\"ipv4\":\"192.***.***.29\",\"memory\":\"1.00\",\"memory_usage\":\"0.38\"}",
"creationTime": "2020-01-08T06:38:20Z",
"state": "InUse",
"errorCode": "SourceServer.Offline",
"heartbeatRate": 30,
"dataDisks": []
}]
}