当aws掉线时如何创建场景

时间:2018-11-14 11:35:16

标签: amazon-web-services amazon-ec2 aws-sdk

我一直在努力从EC2创建java SDK实例,并且我已经成功完成了该任务,但现在有人认为,尽管我知道它违反了AWS服务器的规定,但让我们假设这种情况云的概念仍然好像我们要处理此案一样,我无法理解如何创建方案并处理此案?

public static void main(String[] args) {

    // Set up the amazon ec2 client
    AmazonEC2 ec2Client = AmazonEC2ClientBuilder.standard()
            .withCredentials(new AWSStaticCredentialsProvider(AWS_CREDENTIALS))
            .withRegion(Regions.US_EAST_1)
            .build();

    // Launch an Amazon EC2 Instance
    RunInstancesRequest runInstancesRequest = new RunInstancesRequest().withImageId("ami-777777")
            .withInstanceType("t2.micro") // https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
            .withMinCount(1)
            .withMaxCount(1)
            .withNetworkInterfaces(new InstanceNetworkInterfaceSpecification()
                    .withAssociatePublicIpAddress(true)
                    .withDeviceIndex(0)
                    .withSubnetId("subnet-777777")
                    .withGroups("sg-777777"));

    RunInstancesResult runInstancesResult = ec2Client.runInstances(runInstancesRequest);

    Instance instance = runInstancesResult.getReservation().getInstances().get(0);
    String instanceId = instance.getInstanceId();
    System.out.println("EC2 Instance Id: " + instanceId);

    // Setting up the tags for the instance
    CreateTagsRequest createTagsRequest = new CreateTagsRequest()
            .withResources(instance.getInstanceId())
            .withTags(new Tag("Name", "codeflex-ec2"));
    ec2Client.createTags(createTagsRequest);

    // Starting the Instance
    StartInstancesRequest startInstancesRequest = new StartInstancesRequest().withInstanceIds(instanceId);

1 个答案:

答案 0 :(得分:1)

数据中心和AWS数据中心的停机时间没有区别。在设计级别的场景中,您将需要使其他服务器处于待机状态,以处理另一个区域中另一个AZ或DR(灾难恢复)站点中的流量。

  1. 您可以在AWS区域中停止/终止实例以创建停机场景。请使用Stop Ec2 instance手动停止实例。

    public StopInstancesResult stopInstances(StopInstancesRequest request) {}
    
  2. 要处理应用程序的可用性,您需要在启用自动缩放组的情况下设置应用程序负载平衡器。负载平衡器会在每个配置的时间(例如5秒2分钟,您可以选择任意值)之后检查服务器,如果当前EC2实例运行状况不佳,则会将流量路由到另一个实例。

  3. 由于所有可用区都位于同一区域的同一可用区中,因此,如果您的区域关闭,则需要准备好灾难恢复站点并部署所有最新代码。可以在区域级别的停机时间使用此站点。