的版本 4 (V4) 适用于 .NET 的 SDK 正在预览中!要在预览版中查看有关此新版本的信息,请参阅 适用于 .NET 的 AWS SDK (版本 4 预览版)开发者指南。
请注意,SDK 的 V4 处于预览版,因此其内容可能会发生变化。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
终止 Amazon 实例 EC2
当您不再需要一个或多个 Amazon EC2 实例时,可以将其终止。
此示例向您展示如何使用终 适用于 .NET 的 SDK 止 EC2 实例。它以实例 ID 作为输入。
NuGet 包裹:
编程元素:
using System;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.EC2;
using Amazon.EC2.Model;
namespace EC2TerminateInstance
{
class Program
{
static async Task Main(string[] args)
{
if((args.Length == 1) && (args[0].StartsWith("i-")))
{
// Terminate the instance
var ec2Client = new AmazonEC2Client();
await TerminateInstance(ec2Client, args[0]);
}
else
{
Console.WriteLine("\nCommand-line argument missing or incorrect.");
Console.WriteLine("\nUsage: EC2TerminateInstance instance-ID");
Console.WriteLine(" instance-ID - The EC2 instance you want to terminate.");
return;
}
}
//
// Method to terminate an EC2 instance
private static async Task TerminateInstance(IAmazonEC2 ec2Client, string instanceID)
{
var request = new TerminateInstancesRequest{
InstanceIds = new List<string>() { instanceID }};
TerminateInstancesResponse response =
await ec2Client.TerminateInstancesAsync(new TerminateInstancesRequest{
InstanceIds = new List<string>() { instanceID }
});
foreach (InstanceStateChange item in response.TerminatingInstances)
{
Console.WriteLine("Terminated instance: " + item.InstanceId);
Console.WriteLine("Instance state: " + item.CurrentState.Name);
}
}
}
}
运行该示例后,最好登录 Amazon EC2 控制台