Amazon EC2 인스턴스 토폴로지 작동 방식 - Amazon Elastic Compute Cloud

Amazon EC2 인스턴스 토폴로지 작동 방식

모든 EC2 인스턴스는 노드 세트에 연결됩니다. 노드 세트는 3개의 네트워크 노드로 구성되며, 각 노드는 AWS 네트워크의 서로 다른 계층을 나타냅니다. 네트워크 계층은 3개 이상의 계층으로 구성된 계층 구조로 정렬됩니다. 노드 세트는 이 계층 구조의 하향식 뷰를 제공하며, 맨 아래 계층은 인스턴스에 가장 가깝게 연결되어 있습니다.

노드 세트에 대한 정보를 인스턴스 토폴로지라고 합니다.

다음 다이어그램은 인스턴스 토폴로지를 이해하는 데 사용할 수 있는 시각적 표현을 제공합니다. 네트워크 노드는 NN1~NN7로 식별됩니다. 숫자 i, ii, iii는 네트워크 계층을 식별합니다. 숫자 1, 2, 3, 4는 EC2 인스턴스를 식별합니다. 인스턴스는 iii로 식별되는 하단 계층의 노드에 연결됩니다. 둘 이상의 인스턴스가 동일한 노드에 연결할 수 있습니다.

인스턴스 토폴로지를 그래픽으로 표현한 것입니다.

이 예제에서는 다음이 적용됩니다.

  • 인스턴스 1은 계층 iii의 네트워크 노드 4(NN4)에 연결됩니다. 이 예제에서 NN4는 계층 ii의 네트워크 노드 2(NN2)에 연결되고, NN2는 네트워크 계층의 최상위인 계층 i의 네트워크 노드 1(NN1)에 연결됩니다. 네트워크 노드 세트는 상위 계층에서 하위 계층까지 계층적으로 표현되는 NN1, NN2, NN4로 구성됩니다.

  • 인스턴스 2는 네트워크 노드 4(NN4)에도 연결됩니다. 인스턴스 1과 인스턴스 2는 동일한 네트워크 노드 세트(NN1, NN2, NN4)를 공유합니다.

  • 인스턴스 3은 네트워크 노드 5(NN5)에 연결됩니다. NN5는 NN2에 연결되고 NN2는 NN1에 연결됩니다. 인스턴스 3의 네트워크 노드 세트는 NN1, NN2, NN5입니다.

  • 인스턴스 4는 네트워크 노드 6(NN6)에 연결됩니다. 네트워크 노드 세트는 NN1, NN3, NN6입니다.

인스턴스 1, 2, 3의 근접성을 고려할 때 인스턴스 1과 2는 동일한 네트워크 노드(NN4)에 연결되기 때문에 서로 더 가깝고, 인스턴스 3은 다른 네트워크 노드(NN5)에 연결되기 때문에 더 멀리 떨어져 있습니다.

이 다이어그램에 있는 모든 인스턴스의 근접성을 고려할 때 인스턴스 1, 2, 3은 네트워크 노드 세트에서 NN2를 공유하므로 인스턴스 4보다 서로 더 가깝습니다.

일반적으로 두 인스턴스에 연결된 네트워크 노드가 같으면 인스턴스 1과 2의 경우처럼 이러한 인스턴스는 물리적으로 서로 가깝습니다. 또한 네트워크 노드 간 홉 수가 적을수록 인스턴스는 서로 더 가까워집니다. 예를 들어, 인스턴스 1과 인스턴스 3은 인스턴스 4와 공통으로 사용하는 네트워크 노드(NN1)보다 공통 네트워크 노드(NN2)에 대한 홉 수가 적기 때문에 인스턴스 4보다 서로 더 가깝습니다.

이 예제에서는 네트워크 노드 7(NN7)에서 실행되는 인스턴스가 없으므로 API 출력에 NN7이 포함되지 않습니다.

출력을 해석하는 방법

DescribeInstanceTopology API를 사용하여 인스턴스 토폴로지 정보를 가져옵니다. 출력에서는 인스턴스의 기본 네트워크 토폴로지에 대한 계층 보기를 제공합니다.

다음 예제 출력은 위 다이어그램에 있는 4개 인스턴스의 네트워크 토폴로지 정보에 해당합니다. 이 예제의 목적을 위해 예제 출력에 설명이 포함되어 있습니다.

출력의 다음 정보에 유의해야 합니다.

  • NetworkNodes는 인스턴스의 네트워크 노드 세트를 설명합니다.

  • 각 네트워크 노드 세트에서 네트워크 노드는 위에서 아래의 계층적 순서로 나열됩니다.

  • 인스턴스에 연결된 네트워크 노드는 목록의 마지막 네트워크 노드(맨 아래 계층)입니다.

  • 어떤 인스턴스가 서로 가까운지 알아보려면 먼저 맨 아래 계층에서 공통 네트워크 노드를 찾습니다. 하위 계층에 공통 네트워크 노드가 없는 경우 상위 계층에서 공통 네트워크 노드를 찾습니다.

다음 예제 출력에서 i-1111111111examplei-2222222222example은 맨 아래 계층에 공통된 네트워크 노드 nn-4444444444example이 있기 때문에 이 예제의 다른 인스턴스에 비해 서로 가장 가깝게 위치합니다.

{ "Instances": [ { "InstanceId": "i-1111111111example", //Corresponds to instance 1 "InstanceType": "p4d.24xlarge", "GroupName": "ML-group", "NetworkNodes": [ "nn-1111111111example", //Corresponds to NN1 in layer i "nn-2222222222example", //Corresponds to NN2 in layer ii "nn-4444444444example" //Corresponds to NN4 in layer iii - bottom layer, connected to the instance ], "ZoneId": "usw2-az2", "AvailabilityZone": "us-west-2a" }, { "InstanceId": "i-2222222222example", //Corresponds to instance 2 "InstanceType": "p4d.24xlarge", "NetworkNodes": [ "nn-1111111111example", //Corresponds to NN1 - layer i "nn-2222222222example", //Corresponds to NN2 - layer ii "nn-4444444444example" //Corresponds to NN4 - layer iii - connected to instance ], "ZoneId": "usw2-az2", "AvailabilityZone": "us-west-2a" }, { "InstanceId": "i-3333333333example", //Corresponds to instance 3 "InstanceType": "trn1.32xlarge", "NetworkNodes": [ "nn-1111111111example", //Corresponds to NN1 - layer i "nn-2222222222example", //Corresponds to NN2 - layer ii "nn-5555555555example" //Corresponds to NN5 - layer iii - connected to instance ], "ZoneId": "usw2-az2", "AvailabilityZone": "us-west-2a" }, { "InstanceId": "i-444444444example", //Corresponds to instance 4 "InstanceType": "trn1.2xlarge", "NetworkNodes": [ "nn-1111111111example", //Corresponds to NN1 - layer i "nn-3333333333example", //Corresponds to NN3 - layer ii "nn-6666666666example" //Corresponds to NN6 - layer iii - connected to instance ], "ZoneId": "usw2-az2", "AvailabilityZone": "us-west-2a" } ], "NextToken": "SomeEncryptedToken" }