Amazon EC2 인스턴스의 CPU 옵션 지정 - Amazon Elastic Compute Cloud

Amazon EC2 인스턴스의 CPU 옵션 지정

AWS Management Console,AWS CLI, EC2 API 또는 SDK를 통해 인스턴스 시작 도중 또는 이후에 CPU 옵션을 지정할 수 있습니다. 이 페이지에서는 다음과 같이 AWS Management Console 및 AWS CLI 방법을 다룹니다.

동시 멀티스레딩 비활성화

하이퍼스레딩이라고도 하는 동시 멀티스레딩(SMT)을 비활성화하려면 코어당 스레드 하나를 지정하세요.

Console
인스턴스 시작 중 SMT 비활성화
  1. 콘솔에서 인스턴스 시작 마법사를 사용하여 EC2 인스턴스 시작 절차를 수행하고 필요에 따라 인스턴스를 구성합니다.

  2. 고급 세부 정보를 확장하고 CPU 옵션 지정 확인란을 선택합니다.

  3. 코어 수에 대해 필요한 CPU 코어 수를 선택합니다. 이 예에서 r5.4xlarge 인스턴스에 필요한 기본 CPU 코어 개수를 지정하려면 8을 선택합니다.

  4. SMT를 비활성화하려면 코어당 스레드1을 선택하세요.

  5. Summary(요약) 패널에서 인스턴스 구성을 검토한 다음 Launch instance(인스턴스 시작)를 선택합니다. 자세한 내용은 콘솔에서 인스턴스 시작 마법사를 사용하여 EC2 인스턴스 시작 단원을 참조하십시오.

AWS CLI
인스턴스 시작 중 SMT 비활성화

run-instances AWS CLI 명령을 사용하여 1 파라미터의 ThreadsPerCore에 값을 --cpu-options로 지정합니다. CoreCount에 대해 CPU 코어 수를 지정합니다. 이 예에서 r5.4xlarge 인스턴스에 필요한 기본 CPU 코어 개수를 지정하려면 값을 8로 지정합니다.

aws ec2 run-instances \ --image-id ami-1a2b3c4d \ --instance-type r5.4xlarge \ --cpu-options "CoreCount=8,ThreadsPerCore=1" \ --key-name MyKeyPair
참고

기존 인스턴스에 대해 SMT를 비활성화하려면 EC2 인스턴스의 CPU 옵션 변경에 표시된 프로세스에 따라 코어당 실행되는 스레드 수를 1로 변경합니다.

시작 시 vCPU 사용자 지정 수 지정

EC2 콘솔 또는 AWS CLI에서 인스턴스를 시작할 때 인스턴스의 코어당 CPU 코어와 스레드 수를 사용자 지정할 수 있습니다. 이 섹션의 예제는 r5.4xlarge 인스턴스 유형을 사용하며 다음과 같은 기본 설정을 포함합니다.

  • CPU 코어: 8

  • 코어당 스레드: 2

기본적으로 인스턴스 유형에 사용할 수 있는 최대 수의 vCPU를 사용하여 인스턴스를 시작합니다. 이 인스턴스 유형의 경우 총 16개의 vCPU(각각 2개의 스레드를 실행하는 코어 8개)입니다. 이 인스턴스 유형에 대한 자세한 내용은 메모리 최적화 인스턴스 섹션을 참조하세요.

다음 예제는 4개의 vCPU로 r5.4xlarge 인스턴스를 시작합니다.

Console
인스턴스 시작 중 vCPU 수 사용자 지정
  1. 콘솔에서 인스턴스 시작 마법사를 사용하여 EC2 인스턴스 시작 절차를 수행하고 필요에 따라 인스턴스를 구성합니다.

  2. 고급 세부 정보를 확장하고 CPU 옵션 지정 확인란을 선택합니다.

  3. 4개의 vCPU를 얻기 위해 다음과 같이 2개의 CPU 코어와 코어당 2개의 스레드를 지정합니다.

    • 코어 수2를 선택합니다.

    • 코어당 스레드2를 선택합니다.

  4. Summary(요약) 패널에서 인스턴스 구성을 검토한 다음 Launch instance(인스턴스 시작)를 선택합니다. 자세한 내용은 콘솔에서 인스턴스 시작 마법사를 사용하여 EC2 인스턴스 시작 단원을 참조하십시오.

AWS CLI
인스턴스 시작 중 vCPU 수 사용자 지정

