한성대학교 학술정보관




상세서지정보



Amazon Web Services로 시작하는 클라우드 입문



Amazon Web Services로 시작하는 클라우드 입문/아사 시호 지음
서울 :(영진닷컴,): 2018
461 p.  삽화 ;21 cm.
아마존웹서비스 웹서비스 클라우드컴퓨팅
색인: p. 454-461
아사 시호의 한문명은 '阿佐志保' 임
감수: 야마다 요시히로(山田祥寬)

9788931457070


₩27000

  소장사항 : 한성대학교 학술정보관

소장사항
  • 대출가능
  • 등록번호 : 0736644
  • 소장위치 : Design&IT정보센터(6F)
    92-B6-e-00****
  • 별치기호 :
  • 청구기호 : 004.588 ㅇ151ㅇ
예약불가
예약자 : 0명

  책소개

이 도서는 익숙한 온프레미스 아키텍처 기반의 시스템을 AWS의 기본 서비스들을 사용하여 구축하는 절차를 설명하고 있는 책이다. AWS를 이용하면서 알아야 할 클라우드 지식부터 계정 등록 방법, 애플리케이션 서버를 구축, 네트워크 구축 방법은 물론 AWS를 사용함에 있어 꼭 알아야 할 보안 대책 방법과 앞으로 많은 주목을 받을 Docker 운용 절차를 설명한다.

1장 클라우드의 역할
클라우드 퍼스트라는 단어에서도 알 수 있듯이 정보계 시스템뿐만 아니라 기간계 업무 시스템에서도 클라우드를 사용하여 새로운 가치와 서비스를 제공하는 기업들이 증가하고 있다. 클라우드는 단순한 기술 요소가 아니라 현재까지의 업무 시스템 개발 방법 자체나 엔지니어가 가져야 할 능력을 크게 변화시킬 것이다. 1장에서는 AWS를 업무 시스템에서 이용하면서 기본적으로 알아야 하는 클라우드의 기본 지식을 설명한다.

2장 AWS 기본과 계정 등록
AWS가 제공하고 있는 서비스나 도큐먼트 수는 방대하기 때문에 세계 최대 규모의 클라우드 서비스라고 해도 과언이 아니다. 이와 같이 거대한 클라우드 서비스에서 특히, 초보자가 실제로 AWS를 이용할 때 “무엇을 할 수 있을까?”, “어떻게 이용해야 하나?” 등 클라우드 서비스와 관련된 구체적인 이미지를 생각하기는 어렵다. 이 장에서는 AWS가 제공하는 전체 서비스에 대한 개요와 AWS를 이용할 때 알아 두어야 하는 고려사항, 계정 등록 절차, AWS 이용 방법을 설명한다.

3장 Web 서버 구축
Amazon Web Services에서는 어떤 Web 서비스를 만들려고 하는가에 따라 이용자가 스스로 어떤 서비스를 어떻게 조합해서 이용할 것인지 결정해야 한다. 그러나 AWS를 처음 이용하는 사람들은 서비스가 너무 많아서 어느 것을 사용해야 좋을지 결정하기가 쉽지 않다. 여기서는 AWS의 대표적 서비스인 S3나 EC2를 사용하여 Web 사이트를 구축하고 AWS의 기본적인 사용법을 소개한다.

4장 Web 애플리케이션 서버 구축
AWS에서는 Web 시스템 구축에 필요한 다양한 기능을 서비스로 제공하고 있다. 앞선 3장에서 소개한 정적인 Web 사이트 구축뿐만 아니라 PHP나 Java 등 동적인 Web 애플리케이션 실행 환경, Web 애플리케이션이 이용하는 데이터를 관리하기 위한 데이터베이스 서버를 쉽게 구축할 수 있다.
4장에서는 업무 시스템에서 널리 이용되고 있는 Java Web 애플리케이션 실행 환경을 구축하는 법을 소개한다. 그 과정에서 AWS 가상 서버 “EC2”와 데이터베이스 “RDS”의 기본적인 사용법을 배운다. 또한 AWS가 제공하는 개발 도구 중 하나인 “AWS Toolkit for Eclipse”의 기본적인 사용법도 함께 알려 준다.

