하이퍼커넥트의 AWS Graviton 이전을 위한 거대한 도전과 여정
Last updated
Last updated
ARM 기반의 인스턴스
x86 아키텍처 대비 20% 높은 성능, 60% 낮은 에너지 소비
하이퍼커넥트에서 실제 서비스 운영
2023년 Graviton4 출시, 이전 칩셋 대비 20~25% 성능 향상
AWS의 맞춤형 실리콘
AWS Nitro System, AWS Graviton, AWS Inferentia, AWS Trainium
최적화된 시스템 유지 (전문화, 성능 혁신, 보안)
Graviton4 스케일업
단일 소켓 24xl (vCPU 96개)
Graviton3 대비 3배 더 많은 코어, 3배 더 많은 DRAM, 50% 더 많은 소켓당 코어수
하이퍼커넥트의 사례
2년간 내외부 서비스 Graviton 인스턴스로 마이그레이션
마이그레이션 준비
QEMU (buildx)
Multiple native nodes
Cross-compilation
마이그레이션 전략 수립
리스트업: Kubectl, CUR
분류: 외부 벤더사, 오픈소스, 인하우스 서비스
타겟 설정: 예상 절감 비율 16%
우선순위화: Non-business Critical, high vCPU Usage, No HA / Mission Critical, Data Processing (Batch)
난이도별 마이그레이션
Easy: Go, Rust
Medium: JVM 관련 언어 (Java, Scala, Kotlin)
Difficult: Python (라이브러리 지원 문제)
파이썬 서버 마이그레이션
매칭 알고리즘에 관여하는 ML 서버
로드테스팅: Latency 2배 증가
Python Application 프로파일링: Perf, kubectl-flame, Pyinstrument
Memory Allocator 교체
SIMD 최적화: Base64 대비 PyBase64 성능 4배 향상, Numpy Fancy Indexing 최적화, Numpy Float 연산 최적화
AsyncIO Event Loop Blocking 확인
__slots__
사용: 20% 성능 향상
레거시 코드 및 데이터 파이프라인 마이그레이션
QUS (QEMU): 작업 공수 적음, 실행 시간 4배 증가
Box64: Dockerfile 수정 및 테스트, 실행 시간 25% 증가
신규 Agent 생성: CDK 사용 권장
Lambda Web Adapter: 기존 백엔드와의 통합 강화, FastAPI와 호환성
Self-Managed RAG
Hybrid Search
메타데이터 기반 필터링
쿼리 캐싱
멱등성 보장: idempotent 데코레이터 활용
Agent 기능: 사용자 의도 분류 및 작업 수행 (검색봇, 주소봇, 예약봇, 알림봇)
마이그레이션 계획
꼼꼼하게 계획하여 꾸준히 진행
미래를 위한 투자
더 많은 벤더사, 오픈소스 프로젝트의 ARM64 지원 기대