반응형

AWS Compute Optimizer

M, C, R, T, X 패밀리의 140가지가 넘는 인스턴스 중에서 EC2 및 EC2 Auto Sacling 그룹에 가장 적합한 인스턴스를 선택할 수 있습니다.

 

Optimizer(옵티마이저)?
옵티마이저는 머신 러닝 모델의 가중치를 조정하는 알고리즘입니다. 가중치는 모델의 학습을 위해 중요한 요소입니다. 옵티마이저는 가중치를 조정하여 모델의 손실 함수의 값을 최소화합니다. 손실 함수는 모델의 예측이 실제 값과 얼마나 다른지를 나타내는 함수입니다. 옵티마이저는 손실 함수의 값을 최소화하기 위해 가중치를 조정합니다. 옵티마이저는 모델의 성능을 향상시키는 데 중요한 역할을 합니다.

 

  1. 시작
    개인 계정, 관리 계정 또는 조직 내 모든 구성원 계정을 AWS Compute Optimizer에 옵트인합니다. Compute Optimizer는 기계 학습을 사용해 CloudWatch에서 제공되는 사용 데이터와 리소스의 현재 구성을 분석합니다. 구성과 사용량 분석 결과에 따라 권장 컴퓨팅이 제공됩니다.

  2. 서비스간 통합
    권장 사항을 S3(Simple Storage Serivce)로 내보낼 수 있습니다. 그럼 Cost Explorer 및 Systems Manager와 권장 사항이 통합됩니다.

  3. 리소스 재구성
    권장 사항을 사용해 비용을 줄이고 성능을 개선할 수 있도록 리소스를 재구성할 수 있습니다.

EC2 키 페어

프라이빗 키와 퍼블릭 키로 구성된 키 페어는 보안 자격 증명 세트입니다. 인스턴스에 연결할 때는 키 페어를 사용해 신원을 증명해야 합니다. 퍼블릭 키는 EC2에 저장되고 프라이빗 키는 사용자가 저장합니다. 암호 대신 프라이빗 키를 사용하여 인스턴스에 안전하게 액세스할 수 있습니다. 프라이빗 키를 소유한 모든 사용자는 인스턴스에 연결할 수 있으므로 프라입시 키는 안전한 곳에 저장해야합니다.

 

 

EC2 인스턴스 하드웨어 사용 방식

  1. 공유 테넌시
    하드웨어를 공유하는 방식으로 EC2 인스턴스는 기본적으로 이 방식을 사용합니다. 따라서 여러 AWS 계정이 같은 물리적 하드웨어를 공유할 수 있습니다.

  2. 전용 인스턴스
    호스트 하드웨어 수준에서 물리적으로 격리되는 EC2 인슽너스를 말합니다. 즉, 전용이 아닌 인스턴스와 다른 AWS 계정에 속하는 인스턴스로부터 격리됩니다.

  3. 전용 호스트
    시작하는 인스턴스는 고객이 EC2 인스턴스 용량을 완전히 전용으로 사용하는 물리적 서버에서 실행됩니다. 사용자가 구성을 제어할 수 있는 격리된 서버가 제공됩니다. 전용 호스트에서는 AWS가 인스턴스를 배치할 서버를 자동으로 선택할 수 있는 옵션이 있습니다. 또는 인스턴스를 배치할 때 전용 서버를 사용자가 수동으로 선택할 수도 있습니다.

자세한 내용

 

배치 그룹 및 사용 사례

EC2 서비스는 상호 연관된 장애를 최소화하기 위해 기본 하드웨어 전체에 모든 인스턴스를 분산합니다. 배치 그룹을 사용하면 워크로드 요구를 충족하도록 상호 종속된 인스턴스 집합의 배치 방식을 결정할 수 있습니다.

 

  1. 클러스터 배치 그룹
    낮은 네트워크 지연 시간, 높은 네트워크 처리량 또는 두 가지 요건이 모두 충족될 경우 혜택을 받는 애플리케이션일 때 사용을 권장합니다. 또한 대부분의 네트워크 트래픽이 그룹의 인스턴스 간에 전송되는 경우에도 권장됩니다. HPC 워크로드에는 VPC에 이 수준의 연결을 사용해야 할 수 있습니다.

  2. 분산 배치 그룹
    서로 분리한 상태로 유지해야 하는 소수의 중요 인스턴스가 포함된 애플리케이션의 경우 사용을 권장합니다. 예를 들어 의료 기록 시스템과 같이 최대 가대 가동 시간이 필요한 서비스는 분산형 배치 그룹을 사용하면 내결함성을 높일 수 있습니다.

  3. 파티션 배치 그룹
    대구모 분산 및 복제된 워크로드를 배포할 수 있습니다. 파티션을 사용하면 여러 구성 요소에서 하드웨어 장애가 동시에 발생하는 상황을 방지할 수 있습니다.
내결함성과 고가용성
내결함성(fault tolerance)은 시스템이 고장에 견딜 수 있는 능력을 말합니다. 가용성(availability)은 시스템이 사용 가능한 시간의 비율을 말합니다. 내결함성과 가용성은 서로 밀접하게 관련되어 있습니다. 내결함성이 높을수록 가용성도 높아집니다.

내결함성을 높이는 방법에는 여러 가지가 있습니다. 예를 들어, 시스템에 여러 개의 인스턴스를 만들고, 인스턴스를 서로 다른 서버에 배치할 수 있습니다. 이렇게 하면 한 인스턴스에 고장이 발생하더라도 다른 인스턴스가 계속해서 작동할 수 있습니다.

가용성을 높이는 방법에도 여러 가지가 있습니다. 예를 들어, 시스템에 장애 조치(failover) 기능을 추가할 수 있습니다. 장애 조치 기능은 한 인스턴스에 고장이 발생하면 다른 인스턴스로 자동으로 전환하는 기능입니다.

내결함성과 가용성은 시스템의 중요한 요소입니다. 내결함성과 가용성이 높을수록 시스템이 장애에 견딜 수 있고, 사용자에게 안정적으로 서비스를 제공할 수 있습니다.

 

자세한 내용

 

사용자 데이터

EC2 인스턴스를 생성할 때 사용자 데이터를 인스턴스에 전달할 수 있는 옵션이 있습니다. 사용자 데이터는 인스턴스 시작 완료를 자동화할 수 있습니다. 예를 들어 인스턴스 AMI를 패치 및 업데이트하거나, 소프트웨어 라이센스 키를 가져와 설치하거나, 추가 소프트웨어를 설치할 수 있습니다. 사용자 데이터는 루트 또는 관리자 권한으로 실행되는 shell 스크립트나 cloud-init 지시문으로 구현됩니다. 이 스크립트/지시문은 인스턴스가 시작된 후 네트워크에서 해당 인스턴스 액세스가 가능해지기 전에 실행됩니다.

Linux : cloud-init
Windows : EC2Launch

 

Bash 스크립트와 Powershell 스크립트 둘 다 지정할 수 있습니다. 그럼 인스턴스 사요자 데이터에서 표시되는 순서에 관계없이 Bash 스크립트가 먼저 실행된 후 Powershell 스크립트가 실행됩니다.

 

인스턴스 메타데이터

인스턴스 메타데이터는 실행 중인 인스턴스를 구성 또는 관리하는 데 사용할 수 있는 인스턴스 관련 데이터입니다. 인스턴스 메타데이터는 예를 들어 호스트 이름, 이벤트, 보안 그룹 등의 범주로 구분됩니다.

반응형