run-instances AWS CLI 명령을 사용하여 --cpu-options 파라미터에서 CPU 코어 수와 스레드 수를 지정합니다. 4개의 vCPU를 얻기 위해 2개의 CPU 코어와 코어당 2개의 스레드를 지정할 수 있습니다.

aws ec2 run-instances \ --image-id ami-1a2b3c4d \ --instance-type r5.4xlarge \ --cpu-options "CoreCount=2,ThreadsPerCore=2" \ --key-name MyKeyPair

또는 4개의 vCPU를 얻기 위해 4개의 CPU 코어와 코어당 1개의 스레드(SMT 비활성화)를 지정합니다.

aws ec2 run-instances \ --image-id ami-1a2b3c4d \ --instance-type r5.4xlarge \ --cpu-options "CoreCount=4,ThreadsPerCore=1" \ --key-name MyKeyPair

시작 템플릿에 vCPU 사용자 지정 수 지정

시작 템플릿에서 인스턴스의 코어당 CPU 코어와 스레드 수를 사용자 지정할 수 있습니다. 이 섹션의 예제는 r5.4xlarge 인스턴스 유형을 사용하며 다음과 같은 기본 설정을 포함합니다.

  • CPU 코어: 8

  • 코어당 스레드: 2

기본적으로 인스턴스 유형에 사용할 수 있는 최대 수의 vCPU를 사용하여 인스턴스를 시작합니다. 이 인스턴스 유형의 경우 총 16개의 vCPU(각각 2개의 스레드를 실행하는 코어 8개)입니다. 이 인스턴스 유형에 대한 자세한 내용은 메모리 최적화 인스턴스 섹션을 참조하세요.

다음 예제에서는 vCPU가 4개 있는 r5.4xlarge 인스턴스의 구성을 지정하는 시작 템플릿을 생성합니다.

Console
시작 템플릿에 vCPU 사용자 지정 수 지정
  1. 파라미터를 지정하여 시작 템플릿 생성 절차를 수행하고 필요에 따라 시작 템플릿을 구성합니다.

  2. 고급 세부 정보를 확장하고 CPU 옵션 지정 확인란을 선택합니다.

  3. 4개의 vCPU를 얻기 위해 다음과 같이 2개의 CPU 코어와 코어당 2개의 스레드를 지정합니다.

    • 코어 수2를 선택합니다.

    • 코어당 스레드2를 선택합니다.

  4. 요약 패널에서 인스턴스 구성을 검토한 다음 인스턴스 시작을 선택합니다. 자세한 내용은 Amazon EC2 시작 템플릿에 인스턴스 시작 파라미터 저장 단원을 참조하십시오.

AWS CLI
시작 템플릿에 vCPU 사용자 지정 수 지정

create-launch-template AWS CLI 명령을 사용하여 CpuOptions 파라미터에서 CPU 코어 수와 스레드 수를 지정합니다. 4개의 vCPU를 얻기 위해 2개의 CPU 코어와 코어당 2개의 스레드를 지정할 수 있습니다.

aws ec2 create-launch-template \ --launch-template-name TemplateForCPUOptions \ --version-description CPUOptionsVersion1 \ --launch-template-data file://template-data.json

다음은 이 예제의 인스턴스 구성에 대한 CPU 옵션 등 시작 템플릿 데이터를 포함하는 JSON 파일 예제입니다.