5장 네트워크 구축
AWS 같은 Public 클라우드의 경우, 물리적으로 차단시키는 것이 가능한 온프레미스 환경과는 다르게 약간만 설정이 잘못되어도 중요한 정보가 인터넷상으로 유출되는 위험이 발생할 수 있다. 따라서 5장에서는 AWS를 이용하는 데 있어 알아 두어야 하는 네트워크와 보안의 기초 지식과, AWS 방화벽(Firewall) 기능인 보안 그룹(Security group)이나 가상 네트워크를 구축하는 VPC의 사용법을 소개한다.

6장 AWS Security
업무 시스템의 정보 보안 대책은 정도가 없으며, 시스템의 취약성과 위협도 시시각각 변화하고 있어 다양한 대책을 강구할 필요가 있다. 여기서는 AWS를 이용하기 위해서 최소한 알고 있어야 하는 보안 기초 지식과 AWS에서 사용자 계정 관리와 데이터를 암호화하는 방법 등을 설명한다.

7장 시스템 운용
7장에서는 AWS를 이용하여 구축한 시스템을 안정적으로 가동시키기 위해 알아야 하는 시스템 운용의 기본 지식과, AWS 서비스 감시와 데이터 관리 방법, 코드에 의한 구성 관리, 자동화 절차 등을 설명한다.

8장 Docker 컨테이너 운영 환경 구축
애플리케이션과 인프라 환경을 1개로 통합하여, 개발 환경 → 테스트 환경 → 실제 운영 환경으로 이행할 수 있는 플랫폼으로서 Docker가 주목을 받고 있다. 여기서는 이러한 Docker의 기본 지식과 AWS가 Docker를 운용하는 절차를 소개한다.

  목차

1장 클라우드의 역할
1.1 시스템 기반과 기존 인프라의 문제점
1.1.1 시스템 기반이란?
NOTE 업무 시스템으로 이용되고 있는 주요 서버
1.1.2 데이터 센터 보유의 문제점

1.2 클라우드 시스템이란?
1.2.1 클라우드의 서비스 체계
1.2.2 클라우드는 만능인가?
NOTE 클라우드 퍼스트(Cloud First)

1.3 주요 클라우드 서비스
1.3.1 Amazon Web Services
1.3.2 Microsoft Azure
1.3.3 IBM SoftLayer / Bluemix
1.3.4 Google Cloud Platform
1.3.5 사쿠라 클라우드
1.3.6 니프티 클라우드

1.4 클라우드 서비스의 활용 사례
1.4.1 빅 데이터
1.4.2 업무 시스템으로 클라우드 활용
1.4.3 모바일 앱의 백 엔드 기능
1.4.4 재해 복구(Disaster Recovery) 시스템

2장 AWS 기본과 계정 등록
2.1 Amazon Web Services에서 제공하는 서비스
2.1.1 컴퓨팅 관련 서비스
2.1.2 스토리지 & 콘텐츠 전송 관련 서비스
2.1.3 데이터베이스 관련 서비스
2.1.4 네트워크 관련 서비스
2.1.5 기타 서비스

2.2 AWS 클라우드 디자인 패턴
2.2.1 Multi-Server 패턴(서버의 다양화)
2.2.2 Scale Up 패턴(서버의 확장/축소)
2.2.3 DB Replication 패턴(데이터베이스 복제)
2.2.4 Functional Firewall 패턴(계층별 접속)

2.3 AWS 데이터 센터
2.3.1 리전(Region)
2.3.2 Availability Zone(AZ)

2.4 AWS 계정 등록 및 사용
2.4.1 AWS 계정 등록
2.4.2 AWS의 요금 체계와 무료 이용 한도

2.5 AWS 개발 도구
2.5.1 AWS 관리 콘솔
NOTE Web 관리 콘솔의 바로가기(Short Cut) 생성
2.5.2 AWS 명령 라인 인터페이스(CLI, Command Line Interface)
2.5.3 소프트웨어 개발 키트(SDK, Software Development Kit)
2.5.4 통합 개발 환경(IDE, Integrated Development Environment)의 플러그인(Plug-In)

3장 Web 서버 구축
3.1 Web의 구조와 HTTP 통신의 기본
3.1.1 Web 애플리케이션이란?
3.1.2 Web 서버에 대한 Request(요청)과 Response(응답)
3.1.3 Web 서버에 접속과 URL 서식
3.1.4 IP 주소와 도메인 이름
3.1.5 HTTP 통신의 구조
NOTE Well known PORT

3.2 S3를 사용한 Web 사이트 구축
3.2.1 Amazon Simple Storage Service(Amazon S3)란?
3.2.2 S3의 기본 용어
3.2.3 S3를 사용한 Web 사이트 구축
NOTE 기밀 정보 관리

