cloud-vehicles/muyu-load-center/src/main/java/com/aliyun/sample/AliyunEcsInstanceCreator.java

74 lines
3.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package com.aliyun.sample;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.ecs.model.v20140526.CreateInstanceRequest;
import com.aliyuncs.ecs.model.v20140526.CreateInstanceResponse;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.profile.DefaultProfile;
/**
* 阿里云ECS实例创建器示例类。
* 本类用于演示如何通过阿里云SDK在Java中创建一个ECS实例。
*/
public class AliyunEcsInstanceCreator {
/**
* 主函数创建一个阿里云ECS实例。
*
* @param args 命令行参数(未使用)
*
* 注意本示例中使用的AccessKeyId、AccessKeySecret、regionId、imageId、instanceType等信息为示意
* 实际使用时需要替换为有效的阿里云账号信息。
*/
public static void main(String[] args) {
// 设置阿里云账号的认证信息
String accessKeyId = "LTAI5tANGefs2gi8nsu4AoSZ";
String accessKeySecret = "Ut5RaJvvG7dP8hgK82qjdtvyUA6x8g";
String regionId = "cn-zhangjiakou"; // 实例所在的地域ID
String instanceName = "Test"; // 实例名称
String imageId = "m-8vb1u2bhootky8sgg2ft"; // 镜像ID
String instanceType = "ecs.t6-c2m1.large"; // 实例规格
// 初始化阿里云客户端
DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
IAcsClient client = new DefaultAcsClient(profile);
// 配置创建实例的请求参数
CreateInstanceRequest request = new CreateInstanceRequest();
request.setImageId(imageId); // 设置使用的镜像ID
request.setInstanceName(instanceName); // 设置实例名称
request.setInstanceType(instanceType); // 设置实例规格
// 配置抢占式实例的属性
request.setInstanceChargeType("PostPaid"); // 实例付费类型,此处为按量付费
request.setSpotStrategy("SpotWithPriceLimit"); // 抢占式实例的出价策略,设置为有限价格
request.setImageId(imageId); // 设置使用的镜像ID
request.setInstanceName(instanceName); // 设置实例名称
request.setInstanceType(instanceType); // 设置实例规格
// 配置网络和公网带宽
request.setVSwitchId("vpc-8vbbw0obosvd5p5i2y5nq"); // 设置实例所在的子网ID
request.setInternetMaxBandwidthOut(5); // 设置公网出带宽上限单位为Mbps
// 配置抢占式实例的属性
request.setInstanceChargeType("PostPaid"); // 实例付费类型,此处为按量付费
request.setSpotStrategy("SpotWithPriceLimit"); // 抢占式实例的出价策略,设置为有限价格
request.setSpotPriceLimit(1F); // 设置抢占式实例的最高每小时价格限制
// 发送创建实例的请求并处理响应
try {
CreateInstanceResponse response = client.getAcsResponse(request);
System.out.println("Instance Created: " + response.getInstanceId());
} catch (ClientException e) {
e.printStackTrace();
}
}
}