本文档主要介绍运维编排 Java SDK 的安装和使用,适用于 1.0版本。请确保您已经开通了阿里云运维编排服务,并创建了 AccessKeyId 和 AccessKeySecret。
如果您还没有开通或者还不了解阿里云运维编排服务,请登录运维编排的产品主页进行了解。 如果您还没有创建 AccessKeyId 和 AccessKeySecret,请到阿里云 Access Key 的管理控制台创建 Access Key。
源码地址 请访问 GitHub 获取源码。
本文介绍如何安装Java SDK
环境准备 适用于Java 1.8及以上版本。
安装 在Maven项目中加入依赖项 在 Maven 工程中使用 OOS Java SDK,只需在 pom.xml 中加入相应依赖即可。以 1.0.0 版本为例,在 < dependencies > 内加入如下内容:
com.aliyun aliyun-java-sdk-oos 1.0.0
快速入门 本节介绍如何快速使用OOS Java SDK完成常见操作,如创建模板、启动执行、查询执行等。
创建模板 以下代码用于创建模板:
import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.oos.model.v20190601.*; public class Demo { public static void main(String[] args) { DefaultProfile profile = DefaultProfile.getProfile( " ", // 地域ID " ", // RAM账号的AccessKey ID " "); // RAM账号AccessKey Secret IAcsClient client = new DefaultAcsClient(profile); // 创建模板 CreateTemplateRequest request = new CreateTemplateRequest(); request.setTemplateName("MyTemplate"); request.setContent("{\n" + " "FormatVersion": "OOS-2019-06-01",\n" + " "Description": "Descirbe instances of given status",\n" + " "Parameters": {\n" + " "Status": {\n" + " "Type": "String",\n" + " "Description": "(Required) The status of the Ecs instance."\n" + " }\n" + " },\n" + " "Tasks": [\n" + " {\n" + " "Properties": {\n" + " "Parameters": { "Status": "{{ Status }}" },\n" + " "API": "DescribeInstances",\n" + " "Service": "ECS"\n" + " },\n" + " "Name": "describeInstances",\n" + " "Action": "ACS::ExecuteAPI"\n" + " }\n" + " ]\n" + "}"); // 发起请求并处理应答或异常 CreateTemplateResponse response; try { response = client.getAcsResponse(request); System.out.println(response.getTemplate().getTemplateName()); } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } }
启动执行 以下代码用于启动执行:
import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.oos.model.v20190601.*; public class Demo { public static void main(String[] args) { DefaultProfile profile = DefaultProfile.getProfile( " ", // 地域ID " ", // RAM账号的AccessKey ID " "); // RAM账号AccessKey Secret IAcsClient client = new DefaultAcsClient(profile); // 启动执行 StartExecutionRequest request = new StartExecutionRequest(); request.setTemplateName("MyTemplate"); request.setParameters("{"Status": "Running"}"); // 发起请求并处理应答或异常 StartExecutionResponse response; try { response = client.getAcsResponse(request); System.out.println(response.getExecution().getExecutionId()); } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } }
查询执行 以下代码用于查询执行:
import com.aliyuncs.profile.DefaultProfile; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.oos.model.v20190601.*; public class Demo { public static void main(String[] args) { DefaultProfile profile = DefaultProfile.getProfile( " ", // 地域ID " ", // RAM账号的AccessKey ID " "); // RAM账号AccessKey Secret IAcsClient client = new DefaultAcsClient(profile); // 创建API请求并设置参数 ListExecutionsRequest request = new ListExecutionsRequest(); request.setExecutionId(" "); // 发起请求并处理应答或异常 ListExecutionsResponse response; try { response = client.getAcsResponse(request); for(ListExecutionsResponse.Execution execution: response.getExecutions()){ System.out.println(execution.getExecutionId()); System.out.println(execution.getStatus()); } } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } }
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。