本文整理汇总了Java中com.amazonaws.services.ec2.model.LaunchSpecification.setUserData方法的典型用法代码示例。如果您正苦于以下问题:Java LaunchSpecification.setUserData方法的具体用法?Java LaunchSpecification.setUserData怎么用?Java LaunchSpecification.setUserData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.amazonaws.services.ec2.model.LaunchSpecification
的用法示例。
在下文中一共展示了LaunchSpecification.setUserData方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: launch
import com.amazonaws.services.ec2.model.LaunchSpecification; //导入方法依赖的package包/类
public List<String> launch(String workerAMI, String instanceType, int num,
double price, List<String> securityGroups, String keyName, String userData, String charset) throws UnsupportedEncodingException {
RequestSpotInstancesRequest requestRequest = new RequestSpotInstancesRequest();
requestRequest.setSpotPrice(Double.toString(price));
requestRequest.setInstanceCount(Integer.valueOf(num));
LaunchSpecification launchSpecification = new LaunchSpecification();
launchSpecification.setImageId(workerAMI);
launchSpecification.setInstanceType(instanceType);
launchSpecification.setSecurityGroups(securityGroups);
launchSpecification.setUserData(new String(Base64.encode(userData.getBytes(charset))));
launchSpecification.setKeyName(keyName); //for test
requestRequest.setLaunchSpecification(launchSpecification);
RequestSpotInstancesResult requestResult = ec2
.requestSpotInstances(requestRequest);
List<SpotInstanceRequest> requestResponses = requestResult
.getSpotInstanceRequests();
List<String> spotInstanceRequestIds = new ArrayList<String>();
for (SpotInstanceRequest requestResponse : requestResponses) {
System.out.println("Created Spot Request: "
+ requestResponse.getSpotInstanceRequestId());
spotInstanceRequestIds.add(requestResponse
.getSpotInstanceRequestId());
}
return spotInstanceRequestIds;
}
示例2: spotRequest
import com.amazonaws.services.ec2.model.LaunchSpecification; //导入方法依赖的package包/类
public void spotRequest() {
if (instances <= instancesSet.size()) {
logger.info("No more instances will be launched because there are already enough.");
return;
}
com.amazonaws.services.ec2.AmazonEC2 client = AmazonEC2.connect();
RequestSpotInstancesRequest requestRequest = new RequestSpotInstancesRequest();
requestRequest.setSpotPrice(Double.valueOf(maxPrice).toString());
// requestRequest.setInstanceCount(instances);
requestRequest.setInstanceCount(instances - instancesSet.size());
LaunchSpecification launchSpecification = new LaunchSpecification();
launchSpecification.setImageId(ami);
launchSpecification.setInstanceType(size);
if (userData != null)
launchSpecification.setUserData(Base64.encodeAsString(userData
.getBytes()));
BlockDeviceMapping blockDeviceMapping = new BlockDeviceMapping();
blockDeviceMapping.setDeviceName("/dev/sda1");
EbsBlockDevice ebs = new EbsBlockDevice();
ebs.setDeleteOnTermination(Boolean.TRUE);
ebs.setVolumeSize(diskSize);
blockDeviceMapping.setEbs(ebs);
ArrayList<BlockDeviceMapping> blockList = new ArrayList<BlockDeviceMapping>();
blockList.add(blockDeviceMapping);
launchSpecification.setBlockDeviceMappings(blockList);
ArrayList<String> securityGroups = new ArrayList<String>();
securityGroups.add(Configuration.SECURITY_GROUP_NAME);
launchSpecification.setSecurityGroups(securityGroups);
launchSpecification.setKeyName(keyName);
requestRequest.setLaunchSpecification(launchSpecification);
RequestSpotInstancesResult requestResult = client
.requestSpotInstances(requestRequest);
List<SpotInstanceRequest> reqs = requestResult
.getSpotInstanceRequests();
for (SpotInstanceRequest req : reqs)
instancesSet.add(new Instance(this, req.getInstanceId(), req
.getSpotInstanceRequestId()));
}