3.3 EC2를 사용한 Web 서버 구축
3.3.1 Amazon Elastic Compute Cloud(Amazon EC2)란?
NOTE 사이징(Sizing)의 어려움
3.3.2 EC2의 기본 용어
3.3.3 EC2 인스턴스 기동
3.3.4 EC2 인스턴스 상태 확인
3.3.5 Web 서버 설치
NOTE 키 파일 관리
NOTE 패키지 관리 시스템
3.3.6 Web 콘텐츠 업로드와 동작 확인
NOTE SCP
3.3.7 EC2 인스턴스의 시작/정지/재기동/삭제

3.4 ELB를 사용한 부하 분산
3.4.1 커스텀 AMI에 의한 EC2 인스턴스 생성
3.4.2 ELB에 의한 부하 분산 시스템 구축
3.4.3 ELB 동작 확인

3.5 Elastic IP를 사용한 독자 도메인으로 사이트 운용
3.5.1 고정 IP 주소(Elastic IP) 할당
NOTE Elastic IP 주소 제한
3.5.2 Route 53에 의한 DNS 서버 설정

3.6 CloudFront를 사용한 데이터 전달
3.6.1 CloudFront란?
3.6.2 CloudFront를 사용한 Web 콘텐츠 배포

4장 Web 애플리케이션 서버 구축
4.1 Web 애플리케이션 아키텍처 기본
4.1.1 Web 시스템 아키텍처
4.1.2 AWS에서 Web 시스템 아키텍처
NOTE 서버리스(Serverless) 아키텍처

4.2 애플리케이션 개발 환경 구축
4.2.1 통합 개발 환경
4.2.2 Eclipse와 AWS Toolkit 설치
4.2.3 AWS Toolkit의 설정
NOTE 인증 정보 관리

4.3 MySQL에 의한 데이터베이스 서버 구축
4.3.1 Amazon Relational Database Service(RDS)란
NOTE 관계형 데이터베이스
NOTE ADO.NET
NOTE IOPS
4.3.2 보안 그룹 생성
4.3.3 Parameter Group 생성
NOTE Option Group과 Subnet Group
4.3.4 RDS 인스턴스 생성
NOTE RDS 무료 이용 한도
4.3.5 데이터 등록(AWS Toolkit에 의한 실행)
4.3.6 데이터 등록(MySQL 명령 라인에서 SQL 실행)

4.4 Tomcat을 이용한 Web 애플리케이션 서버 구축
4.4.1 Apache Tomcat이란?
4.4.2 보안 그룹 생성
4.4.3 EC2 인스턴스 시작
NOTE AWS 관리 콘솔에서 EC2 인스턴스를 생성하는 경우
4.4.4 Apache Tomcat 설치
4.4.5 JDBC 드라이버 설치
NOTE JDBC란?
4.4.6 Web 애플리케이션 Deploy
4.4.7 Tomcat 8 기동
4.4.8 Web 애플리케이션 동작 확인
4.4.9 Web 애플리케이션 서버용 AMI 생성

5장 네트워크 구축
5.1 네트워크 기초 기술
5.1.1 네트워크 Address(Network Address)
NOTE IP Address의 고갈
NOTE 네트워크 Address 부문과 호스트 Address 부문에 대한 생각
5.1.2 네트워크 프로토콜(Protocol)
5.1.3 방화벽(Firewall)과 라우터(Router)

5.2 보안 그룹(Security Group)에 의한 패킷 필터링
5.2.1 보안 그룹
5.2.2 보안 정책(Security Policy)의 검토
NOTE 방화벽 설정
5.2.3 EC2 보안 그룹 수정 절차
5.2.4 RDS 보안 그룹 수정 절차
5.2.5 보안 설정에 대한 동작 확인

5.3 VPC에 의한 가상 네트워크 구축
5.3.1 Amazon VPC란?
5.3.2 네트워크 구성의 검토
5.3.3 가상 네트워크(VPC) 생성
5.3.4 가상 라우터(인터넷 게이트웨이) 생성
5.3.5 방화벽(보안 그룹) 생성
5.3.6 서버(인스턴스) 생성
5.3.7 Load Balancer 생성
5.3.8 관리를 위한 네트워크 구성
5.3.9 Maintenance 환경 동작 확인

