Ⅰ. 마이그레이션 및 혁신
1. AWS Cloud Adoption(AWS CAF)
CAF의 지침은 6가지 초점 영역(관점)으로 구성되며, 각 관점은 별개의 책임을 해결한다. 계획 프로세스는 조직 전체에서 적합한 인물들이 앞으로의 변화에 대비할 수 있도록 돕는다. 일반적으로 비즈니스, 인력 및 거버넌스 관점은 비즈니스 기능에 중점을 두지만 플랫폼, 보안 및 운영 관점은 기술 역량에 중점을 둔다.
1) 비즈니스 관점
비즈니스 관점은 IT가 비즈니스 요구 사항을 반영하고 IT 투자가 주요 비즈니스 결과와 연계되도록 보장한다. 비즈니스 관점을 사용하여 비즈니스 전략 및 목표가 IT 전략 및 목표에 부합하는지 확인한다. 비즈니스 관점에서는 아래의 인력이 필요하다.
- 비즈니스 관리자
- 재무 관리자
- 예산 소유자
- 전략 이해당사자
2) 인력 관점
인력 관점은 클라우드 채택을 성공하기 위한 조직 전반의 변화 관리 전략 개발을 지원한다.
인력 관점을 사용하여 조직 구조 및 역할, 새로운 기술 및 프로세스 요구 사항을 평가하고 격차를 파악한다. 인력 관점에서는 아래의 인력을 필요로 한다.
3) 거버넌스 관점
거버넌스 관점은 IT 전략이 비즈니스 전략에 부합하도록 조정하는 기술 및 프로세스에 중점을 둔다. 이를 통해 비즈니스 가치를 극대화하고 위험을 최소화할 수 있다. 거버넌스 관점에서 클라우드 투자를 관리 및 측정하여 비즈니스 성과를 평가한다. 거버넌스 관점에는 필요한 인력은 다음과 같다.
- 최고 정보 책임자(CIO)
- 프로그램 관리자
- 엔터프라이즈 아키텍트
- 비즈니스 분석가
- 포트폴리오 관리자
4) 플랫폼 관점
플랫폼 관점에는 클라우드를 기반으로 새로운 솔루션을 구현하고, 온프레미스 워크로드를 클라우드로 마이그레이션하기 위한 원칙과 패턴이 포함된다. 다양한 아키텍처 모델을 사용하여 IT 시스템의 구조와 그 관계를 이해하고 전달한다. 플랫폼 관점에서는 아래의 인력이 필요하다.
- 최고 기술 책임자(CTO)
- IT 관리자
- 솔루션스 아키텍트
5) 보안 관점
보안 관점은 조직이 가시성, 감사 가능성, 제어 및 민첩성에 대한 보안 목표를 충족하도록 보장한다. AWS CAF를 사용하여 조직의 요구 사항에 맞춰 보안 제어의 선택 및 구현을 구성할 수 있다. 보안 관점에서 필요한 인력은 아래와 같다.
- 최고 정보 보안 책임자(CISO)
- IT 보안 관리자
- IT 보안 분석가
6) 운영 관점
운영 관점은 비즈니스 이해당사자와 합의된 수준까지 IT 워크로드를 구현, 실행, 사용, 운영 및 복구하는 데 도움이 된다. 일별, 분기별 및 연간으로 비즈니스를 수행하는 방법을 정의하고, 비즈니스의 운영을 반영 및 지원한다. 운영 관점에서는 아래의 인력을 필요로 한다.
2. 마이그레이션 전략
애플리케이션을 클라우드로 마이그레이션할 때 구현할 수 있는 가장 일반적인 6가지 마이그레이션 전략은 아래와 같다. 6개의 R이라는 뜻에서 6R 마이그레이션 전략이라고 부르기도 한다.
① Rehosting
- 흔히 ‘Lift-and-Shift’라고 불리는 방식
- 애플리케이션을 변경하지 않고 이전하는 방식으로써, 주로 대규모 레거시(최신 기술과의 호환성이 낮거나 구식 기술 스택을 사용하거나 유지보수가 어려운 등의 특징을 갖춘) 시스템을 마이그레이션하는 경우에 사용
- 마이그레이션을 통해 얻을 수 있는 이점이나 비용 상의 이점을 얻기는 어려운 방식
② Replatforming
- 'Lift-Tinker-and-Shift(리프트-시프트-수정)'이라고도 하며, 실질적인 이점을 실현하기 위해 몇 가지 클라우드 최적화를 수행해야 한다.
- 최적화는 애플리케이션의 핵심 아키텍처를 변경하지 않고도 달성될 수 있다.
③ Refactoring / Re-architecting
- 클라우드 네이티브 기능을 사용하여 애플리케이션을 설계하고 개발하는 방식을 재구성
- Refactoring / Re-architecting을 적용할 수 있는 상황
- 비즈니스 요구 사항
- 다른 방법으로는 기존 환경에서 실현하기 까다로운 기능을 추가하는 경우
- 확장 또는 성능 개선의 필요성이 큰 경우
④ Repurchasing
- 기존 라이선스를 Software-as-a-Service 모델로 전환
- 예를 들어 기업은 고객 관계 관리(CRM) 시스템에서 Salesforce.com으로 마이그레이션하여 재구매 전략을 구현할 수 있음.
⑤ Retaining
- 비즈니스에 중요한 애플리케이션을 소스 환경에 유지
- Retaining을 적용할 수 있는 상황
- 마이그레이션을 위해 대규모 리팩토링이 필요한 애플리케이션의 경우
- 이후로 연기할 수 있는 워크로드
⑥ Retiring
- 더 이상 필요하지 않은 애플리케이션을 제거하는 프로세스
3. AWS Snow 패밀리
AWS Snow 패밀리는 AWS와 고객 간에 최대 엑사바이트 규모의 데이터를 물리적으로 이동할 수 있는 물리적 디바이스 모음이다. AWS Snow 패밀리는 AWS Snowcone, AWS Snowball 및 AWS Snowmobile로 구성되어 있다. 이들을 AWS Snow 패밀리 멤버라 부른다.
이러한 디바이스는 각각 다른 용량 포인트를 제공하며 대부분 내장 컴퓨팅 기능을 포함한다. AWS는 Snow 패밀리 디바이스를 소유 및 관리하고 AWS 보안, 모니터링, 스토리지 관리 및 컴퓨팅 기능과 통합한다.
① AWS Snowcone
- AWS Snowcone은 작고 견고하며 안전한 엣지 컴퓨팅 및 데이터 전송 디바이스이다.
- CPU 2개, 4GB 메모리 및 8TB의 가용 스토리지를 갖추고 있다.
② AWS Snowball
- Snowball Edge Storage Optimized 디바이스는 대규모 데이터 마이그레이션 및 반복 전송 워크플로뿐 아니라 큰 용량이 필요한 로컬 컴퓨팅에 적합하다.
- Snowball Edge Compute Optimized는 기계 학습, 풀 모션 비디오 분석, 분석 및 로컬 컴퓨팅 스택과 같은 사용 사례를 위한 강력한 컴퓨팅 리소스를 제공한다.
③ AWS SnowMobile
- AWS Snowmobile은 대용량 데이터를 AWS로 이동하는 데 사용하는 엑사바이트 규모의 데이터 전송 서비스이다.
- 세미 트레일러 트럭으로 견인되는 45피트 길이의 견고한 운반 컨테이너인 Snowmobile 1대당 최대 100페타바이트의 데이터를 전송할 수 있다.
4. AWS 서비스를 통한 혁신
1) 서버리스 애플리케이션
AWS에서 서버리스는 사용자가 서버를 프로비저닝, 유지 관리 또는 관리할 필요가 없는 애플리케이션을 의미한다. 또한 내결함성과 가용성을 걱정할 필요도 없다. AWS가 이러한 기능을 처리하기 때문이다.
예를 들어 AWS Lambda는 서버리스 애플리케이션을 실행하는 데 사용할 수 있는 서비스이다. Lambda 함수를 트리거하여 코드를 실행하도록 아키텍처를 설계하는 경우 서버 플릿을 관리할 필요가 없다.
※ 서버 플릿
서버 플릿(Server Fleet)은 여러 대의 서버로 구성된 집합을 가리키는 용어로, 동일한 역할을 수행하는 서버들의 그룹을 의미한다. 이 서버들은 네트워크 연결을 통해 함께 작동하며, 고가용성, 확장성 및 성능을 제공하기 위해 클러스터 또는 로드 밸런싱과 같은 기술적인 구성 요소로 구성될 수 있다.
2) 인공 지능
AWS는 인공 지능(AI)을 기반으로 하는 다양한 서비스를 제공한다.
- Amazon Transcribe: 음성을 텍스트로 변환
- Amazon Comprehend: 텍스트에서 패턴을 검색
- Amazon Fraud Detector: 잠재적인 온라인 사기 행위를 식별
- Amazon Lex: 음성 및 텍스트 챗봇을 빌드
3) 기계 학습
기존의 기계 학습(ML) 개발은 복잡하고, 비용이 많이 들고, 시간이 오래 걸리고, 오류가 발생하기 쉽다. AWS는 이 프로세스에서 어려운 작업을 제거하여 ML 모델을 신속하게 빌드, 훈련, 배포하는 데 사용할 수 있는 Amazon SageMaker를 제공한다. ML을 사용하여 데이터를 분석하고, 복잡한 문제를 해결하고, 아직 발생하기 전에 결과를 예측할 수 있다.
Ⅱ. AWS Cloud Computing
1. AWS Well-Architected 프레임워크
AWS Well-Architected 프레임워크는 모범 사례 및 설계 원칙에 따라 아키텍처를 지속적으로 측정하여 개선할 영역을 파악한다. 이를 통해 AWS 클라우드에서 안정적이고 효율적인 시스템을 설계하고 운영할 수 있도록 돕는다.
Well-Architected 프레임워크는 5가지 핵심 요소를 기반으로 합니다.
① 운영 우수성
- 운영 우수성은 시스템을 실행 및 모니터링하여 비즈니스 가치를 제공하고 지속적으로 지원 프로세스 및 절차를 개선하는 능력이다.
- 클라우드에서의 운영 우수성을 위한 설계 원칙에는 코드로 작업 수행, 문서에 주석 추가, 실패 예측, 되돌릴 수 있는 소규모 변경을 자주 수행하는 것이 포함된다.
② 보안성
- 위험 평가 및 완화 전략을 통해 비즈니스 가치를 제공하는 동시에 정보, 시스템, 자산을 보호한다.
- 가능한 한 보안 모범 사례를 자동화한다.
- 모든 계층에 보안을 적용한다.
- 전송 중/저장 시 데이터를 보호한다.
③ 안정성
- 인프라 또는 서비스 중단으로부터 복구를 수행한다.
- 컴퓨팅 리소스를 동적으로 확보하여 수요를 충족한다.
- 잘못된 구성 또는 일시적인 네트워크 문제와 같은 중단을 완화한다.
- 복구 절차 테스트, 전체 시스템 가용성을 높이기 위한 수평 확장, 장애 발생 시 자동 복구를 수행하는 것이 포함된다.
④ 성능 효율성
- 컴퓨팅 리소스를 효율적으로 사용하여 시스템 요구 사항을 충족하고, 수요 변화와 기술 진화에도 효율성을 유지하는 능력이다.
- 아키텍처 성능 효율성 평가에는 실험 빈도 증가, 서버리스 아키텍처 사용, 몇 분 만에 전 세계 배포가 가능한 시스템 설계 등이 포함된다.
⑤ 비용 최적화
- 비용 최적화는 가장 낮은 가격으로 비즈니스 가치를 제공하도록 시스템을 실행하는 능력이다.
- 비용 최적화에는 소비 모델 채택, 비용 분석 및 귀속, 관리형 서비스를 사용하여 소유 비용 절감이 포함된다.
2. AWS Cloud의 이점
AWS 클라우드에서 운영하면 온프레미스 또는 하이브리드 환경의 컴퓨팅에 비해 많은 이점이 있다.
① 선행 비용을 가변 비용으로 대체
- 선행 비용에는 컴퓨팅 리소스를 사용하기 전에 투자해야 하는 데이터 센터, 물리적 서버 및 기타 리소스가 포함된다.
- 컴퓨팅 리소스를 사용할 때만 비용을 지불하면 되기 때문에 어떻게 사용할지 결정하기도 전에 데이터 센터와 서버에 대규모로 투자하는 것보다 리스크가 적다.
② 거대한 규모의 경제로 얻는 이점
- 클라우드 컴퓨팅을 사용하면 인프라를 소유할 때보다 가변 비용이 낮아진다.
- 수많은 고객의 사용량이 클라우드에 누적되므로 AWS와 같은 공급자는 더 높은 규모의 경제를 달성할 수 있다. 규모의 경제는 더 저렴한 종량 과금제로 전환된다.
③ 용량 추정 불필요
- 클라우드 컴퓨팅에서는 애플리케이션을 배포하기 전에 필요한 인프라 용량을 예측할 필요가 없다.
- 필요한 용량에만 액세스하고 수요에 따라 확장 또는 축소할 수 있기 때문에 사용하지 않는 리소스에 대한 비용을 지불하거나 제한된 용량을 사용하는 것보다 효율적이다.
④ 속도 및 민첩성 개선
- 클라우드 컴퓨팅의 유연성 덕분에 애플리케이션을 더욱 쉽게 개발하고 배포할 수 있다.
- 이로 인해 개발 팀이 실험과 혁신에 더 많은 시간을 투자할 수 있게 된다.
⑤ 데이터 센터 운영 및 유지 관리에 비용 투자 불필요
- 데이터 센터에서 클라우드 컴퓨팅을 사용하려면 인프라 및 서버 관리에 많은 비용과 시간을 소비해야 한다.
- 클라우드 컴퓨팅을 사용하면 이러한 작업에 신경을 덜 쓰고, 애플리케이션과 고객에 더 집중할 수 있다.
⑥ 몇 분 만에 전 세계에 배포
- AWS 클라우드는 글로벌 입지를 확보하고 있어 전 세계 고객에게 짧은 지연 시간을 제공하면서 애플리케이션을 신속하게 배포할 수 있다.
이 시리즈의 글들은 AWS Skill Builder의 교육 내용을 모방하고 있으며, 이미지는 AWS Skill Builder에서 가져온 것입니다. 넷제로 해커톤을 준비하는 과정에서 수료해야 하는 교육 내용이기에 블로그에 정리해 둔 것입니다. 문제 시 삭제하겠습니다.
>> AWS Skill Builder