배워서 바로 쓰는 14가지 AWS 구축 패턴
대상독자
이 책은 기업이 비즈니스를 하면서 겪을 만한 IT와 관련된 14가지 과제와 이를 해결하는 AWS 레퍼런스 아키텍처를 제시하고 있습니다.
저는 주로 MS Azure를 사용하는데요 처음 AWS를 접했을때 그 방대함에 음...... 이걸 어떻게 활용하지라는 생각이 들었던 기억이 떠오릅니다.
최신의 AWS는 Azure와 어떻게 다른지 한번 둘러보겠습니다.
이 책에서는 최신 업데이트 내용이 반영이 되어 있습니다.
하지만 결코 초보자를 위한 책은 아닐듯합니다.
이 책의 구성
1부 : 웹 시스템
2부 : 스토리지 시스템
3부 : 데이터 분석 시스템
4부 : 애플리케이션 쾌속 개발
5부: 클라우드 네이티브
6부 : 하이브리드 클라우드
로 구성이 되어 있습니다.
===========================================================
패턴 1 :
패턴 1에서는 AWS로 인프라 설계를 위한 여러가지 사항들에 대해서 이야기를 합니다.
리전 선택에 대한 부분, 그리고 인스턴스 설정, 도메인을 통한 접속 방법, 네트워크 구성, 웹 서버로서의 OS환경 구성에 대한 내용입니다.
이벤트 사이트를 구성하면서 필요한 내용에 대하여 설명합니다.
AWS의 EC2 가상 서버, EBS 가상 스토리지, 라우트 53 DNS 서비스
를 설명하는데요 Azure랑 비교해 보면 비슷한듯 아닌듯 합니다.
리전에 따라 서비스 및 요금의 차이는 어느 클라우드 서비스 회사를 선택하는가에 따라 차이가 있습니다.
EC2 인스턴스와 통신을 위한 라우트 설정을 간단하게 다루어 줍니다.
인터넷에 접속을 위한 VPC 설정과 OS환경을 웹 서버로 설정하고 리소스를 변경하는것에 대하여 설명합니다. 기본적인 AWS 구성에 대하여 알 수가 있습니다.
===========================================================
패턴 2 :
이번 챕터에서는 다소 복잡한 기업 웹 사이트 구축 패턴에 대하여 설명합니다. 웹 서버와 DB 서버의 이중화 방법, 저비용으로 정적 콘텐츠를 배포하는 방법 등을 다루고 있습니다.
다양한 용어들을 정리하고 갑니다. CDN(컨텐츠 전송 네트워크), ELB(일래스틱 로드밸런싱), RDS(RDB의 관리형 서비스), S3( 아마존 심플 스토리지 서비스)
이 책은 초보자를 위한 책은 아닙니다. 어느정도 클라우드나 기타 지식을 기반이 있다는 것을 전제로 설명합니다.
ELB와 RDS를 이용하여 다중화 하는 방법에 대하여 설명합니다. 그리고 각 설정시 유의사항에 대해서도 자세하게 다루고 있습니다.
============================================================
패턴 3 :
이번 챕터에서는 성능 요구 사항을 만족하는 설계하기 다섯 배 빠른 AWS 전용 DB 엔진 도입하기에 대하여 설명합니다.
- 인메모리 캐시와 고속 RDB 활용법을 이용한 인트라 웹 시스템 구성도를 볼 수 있습니다.
- 애플리케이션 서버의 스케일 아웃 자동화하기와 오토스케일링 그룹 설정 시세 가지 주의점에 대하여 알 수 있습니다.
* 모니터링 설정, 스케일링 정책 설정, EC2 구매 옵션 선택시 주의점을 알려줍니다.
- AWS에서 주요 서비스에 대한 SLA(Service Level Agreement)를 설명해줍니다. 이 부분은 클라우드 사용시 중요한 내용으로
자세히 설명하고 있어서 다른 밴더사와 비교할 수 있습니다.
============================================================
패턴4 :
이번 챕터에서는 가용성에 대하여 자세하게 다룹니다. 모든 클라우드 서비스 제공 업체는 약관에 명시된 SLA(Service Level Agreenment) 외에는 책임지지 않습니다.
- 장애 발생을 전제로하는 설계 부분에서는 가용성에 민감한 인트라 웹 시스템의 개요와 인프라 핵심 설계 사항을 이미지와 함께 자세하게 다루고 있습니다. 그리고 가용성 계산하는 방법과 EC2 인스턴스 자동 복구 방법에 대해서도 다루고 있습니다. 마지막으로 데이터 백업을 통한 다중화 비용을 아끼는 방법에 대해서도 어떠한 방법으로 할 수 있는지 설명해줍니다.
============================================================
패턴 5 :
이번 챕터에서는 AWS 환경에서 백업하는 방법에 대하여 소개합니다.
먼저 온프레미스 환경의 데이터 백업에 대하여 알아봅니다. 3가지 방법에 대해서 설명합니다. S3를 명령행 인터페이스를 통하여 백업하기 인데 저렴하면서도 간편한 방법입니다. 그리고 EC2와 EBS로 구축한 백업용 서버를 이용한 방법입니다. 온프레미스 환경의 백업 구성을 그림의 예로 설명하고 있어 이해하는데 도움이 됩니다. 마지막으로 S3로 직접 접속을 통하여 백업하는 방법도 이미지를 통하여 설명하고 있어 이해하는데 도움이 됩니다. 이러한 방법 이외에도 서드파티 제품을 이용하거나 백업 파일을 장기 보관하는 방법도 다루고 있습니다. 마지막으로는 AWS에 구축한 시스템을 백업하는 방법에 대하여 알아봅니다.
- 백업 구분은 초기 구축할 때 모든 리소를 백업하거나, 설정을 변경할 때 시스템을 백업, 정기적인 데이터 백업에 대하여 생각해야 합니다.
============================================================
패턴 6:
이번 챕터에서는 파일 서버를 용도에 맞춰 다양한 구성을 선택하여 설계하는것에 대하여 설명합니다.
실무에서 어떠한 방법으로 파일 서버를 구성할 것인지를 설명합니다.
S3를 사용하게 되면 일반적인 파일 서버와 다른것을 알 수가 있습니다. S3는 오브젝트 스토리지이기 때문에 사용 방법이 다른데 그 부분을 자세하게 설명합니다.
다음으로는 EFS를 NFS 서버로 이용하는 방법에 대해서 다룹니다. EFS는 관리형 파일 서버이고 NFS(네트워크 파일 시스템)는 프로토콜 버전 4.0과 4.1을 지원한다고 합니다. 책에서는 EFS 특징을 표로 잘 정리해서 알려주고 있습니다. 그리고 EFS를 마운트하는 개념도를 그림으로 정리해서 알려줍니다. 마지막으로 전용선을 통한 안정성과 보안을 확보하는 방법과 워크독스에서 파일을 공유하는 시스템 구성에 대해서도 개요와 함께 구성도를 보여줌으로써 실무에서 필요한 충분한 개념을 이해시키고자 하고 있습니다.
========================================================================================
패턴 7 :
이번 챕터에서는 AWS를 활용하여 데이터 분석 시스템을 신속하면서도 작게 시작한다는 설계 패턴을 설명합니다.
-브랜드를 출시한다는 가정을 두고 데이터 분석을 하는 시스템을 설계합니다. 구조화 데이터를 다루는 데이터 분석 시스템의 구성도를 보여줍니다. AWS 전체 구성에서 EC2와 RDS DB인 아마존 RDS로 구축을 하는 모습을 보여줍니다. 그리고 플라이데이터를 사용한 기존 시스템과의 간단한 데이터 연계를 설명합니다. 다음으로는 외부 데이터를 가져오는 두가지 방법에 대하여 설명합니다. AWS가 제공하는 퍼블릭 데이터 셋과 퍼블릭 데이터셋에 없는 외부 데이터입니다. 마지막으로는 기존 시스템이 온프레미스에 있는 경우에 대해서 설명합니다.
============================================================
패턴 8 :
이번 챕터에서는 AWS에서 제공하는 서비를 활용하여 분산 처리 기술인 하둡을 다루는 방법에 대해서 설명합니다.
- 구조화되지 않은 데이터를 다루는 데이터 분석 시스템 구성도를 보여줍니다. 이 방법의 특징에 대해서 설명이 잘 되어 있습니다. 다음으로는효율적인 로그 수집 방법에 대해서 설명합니다. 먼저 플루언트디를 사용한 로그 수집 방법에 대하여 그림으로 제공합니다. 다음으로 아마존 EMR에 의한 데이터 정형화의 흐름에 대해서 설명합니다. 로그가 늘어날 경우에 대한 EMR 튜닝하는 방법과 공유하는 방법에 대해서도 설명합니다.
============================================================
패턴 9 :
이번 챕터에서는 효율적으로 AI를 학습하고 시행하기 위한 에지와 IoT를 연계하기 위한 방법에 대하여 설명합니다. 에지와 클라우드를 연계해서 처리하는 아키텍처에 대해서 먼저 알아봅니다. IoT와 AI의 구성도를 보여줍니다. 상당히 복잡하고 설계함에 있어서 고민이 많이 필요해 보입니다. 기계학습에 있어 다양한 프레임워크가 있습니다. 다음으로는 기계학습 개발 환경에 대해 가볍에 설명하고 학습 환경을 구축하는 환경에 대해서 설명합니다. 마지막으로는 에시 컴퓨팅에 대해서 설명하고 마무리합니다. 깊이 있게 설명이 이루어지는것은 아니기 때문에 따로 학습이 필요합니다.
============================================================
패턴 10 :
이번 챕터에서는 완전 관리형 CI 서비스를 이용하여 컨테이너로 무중단 릴리스 하는 방법에 대하여 설명합니다.
AWS 코드파이프라인을 활용하여 빌드, 테스트, 배포 자동화하는 방법에 대하여 설명합니다. 그리고 AWS가 제공하는 컨테이너 관리 서비스에 대해 살펴봅니다. EC2 인스턴스를 등록하고 클러스터를 만들고, 컨테이너를 만들고 작업을 정의하고 정책을 설정하고 작업을 실행하는 방법에 대하여 설명합니다. 마지막으로는 무중단 신 버전을 배포하는 방법에 대하여 그림을 보여주면서 설명합니다.
============================================================
패턴 11 :
이번 챕터에서는 asw를 이용한 모바일 앱 쾌속 개발에 대한 내용입니다. 먼저 SDK, 테스트 서비스, 구성 관리 서비스를 어떻게 활용하는지에 대하여 설명하고 그에 맞는 환경 구성도를 보여줍니다. 그리고 모바일 앱으로 직접 AWS 서비스에 접속하는 방법에 대해서 설명합니다. SDK를 사용하지 않고 접속하는 방법과, SDK를 사용해서 접속하는 방법입니다.
그리고 단말기 테스트를 진행하는 방법에 대하여 잘 설명해줍니다.
============================================================
패턴 12 :
이번 챕터에서는 EC2를 사용하지 않고 신속하게 서비스를 구축하는 방법으로 람다를 이용합니다.
먼저 서버리스 포털 사이트를 구축하는 예제를 가지고 웹 구축하고자 하는 웹 시스템의 구성도를 보여줍니다. 그리고 람다 API 게이트웨이로 웹 서비스를 만드는 방법에 대하여 설명합니다. API를 호출 할때 어떻게 되는지 알 수 있습니다. 다음으로 람다 함수를 작성하는 방법과 실행하는 방법에 대해서 설명합니다. 이때 람다 함수를 사용하는데 있어서 유의사항도 함께 설명함으로써 구축 할때 이슈에 대해서 잘 짚어주고 있습니다. 중요한 람다를 사용함으로써 발생하는 요금 구조에 대해서 잘 설명해줍니다.
============================================================
패턴 13 :
이번 챕터에서는 단기간에 릴리스를 실현하는 방법과 EKS로 컨테이너를 실행하고 관리하는 방법에 대하여 설명합니다.
마이크로 서비스를 사용하기 위한 내용과 아마존 EKS로 마이크로서비스 컨테이를 관리하는 방법 파게이트로 워크로드 실행환경 관리하는 방법, 워크플로 관리하기, 그리고 S3로 데이터 레이크를 구축하기 위한 설명, S3가 필요한지에 대하여 설명해줍니다.
============================================================
패턴 14 :
이번 챕터에서는 온프레미스 환경과 연계하기 위한 방법에 대하여 설명합니다.
온프레미스와의 연계를 전제로 한 인프라 설계를 위한 시스템 구성도를 보여줍니다. 그리고 다이렉트 커넥트 구조가 무엇인지 설명합니다. 이 부분은 온프레미스와 AWS를 연결하는 네트워크 구조에 대해서 설명하는 것입니다. 그리고 다중화에 따른 회선 결정하는 법, 무중단 데이터베이스 동기화하는 방법, 모니터링을 고려하여 설계하는 방법에 대해서 설명합니다.
============================================================
이렇게 해서 AWS 구축 14가지 패턴에 대하여 알아보았습니다. 이 책을 통해서 서버리스에서 마이크로서비스와 AI까지 실무에서 어떠한 방법으로 설계를 하고 적용할 수 있는지 전반적인 구성도와 함께 간결하게 설명을 해줍니다. 전세계에서 가장 높은 점유율을 가지고 있는 AWS에 대해서 알 수가 있어서 좋았습니다 .다만 역시나 AWS는 너무나 방대한 지식으로 이루어져 있어서 활용하기가 만만치 않다는것을 이번 책을 통해서 다시한버 느낄수 있습니다.
실무에서 사용하고자하는 여러가지 상황에 대해서 잘 설명이 되어 있기에 AWS로 시스템 구축을 해보자 하시면 한권 소장하시는것 추천 드립니다.
===========================================================
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."