终止 Amazon EC2 实例 - Amazon SDK for .NET
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

HelloAmazon.NET 社区!请分享您的经验,帮助我们改进Amazon SDK for .NET及其学习资源进行调查。此项调查大约需要 10 分钟能完成。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

终止 Amazon EC2 实例

如果您不再需要一个或多个 Amazon EC2 实例,则可停止或终止这些实例。

此示例向您演示如何使用Amazon SDK for .NET终止 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 控制台以确认EC2 实例已被终止。