[reinvent 2024] AWS Nitro System 심층 탐구
Summary
AWS Nitro System은 Amazon EC2 인스턴스의 최신 및 미래 세대에 더욱 다양한 컴퓨팅, 스토리지, 메모리, 네트워킹 옵션을 제공하는 하드웨어 오프로드 및 보안 구성 요소를 포함한 AWS의 기술 빌딩 블록 모음입니다. 이번 세션에서는 AWS Nitro System의 설계와 아키텍처를 심도 있게 탐구하고, Nitro 플랫폼의 최신 혁신을 살펴보며 불가능을 가능하게 만든 비결을 알아봅니다.
리인벤트 2024 테크 블로그의 더 많은 글이 보고 싶다면?
Overview
들어가며
수많은 고객들에게 서버 컴퓨팅 리소스를 안정적으로 제공하고 있는지에 대한 인사이트를 얻을 수 있을것이라 기대했습니다.
주요 내용으로는 AWS의 자체 칩 개발 전략, Nitro 시스템의 아키텍처, 그리고 이를 통한 성능 및 보안 향상 입니다. 그럼 지금부터 Deep Dive 하게 들어가보도록 하겠습니다.
AWS Nitro System: 클라우드 인프라의 새로운 기준
또한 AWS는 Graviton 이라는 자체적인 ARM 칩을 설계 및 자사 클라우드 환경에 적용하여 고객들에게 서비스 하고 있습니다. AWS가 자체적인 칩과 Nitro 시스템을 구성한 이유는 특정 벤더에 종속적이지 않고 보안성과 신뢰성 기반의 서비스를 고객들에게 제공하기 위함입니다.
Nitro 시스템 덕분에 AWS는 과거에는 할수 없었던 다양한 혁신과 인스턴스 타입 제공을 통해 고객환경에 맞는 다양한 서비스를 제공할 수 있었습니다.
Nitro 시스템 이전에는 XEN 기반의 하이퍼바이저 환경에서 EC2 서비스를 제공하였습니다. 하지만 해당 하이퍼바이저 환경에서는 DOM0에 의해 사용자의 I/O가 제어되었기 때문에 공유환경에서 사용되는 환경에서의 병목현상이 발생할 수 밖에 없었습니다. 이러한 문제를 근본적으로 해결하기 위해 AWS는 Nitro 하이퍼바이저의 DOM0를 제외하고 Nitro 카드를 통해 네트워크, 스토리지, 보안 요구사항을 PCI Express 통신을 통해 별도로 동작하여 각각의 사용자의 I/O를 독립적으로 제어하고 하이퍼바이저는 CPU, Memory 공유만 담당하는 경량화된 시스템을 통해 베어메탈 시스템과 비슷한 가상화 환경을 만들었습니다.
네트워크의 혁신 – VPC 네트워킹
AWS Nitro 시스템은 네트워크 작업을 효율적으로 처리하기 위해 VPC 네트워킹을 혁신했습니다.
- 데이터 플레인 오프로드: ENI 부착, 보안 그룹, 라우팅 등의 네트워크 작업을 Nitro 카드에서 처리하여 호스트 CPU의 부하를 경감했습니다.
- VPC 암호화: 256비트 AES 암호화를 통해 네트워크 트래픽의 보안을 강화합니다.
- ENA 및 EFA 기술:
- ENA(Elastic Network Adapter)는 고속 네트워킹을 지원하며 ENA Express를 통해 단일 플로우 대역폭을 5배까지 향상시킬 수 있습니다.
- EFA(Elastic Fabric Adapter)는 머신 러닝과 HPC와 같은 고성능 워크로드에서 낮은 지연 시간과 높은 대역폭을 제공합니다.
Scalable Reliable Datagram (SRD), Elastic Fabric Adapter (EFA) 로 확장된 네트워크 성능
Nitro 시스템의 SRD 기술은 TCP 기반의 단일 경로 제한을 극복하며, 다중 네트워크 경로를 활용해 데이터 전송 성능을 극대화합니다.
- 혼잡 회피 및 신뢰성: 네트워크 경로의 혼잡을 실시간으로 탐지하고 트래픽을 다른 경로로 우회시킵니다.
- 데이터 센터 수준의 성능: SRD는 데이터 센터 내부에서 빠르고 안정적인 네트워크를 제공합니다.
이 기술은 특히 Nitro 카드 3세대부터 활성화되었으며, EFA와 같은 고성능 네트워크 옵션의 기반이 되었습니다.
EFA는 SRD를 활용해 고성능 컴퓨팅(HPC) 및 머신 러닝 워크로드를 처리할 수 있는 네트워크 인터페이스입니다.
- EFAv1: 최대 100Gbps 속도 지원.
- EFAv2: 200Gbps 속도와 30% 감소된 네트워크 지연 시간을 제공합니다.
- 선형 확장: 코어 수가 증가해도 성능이 거의 선형적으로 확장됩니다.
해당 기술혁신을 통해 다른 CSP는 범접할 수 없는 가장 빠른 내부 네트워크 속도를 가장 먼저 달성하였, HPC 환경과 AI 기술을 통해 발생하고 있는 대규모 데이터 요구사항에 발빠르게 대처하고 있습니다.
스토리지의 진화 – AWS Nitro SSDs
일상 컴퓨팅 환경에서 대중화된 SSD는 낸드 플래시 기반의 저장장치로서 HDD 대비 저전력, 안정성 및 신뢰성 및 빠른 속도를 낼 수 있는 장치입니다, 하지만 이런 SSD에 안정적으로 데이터를 저장하기 위해서는 반드시 Flash Translation Layer (FTL)를 통해 데이터를 기록하는 것이 필요한데 해당 벤더사마다 퍼모먼스가 일괄적이지 않는 문제가 있습니다.
AWS Nitro SSD는 Nitro 카드와 통합되어 각 벤더사마다 다른 컨트롤러의 FTL 처리를 직접적으로 관리하여 어느 벤더와 상관없이 일괄적인 I/O 성능을 보장받을 수 있도록 개선하였습니다. 이를 통해 다음과 같은 이점을 볼 수 있습니다.
- 낮은 지연 시간: Nitro SSD는 I/O 작업의 지연 시간을 60% 줄이며 일관된 성능을 제공합니다.
- 높은 신뢰성: Nitro 카드의 펌웨어 업데이트는 인스턴스 중단 없이 진행됩니다.
- 데이터 보안: 모든 데이터는 AES-256 암호화를 사용하여 저장됩니다.
보안 중심의 설계 – AWS Nitro 시스템의 차별화
AWS Nitro 시스템은 보안을 설계의 중심에 두고 있으며, 이를 통해 고객 데이터를 철저히 보호합니다.
- 암호화: Nitro 시스템 내 모든 통신은 암호화되어 있습니다.
- Secure Boot: 하드웨어와 소프트웨어는 부팅 시 암호화 검증을 통해 신뢰성을 확인합니다.
- 무중단 패치: Nitro Hypervisor를 포함한 모든 시스템 구성 요소는 다운타임 없이 업데이트됩니다.
- 원격 접근 차단: SSH 및 원격 접근은 불가능하며, 모든 작업은 API를 통해 이루어집니다.
결론
AWS Nitro 시스템은 가상화의 재정의와 하드웨어 혁신을 통해 클라우드 컴퓨팅의 성능, 보안, 확장성을 새로운 수준으로 끌어올렸습니다.
- 네트워킹 측면에서 ENA와 SRD 기술로 초고속 데이터 전송과 낮은 지연 시간을 실현했습니다.
- 스토리지에서는 FTL 통합으로 안정적인 성능과 예측 가능한 워크로드를 제공하며, EBS 암호화를 통해 보안성을 극대화했습니다.
- 보안 아키텍처는 하드웨어 신뢰 루트와 UEFI Secure Boot로 데이터를 철저히 보호합니다.
- 모듈형 설계로 인해 EC2 인스턴스 유형을 급격히 확장하며 사용자의 다양한 요구를 충족합니다.
AWS Nitro 시스템의 혁신적인 접근법은 클라우드 인프라 설계가 단순히 하드웨어나 소프트웨어 중 하나에 의존해서는 안 된다는 점을 깨닫게 했습니다. 특히 Nitro의 모듈형 설계가 어떻게 새로운 인스턴스 유형과 기능 개발 속도를 가속화했는지는 깊은 인상을 남겼습니다.이 글을 통해 AWS Nitro 시스템이 단순히 클라우드 컴퓨팅의 한 요소가 아니라,미래 데이터 센터 설계의 표준이 될 수 있음을 확인할 수 있었습니다. 특히 보안과 성능의 균형을 절묘하게 맞춘 설계 철학은 앞으로의 기술 개발에도 중요한 교훈이 될 것입니다.