AWS 인프라 구축 가이드

Jane의 study note.·2022년 12월 2일
0
post-thumbnail

<서비스 운영이 쉬워지는 AWS 인프라 구축 가이드>: 서버 구축부터 배포, 모니터링, 관리 자동화, 데브옵스까지
AWS와 서비스 운영에 첫걸음을 내디딜 수 있게 도와준다!
서비스 개발과 인프라 관리를 담당하는 실무자의 운영 노하우를 배우자!

이 책은 AWS나 클라우드 환경에 익숙하지 않은 분들이 AWS 서비스를 잘 활용해 실전에서 바로 서비스를 운영할 수 있게 도와준다. 기초적인 서버 구성 방법부터 배포, 모니터링, CI/CD 같은 고도화 등 운영 서버 관리에 필요한 모든 영역을 다룬다. 이론에만 머무르는 것이 아니라 실무에서 바로 서비스를 운영할 수 있도록 30개 가량의 실습이 포함돼 있으며, 환경 구성은 물론 다양한 서비스 사용 시 발생하는 예외 상황에 바로 대처할 수 있게 돕는다.

[1부] AWS를 이용한 운영 서버 환경 구축

· 01장: 운영 서버와 AWS 소개

1.1 운영 서버
1.2 운영 서버 관리의 세 단계
1.3 AWS
1.3.1 AWS의 탄생 배경
1.3.2 운영 서버에 필요한 서비스들을 제공하는 AWS
1.3.3 클라우드 플랫폼 서비스로서의 AWS
1.3.4 클라우드 서비스 플랫폼을 써야 하는 이유
1.3.5 전 세계에서 사용할 수 있는 AWS
1.3.6 회원 가입
1.3.7 무료로 AWS 서비스를 사용할 수 있는 방법

· 02장: 운영 서버 환경의 구성

2.1 운영 서버 아키텍처의 이해
2.1.1 단일 서버
2.1.2 애플리케이션/데이터베이스 서버 분리
2.1.3 서버 단위의 로드 밸런서
2.1.4 서버 내 앱 단위의 로드 밸런서
2.2 AWS EC2를 이용한 서버 인스턴스 생성과 관리
2.2.1 EC2
2.2.2 EC2를 생성하려면 꼭 알아야 하는 개념
2.2.3 [실습] AWS EC2 인스턴스 생성
2.2.4 [실습] 샘플 프로젝트를 실행하기 위한 서버 환경 구성
2.3 소스코드 배포
2.3.1 Git을 이용한 소스코드 배포
2.3.2 [실습] Git으로 EC2 인스턴스에 코드 배포하기
2.4 웹 서버와 웹 애플리케이션 서버
2.4.1 웹 서버
2.4.2 웹 애플리케이션 서버
2.4.3 웹 서버와 웹 애플리케이션 서버의 사용
2.4.4 클라이언트의 요청 이동 경로
2.4.5 nginx, Phusion Passenger
2.4.6 [실습] nginx, Phusion Passenger 설치 및 서비스
2.4.7 [실습] nginx, Phusion Passenger 서비스 명령어 추가
2.4.8 [실습] 시스템 시작 시 자동 시작 서비스에 등록
2.4.9 [실습] 하나의 서버에서 두 개의 애플리케이션 서비스하기
2.5 정리

· 03장: 다중 서버 환경 구성

3.1 AWS Auto Scaling 그룹을 이용한 다중 서버 구성
3.1.1 AWS Auto Scaling 그룹
3.1.2 AWS Auto Scaling 그룹의 응용 예
3.1.3 AWS Auto Scaling 그룹의 구성
3.1.4 [실습] Auto Scaling 그룹 생성
3.1.5 Auto Scaling 그룹 화면 구성
3.1.6 [실습] Auto Scaling을 통한 인스턴스 자동 추가, 제거
3.1.7 Auto Scaling 그룹 개념 정리
3.2 AWS Elastic Load Balancing을 이용한 서버 트래픽 분산 관리
3.2.1 Elastic Load Balancing
3.2.2 대상 그룹
3.2.3 로드 밸런서의 상태 검사
3.2.4 [실습] Auto Scaling 그룹, 대상 그룹, 로드 밸런서 구성
3.3 장애 조치 아키텍처 구성
3.3.1 Auto Scaling 그룹을 이용한 장애 조치
3.3.2 [실습] Auto Scaling 그룹과 로드 밸런서를 통한 장애 조치
3.4 정리

· 04장: 운영 서버의 외부 환경 구성