6장 AWS Security
6.1 Security 기초 기술
6.1.1 Security란?
NOTE Web 애플리케이션에 대한 대표적인 공격
6.1.2 물리적 보안 대책
6.1.3 계정 관리
6.1.4 데이터 암호화
6.1.5 사용자 교육
6.1.6 보안 감사
NOTE 제3자 인증에 대해서
6.1.7 AWS 공유 책임 모델

6.2 IAM을 이용한 사용자 계정 관리
6.2.1 IAM은?
6.2.2 AWS 사용자 계정
6.2.3 다요소 인증(MFA, Multi Factor Authentication) 설정
NOTE 원 타임 패스워드(OTP, One Time Password)
6.2.4 IAM 계정 생성
6.2.5 IAM 그룹 작성
6.2.6 패스워드 정책의 설정

6.3 데이터 암호화
6.3.1 EC2 인스턴스에 SSH 접속
NOTE 키 페어 Import
6.3.2 S3 데이터 암호화
6.3.3 RDS 데이터 암호화

7장 시스템 운용
7.1 시스템 운용의 기본
NOTE SLA(Service Level Agreement)
7.1.1 용량 관리
7.1.2 가용성 관리
7.1.3 구성 관리/변경 관리
7.1.4 서비스 운용
NOTE 통합 운용 관리 도구

7.2 CloudWatch에 의한 감시
7.2.1 CloudWatch란?
7.2.2 EC2 인스턴스에 대한 실시간 감시

7.3 CloudFormation에 의한 구성 관리
7.3.1 CloudFormation이란?
NOTE AWS에 의한 구성 관리
7.3.2 WordPress 환경의 자동 구성

7.4 데이터의 백업과 복구
7.4.1 EC2의 데이터 백업과 복구
7.4.2 RDS의 데이터 백업과 복구

7.5 과금 관리
7.5.1 이용 요금의 확인

8장 Docker 컨테이너 운영 환경 구축
8.1 Docker란?
8.1.1 Docker란?
NOTE 소프트웨어 이식성(Portability)
8.1.2 가상화 기술이란?
NOTE 소프트웨어의 상호 운용성(Interoperability)
8.1.3 Docker의 기능

8.2 Docker 설치
8.2.1 Docker에서 제공하는 컴포넌트
NOTE Docker for Windows/Mac
8.2.2 Windows 클라이언트에 설치
8.2.3 Docker에서 “Hello world”

8.3 Docker 이미지 생성
8.3.1 Dockerfile이란?
8.3.2 Dockerfile 생성
NOTE 참조 구현이란?
8.3.3 Dockerfile의 Docker 이미지 생성

8.4 Docker 이미지 생성
8.4.1 Docker Hub 계정 등록
8.4.2 Docker Hub에 공개
NOTE Docker에서 Java를 실행할 때 주의사항

8.5 AWS에서 Docker 컨테이너 실행
8.5.1 EC2를 사용하는 방법
8.5.2 ECS를 사용하는 방법
8.5.3 Elastic Beanstalk를 사용하는 방법

8.6 EC2에서 Docker 실행 환경의 구축
8.6.1 EC2에 대한 Docker 설치
NOTE 명령어로 Docker의 실행 환경을 구축하려면
8.6.2 Docker 컨테이너 실행
8.6.3 Docker 컨테이너의 기본 조작

8.7 EC2 Container Service에 의한 Docker 실행 환경 구축
8.7.1 EC2 Container Service란?
8.7.2 Docker 클러스터 구축
8.7.3 Docker 클러스터 운용

Index

  저자소개

WINGS 프로젝트 아사 시호 저

양성건 역
LG산전, 건강보험심사평가원, 철도청, 서울시, 행정자치부, 보건복지부, 국민건강보험공단, 소방방재청, 경찰청, LG텔레콤 등 17년간 다양한 공공 SI프로젝트를 수행했으며 오키나와 우라소에시, 후쿠오카 사가현 등 일본에서 시스템 구축을 위한 BPR/ISP를 수행하였다. 2011년부터 프로젝트 현장에서 감리, 컨설팅, 개인정보영향평가 업무를 수행하고 있다. 번역서로는 “Amazon Web Services로 시작하는 클라우드 입문(영진닷컴)”, “IT 운용 체제 변화를 위한 데브옵스 DevOps(영진닷컴)” 등이 있다.

  문의

한성대학교 문의
담당 이메일
대출/반납, 열람실 관리 염정훈

02-760-5671

02-760-4285




맨 위로 가기