{ "NetworkInterfaces": [{ "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Ipv6AddressCount": 1, "SubnetId": "subnet-7b16de0c" }], "ImageId": "ami-8c1be5f6", "InstanceType": "r5.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }], "CpuOptions": { "CoreCount":2, "ThreadsPerCore":2 } }

또는 4개의 vCPU를 얻기 위해 4개의 CPU 코어와 코어당 1개의 스레드(SMT 비활성화)를 지정합니다.

{ "NetworkInterfaces": [{ "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Ipv6AddressCount": 1, "SubnetId": "subnet-7b16de0c" }], "ImageId": "ami-8c1be5f6", "InstanceType": "r5.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }], "CpuOptions": { "CoreCount":4, "ThreadsPerCore":1 } }

EC2 인스턴스의 CPU 옵션 변경

시간이 지나면서 요구 사항이 변하면 기존 인스턴스의 CPU 옵션 구성을 변경하는 것이 좋습니다. 인스턴스에서 실행되는 각 스레드를 가상 CPU(vCPU)라고 합니다. Amazon EC2 콘솔, AWS CLI, API 또는 SDK에서 기존 인스턴스에서 실행되는 vCPU 수를 변경할 수 있습니다. 이렇게 변경하려면 먼저 인스턴스 상태가 Stopped이어야 합니다.

콘솔 또는 명령줄 단계를 보려면 환경에 맞는 탭을 선택합니다. API 요청 및 응답 정보는 Amazon EC2 API 참조ModifyInstanceCpuOptions을 참조하세요.

Console

다음 절차에 따라 AWS Management Console에서 인스턴스의 활성 vCPU 수를 에서 변경합니다.

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 인스턴스를 선택합니다. 그러면 현재 AWS 리전에 정의된 인스턴스 목록이 열립니다.

  3. 인스턴스 목록에서 인스턴스를 선택합니다. 또는 인스턴스 링크를 선택하여 인스턴스 세부 정보 페이지를 열 수도 있습니다.

  4. 인스턴스가 실행 중인 경우 진행하기 전에 인스턴스를 중지해야 합니다. 인스턴스 상태 메뉴에서 인스턴스 중지를 선택합니다.

  5. vCPU 구성을 변경하려면 작업 메뉴의 인스턴스 설정에서 CPU 옵션 변경을 선택합니다. 그러면 CPU 옵션 변경 페이지가 열립니다.

  6. 다음 CPU 옵션 중 하나를 선택하여 인스턴스의 구성을 변경합니다.

    None(없음)

    이 옵션은 인스턴스 유형의 기본 vCPU 수로 인스턴스를 재설정합니다. 기본값은 모든 CPU 코어에 대해 모든 스레드를 실행하는 것입니다.

    CPU 옵션 지정

    이 옵션을 사용하면 인스턴스에서 실행 중인 vCPU 수를 구성할 수 있습니다.

  7. CPU 옵션 지정을 선택한 경우 활성 vCPU 구성이 표시됩니다.

    • 첫 번째 선택기는 각 CPU 코어에 대해 실행되는 스레드 수를 구성합니다. 동시 멀티스레딩을 사용하지 않도록 설정하려면 코어당 실행되는 스레드 수를 1로 변경할 수 있습니다.

    • 두 번째 선택기는 인스턴스에서 실행 중인 CPU 수를 구성합니다.

    CPU 옵션 선택기를 변경하면 다음 필드가 동적으로 업데이트됩니다.

    • 활성 vCPU: 사용자의 선택을 기반으로 코어당 스레드를 곱한 CPU 코어 수입니다. 예를 들어 스레드 2개와 코어 4개를 선택한 경우 vCPU 8개가 됩니다.

    • 총 vCPU: 인스턴스 유형의 최대 vCPU 수입니다. 예를 들어 m6i.4xlarge 인스턴스 유형의 경우 16개의 vCPU(각각 2개의 스레드를 실행하는 코어 8개)입니다.

  8. 업데이트를 적용하려면 변경을 선택합니다.

AWS CLI

다음 절차에 따라 AWS CLI에서 인스턴스의 활성 vCPU 수를 에서 변경합니다.

modify-instance-cpu-options AWS CLI 명령을 사용하여 --core-count 파라미터에서 실행되는 CPU 코어 수와 --threads-per-core 파라미터에서 코어당 실행되는 스레드 수를 지정합니다.

다음 예제는 지정된 인스턴스에서 vCPU 8개를 실행할 수 있는 m6i.4xlarge 인스턴스 유형의 두 가지 구성을 보여줍니다. 이 인스턴스 유형의 기본값은 16개의 vCPU(각각 2개의 스레드를 실행하는 코어 8개)입니다.

예제 1: 코어당 스레드 2개로 CPU 코어 4개를 실행하여 총 8개의 vCPU를 실행합니다.

aws ec2 modify-instance-cpu-options \ --instance-id i-1234567890abcdef0 \ --core-count=4 \ --threads-per-core=2

예제 2: 동시 멀티스레딩을 사용하지 않도록 설정하려면 코어당 실행되는 스레드 수를 1로 변경할 수 있습니다. 또한 결과 구성에서는 총 8개의 vCPU(코어당 스레드 1개, CPU 코어 8개)를 실행합니다.

aws ec2 modify-instance-cpu-options \ --instance-id i-1234567890abcdef0 \ --core-count=8 \ --threads-per-core=1