4.1 도메인, DNS
4.1.1 도메인
4.1.2 [실습] AWS Route 53을 이용한 도메인 등록
4.1.3 [실습] 로드 밸런서에 도메인 등록
4.2 SSL/TLS, HTTPS
4.2.1 SSL/TLS 인증서, HTTPS 동작 방식
4.2.2 SSL/TLS 인증서의 가격
4.2.3 SSL/TLS 인증서 설치 방법
4.2.4 [실습] AWS Certificate Manager를 통한 SSL/TLS 인증서 등록
4.3 정리

· 05장: 배포 과정

5.1 배포 관련 용어
5.1.1 무중단/중단 배포
5.1.2 현재 위치 배포
5.1.3 서버 단위의 블루/그린 배포
5.1.4 서버 내 블루/그린 배포
5.2 블루/그린 배포
5.2.1 배포에 필요한 절차
5.2.2 [실습] 블루/그린 배포
5.3 정리

· 06장: 배포 자동화

6.1 AWS IAM
6.1.1 IAM 설명
6.1.2 용어
6.2 AWS CodeDeploy
6.2.1 CodeDeploy 설명
6.2.2 CodeDeploy 작동 절차
6.2.3 CodeDeploy 구성 요소
6.2.4 [실습] CodeDeploy로 현재 위치 배포 진행하기
6.2.5 기타
6.3 정리

· 07장: 비밀 값 관리

7.1 비밀 값
7.1.1 비밀 값 관리 원칙
7.2 관리 방법
7.2.1 배포 자동화 툴
7.2.2 Blackbox
7.2.3 Vault
7.2.4 AWS Secrets Manager
7.2.5 [실습] Secrets Manager 사용법
7.2.6 AWS Systems Manager의 파라미터 스토어
7.2.7 어떤 방법을 쓸 것인가?
7.3 정리

· 08장: 모니터링 시스템 구축 및 활용

8.1 모니터링의 목적과 영역
8.2 AWS CloudWatch
8.2.1 AWS CloudWatch 설명
8.2.2 CloudWatch 지표
8.2.3 [실습] CloudWatch에 사용자 지정 지표 기록
8.2.4 [실습] CloudWatch Agent로 메모리, 디스크 사용량 지표, 로그 기록
8.2.5 CloudWatch 대시보드
8.2.6 [실습] CloudWatch 대시보드 생성
8.2.7 CloudWatch 경보
8.2.8 [실습] CloudWatch 경보 생성
8.3 애플리케이션 성능 관리 툴
8.3.1 APM 툴 설명
8.3.1 NewRelic APM
8.4 정리

[2부] 고도화된 운영 서버 관리

· 09장: 로그 분석

9.1 AWS CloudWatch Logs
9.1.1 CloudWatch Logs 소개
9.1.2 [실습] CloudWatch Log에 로그 적재
9.2 Elastic Stack
9.2.1 Elastic Stack 설명
9.2.2 [실습] Elastic Stack 구축
9.3 정리

· 10장: 자동화된 서버 관리

10.1 AWS Elastic Beanstalk
10.1.1 Elastic Beanstalk 소개
10.1.2 Elastic Beanstalk의 장단점
10.1.3 웹 애플리케이션 환경, 작업자 환경
10.1.4 [실습] Elastic Beanstalk으로 배포하기
10.1.5 Elastic Beanstalk를 이용한 서비스 관리
10.2 정리

· 11장: 데브옵스

11.1 데브옵스란?
11.1.1 지속적 통합(CI) 소개
11.1.2 지속적 전달, 지속적 배포(CD) 소개
11.1.3 AWS와 데브옵스
11.2 AWS CodePipeline
11.2.1 AWS CodePipeline 설명
11.2.2 [실습] AWS CodePipeline 구성
11.3 정리

· 12장: AWS를 더 잘 사용하기 위한 서비스

12.1 프로그램으로 AWS의 기능 사용하기
12.1.1 AWS CLI
12.1.2 AWS SDK
12.1.3 [실습] AWS CLI 사용해보기
12.2 파일 스토리지
12.2.1 EC2 인스턴스 스토어
12.2.2 EBS(Elastic Block Store)
12.2.3 EFS(Amazon Elastic File System)
12.2.4 S3(Simple Storage Service)
12.3 EC2 인스턴스 비용 절감하기
12.3.1 스팟 인스턴스
12.3.2 예약 인스턴스
12.4 파일 제공
12.4.1 S3
12.4.2 CloudFront
12.5 데이터 저장
12.5.1 RDS
12.5.2 ElastiCache
12.6 알림
12.6.1 SNS
12.7 정리

· 부록A: 윈도우에서 PuTTY 설치, SSH 접속키 설정, 접속하기
부록B: macOS, 리눅스에서 SSH 접속하기

※ 출처: AWS 인프라 구축 가이드

0개의 댓글