AWS를 이용한 데브옵스 완벽 구축 [AWS 기반 데브옵스 완성을 통한 업무 효율 200% 달성하기]
- 원서명Effective DevOps with AWS: Ship faster, scale better, and deliver incredible productivity (ISBN 9781786466815)
- 지은이나다니엘 펠슨(Nathaniel Felsen)
- 옮긴이이준호
- ISBN : 9791161751566
- 35,000원
- 2018년 05월 14일 펴냄 (절판)
- 페이퍼백 | 496쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 클라우드 컴퓨팅
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
데브옵스를 완벽하게 구축하기 위한 실무 지침서로, 막연한 데브옵스를 실질적으로 구현하는 방법을 제시한다. 직접 사이트를 운영하면서 겪은 문제들을 해결하면서 체득한 노하우를 단계적으로 정리해 보여준다. 매우 실질적인 내용으로 누구든지 이 책의 예시를 반복적으로 수행하다 보면 데브옵스 전문가로 거듭날 수 있을 것이다. 데브옵스를 어떻게 시작해야 할지 막막했다면, 이제 이 책을 통해 그 방법과 절차를 명확히 익힐 수 있을 것이다.
이 책에서 다루는 내용
■ 데브옵스를 실행하는 의미와 데브옵스 원리 확인
■ 템플릿과 구성 관리를 이용한 반복적인 인프라 구축
■ 연속 통합 및 연속 배포 파이프라인 구축을 통한 일간 다중 배포 실현
■ 인프라 확장을 위한 컨테이너 및 서비리스 컴퓨팅을 포함한 최신 기술 활용
■ 성능 지표와 로그 수집 및 알람 전략 구현
■ 시스템을 양호하고 안전하게 만들기
이 책의 대상 독자
소프트웨어 인프라를 구축하고 활용하기를 원하는 개발자, 운영자 및 데브옵스 담당자를 위한 책이다. 전산 과학의 기초 지식이 있다면 좋을 것이다.
이 책의 구성
1장, '클라우드와 데브옵스 혁명'에서는 데브옵스 문화의 특징과 AWS를 최대한 활용하는 방법을 알아본다. 데브옵스 문화를 채택하는 것은 무엇보다 전통적인 엔지니어링 방식과 운영 팀의 운영 방식을 바꾸는 것을 의미한다.
2장, '첫 번째 웹 응용프로그램 배포하기'에서는 AWS와 가장 악명 높은 서비스인 EC2를 소개한다. AWS에 가입한 후, 명령 중 인터페이스를 이용해 가상 서버를 생성하는 방식으로 환경을 구성한다.
3장, '코드로서의 인프라 취급하기'에서는 어떠한 응용프로그램도 호스팅할 수 있는 훌륭한 상용 환경에 대해 설명한다. 어떻게 아키텍처를 구성하고 서버를 모니터링하는지 방법을 배운다.
4장, '연속 통합과 연속 배포 추가하기'에서는 개발자의 생산성을 향상하기 위한 CI/CD를 다룬다. 이를 위해 연속 통합 파이프라인을 구축할 것이다.
5장, '인프라 확장하기'에서는 단일 아키텍처를 서비스 지향 아키텍처로 해체하는 방법을 배운다. 또한 더 나은 로드 밸런싱과 더 나은 서비스 간 커뮤니케이션을 위한 ALB, SQS 및 키네시스와 같은 다른 AWS 관리 서비스에 대해서도 알 수 있다.
6장, 'AWS에서 컨테이너 실행하기'에서는 도커 및 ECS를 이용한 컨테이너 개념과 도커의 동작 원리의 기본을 설명한다. 응용프로그램에 컨테이너를 생성하는 방법도 배운다.
7장, '모니터링과 알람'에서는 응용프로그램 및 인프라에 모니터링과 알람을 추가하는 방법을 설명한다. AWS가 제공하는 클라우드 와치, 일래스틱서치 및 SNS와 같은 서비스의 이점을 이용해 합리적으로 잘 처리하는 방법을 배울 것이다.
8장, 'AWS 환경의 보안성 강화하기'에서는 클라우드의 보다 복잡한 측면 중 하나인 보안에 대해 다루고 인프라의 보안을 감사하고 평가하는 다른 방법들을 배운다.
목차
목차
- 1장. 클라우드와 데브옵스 혁명
- 인프라 관점이 아닌 클라우드 관점으로 생각하기
- 자체 하드웨어 배포 대 클라우드 배포
- 비용 분석
- 적시 제공(Just-In-Time) 인프라
- 서로 다른 계층을 가진 클라우드 서비스
- 데브옵스 문화 받아들이기
- 데브옵스의 기원
- 개발자 대 운영자의 딜레마
- 데브옵스 문화의 주요 특징
- AWS에 배포하기
- AWS 생태계를 최대한 활용하는 방법
- AWS를 이용해 데브옵스 문화와 시너지를 이루는 방법
- 요약
- 인프라 관점이 아닌 클라우드 관점으로 생각하기
- 2장. 첫 번째 웹 응용프로그램 배포하기
- 계정 생성과 구성
- 계정 등록
- 루트 계정에 멀티 팩터 인증 사용하기
- IAM에서 신규 사용자 생성하기
- 명령줄 인터페이스 설치와 구성
- 첫 번째 웹 서버 만들기
- AMI
- 인스턴스 유형
- 보안 그룹
- ssh 키 생성하기
- EC2 인스턴스 띄우기
- 간단한 Hello World 웹 응용프로그램 생성하기
- EC2 인스턴스 중단하기
- 요약
- 계정 생성과 구성
- 3장. 코드로서의 인프라 다루기
- 클라우드포메이션으로 인프라 관리하기
- 클라우드포메이션으로 시작하기
- 클라우드포메이션을 이용 helloworld 예제 다시 작성하기
- 템플릿을 소스 관리 시스템에 추가하기
- 클라우드포메이션 스택 업데이트하기
- 클라우드포메이션 스택 삭제하기
- 구성 관리 시스템 추가하기
- 앤시블로 시작하기
- 컴퓨터에 앤시블 설치하기
- 앤시블 플레이그라운드 생성하기
- 앤시블 저장소 생성하기
- 모듈 실행하기
- 임의의 명령 실행하기
- 앤시블 플레이북
- 풀 모드로 앤시블 실행하기
- EC2 인스턴스에 깃과 앤시블 설치하기
- 클라우드포메이션에 앤시블 통합하기
- 모니터링
- 요약
- 클라우드포메이션으로 인프라 관리하기
- 4장. 연속 통합과 연속 배포 추가하기
- 연속 통합 파이프라인 구축하기
- 앤시블과 클라우드포메이션을 이용해 젠킨스 생성하기
- CI 환경 준비하기
- CI 환경을 이용해 helloworld 응용프로그램 구현하기
- CI 파이프라인 상용화하기
- 연속 배포 파이프라인 구축하기
- 연속 배포를 위한 새로운 웹 서버 생성하기
- 코드 디플로이로 helloworld 응용프로그램 통합하기
- AWS 코드 파이프라인으로 배포 파이프라인 구축하기
- 상용을 위한 연속 파이프라인 구축하기
- 상용에 연속 배포를 실행하기 위한 전략
- 요약
- 연속 통합 파이프라인 구축하기
- 5장. 인프라 확장하기
- 단일 구조의 응용프로그램 확장하기
- 웹 서버를 확장하기 위해 오토 스케일링 그룹 사용하기
- 전통적인 데이터베이스 규모 확장 기초
- 성능 및 비용 절감 향상하기
- 일래스틱 캐시
- 클라우드프론트
- 대용량 트래픽을 취급할 수 있는 응용프로그램 설계하기
- 로드 밸런서
- SQS와 키네시스를 이용한 오프라인 처리
- 서버리스 아키텍처
- 데이터 저장소 확장
- 다중 리전 응용프로그램
- 요약
- 단일 구조의 응용프로그램 확장하기
- 6장. AWS에서 컨테이너 실행하기
- helloworld 응용프로그램 도커화하기
- 도커로 시작하기
- Dockerfile 작성하기
- EC2 컨테이너 서비스 사용하기
- 도커 이미지 관리를 위해 ECR 저장소 생성하기
- ECS 클러스터 생성하기
- ALB 생성하기
- ECS helloworld 서비스 만들기
- ECS에 배포하기 위한 CI/CD 파이프라인 작성하기
- 상용 ECS 클러스터 생성하기
- 코드 빌드를 이용해 컨테이너 생성 자동화하기
- 코드 파이프라인으로 배포 파이프라인 생성하기
- 요약
- helloworld 응용프로그램 도커화하기
- 7장. 모니터링과 알람
- 모니터링을 위해 응용프로그램 측정하기
- AWS 클라우드 와치
- 클라우드 와치를 사용해 helloworld 응용프로그램 모니터링하기
- 일래스틱서치, 키바나 및 파이어호스를 이용한 고급 로그 인프라
- 인프라 모니터링하기
- EC2 모니터링하기
- ECS 클러스터 모니터링
- ALB와 ELB 인스턴스 모니터링하기
- 클라우드 와치와 SNS를 이용해 알람 생성하기
- AWS 단순 알람 서비스
- 응용프로그램의 오류율 증가에 대한 알람 생성하기
- 클라우드 와치 이벤트와 람다를 사용해 사용자 정의 측정 지표에 대한 알람 생성하기
- AWS 상태 모니터링 및 알람
- 요약
- 모니터링을 위해 응용프로그램 측정하기
- 8장. AWS 환경의 보안성 강화하기
- 노력을 집중할 수 있는 곳 이해하기
- 공유된 책임 모델
- 클라우드 보안 감사
- IAM 계층의 보안성 개선하기
- AWS에서 사용자 관리하기
- AWS에서 서비스 권한 관리하기
- 네트워크 수준에서 보안 강화하기
- 공용 및 사설 서브넷을 가진 VPC 생성하기
- 신규 VPC를 이용해 helloworld 다시 생성하기
- VPC에 VPN 연결 생성하기
- 표적 공격으로부터 보호
- 표적 공격으로부터 보호
- 랜섬웨어로부터 보호
- 요약
- 노력을 집중할 수 있는 곳 이해하기