• 서버/인프라 실전 구축 가이드
  • 모던 웹을 지탱하는

  • 이토 나오야 외 17명 지음
  • 성창규 옮김

  • 오픈소스 & 웹 시리즈 _ 072
  • ISBN: 9791158390099
  • 28,000원 | 2015년 09월 10일 발행 | 420쪽



가상 서비스, 클라우드 서비스 기술이 대중화되면서 언제부터인가 아마존 웹 서비스, 도커, CI등의 용어가 등장하기 시작했다. 서버 가상화 기술을 기반으로 한 이 기술들은 아직까지는 많은 개발자, 기술자들에게는 생소한 영역이다.

이 책은 대규모 웹 서비스 환경을 운영한 경험자와 아마존 웹 서비스(AWS)의 엔지니어, 실제 모바일 게임 등을 운영하는 엔지니어들이 실무에서 접한 새로운 IT 기술에 대한 경험을 다루고 있다. 이런 기술을 아직 접해 보지 못한 사람들에게는 매우 생소할 수도 있지만, IT에 대한 기본적인 지식이 있는 엔지니어라면 누구든 따라 할 수 있도록 실습 위주로 구성돼 있어 가상화 기술을 접해 보고 싶은 엔지니어라면 이 책이 하나의 해답이 될 수 있다.

원리까지 다루지는 않지만 최신 인프라 기술 흐름에 대한 경험을 익히고 실무에 접목해 보고자 할 때 분명 많은 도움이 될 것이다. 웹 서비스 개발자나 초/중급의 인프라 운영자에게 이 책을 권한다.

이토 나오야 외 17명

성창규

전자계산학을 전공하고, 엔씨소프트에서 데이터베이스 엔지니어로 근무했으며 엔씨제팬의 주재원, Line, gloops 등의 일본 기업에서 근무했다. 주로 게임 업계에서 PC와 모바일 관련한 대규모 인프라의 데이터베이스 시스템을 운영했으며, 서버 가상화 기술 및 빅 데이터 시스템에 많은 관심을 가지고 있다. 현재는 NHN Playart(일본) 그룹사의 데이터베이스 시스템을 총괄 관리하고 있다.

  • [1부] 입문: 코드를 이용한 인프라 구축
    • ▣ 01장: 셰프와 베이그런트로 인프라의 코드화
      • 인프라 구성의 자동화
      • 사용 환경
      • 베이그런트를 사용한 가상 서버 준비
      • 셰프로 인프라의 코드화
      • 요약
    • ▣ 02장: 서버스펙으로 테스트 주도 인프라 구축
      • 서버 구성 테스트 만들기
      • 서버스펙을 시작하며
      • 서버스펙과 셰프 솔로를 이용한 테스트 주도 개발
      • 서버스펙의 응용
      • 서버스펙으로 어디까지 해야 할까?
      • 요약
  • [2부] 아마존 웹 서비스 최신 활용
    • ▣ 03장: 아마존 웹 서비스 레이어별 비교
      • 시작하며
      • AWS 서비스의 개요
      • 컴퓨팅 서비스
      • 네트워크 서비스
      • 스토리지 서비스
      • 데이터베이스 서비스
      • 배포
      • 요약
    • ▣ 04장: EC2와 VPC를 이용한 시스템 구축
      • 이후의 장에 대해서
      • 2부의 시스템 구성
      • 네트워크 구성
      • VPC 마법사를 이용한 VPC 작성
      • 자신의 VPC 만들기
      • EC2의 설정
      • 워드프레스 설치와 설정
      • ELB 생성
      • ELB 엔드포인트에 접속
      • AWS CLI에 태그값을 취득해 설정 파일 변경
      • 요약
    • ▣ 05장: RDS를 이용한 데이터베이스 활용
      • 시작하며
      • RDS의 개요
      • DB 생성
      • DB 내보내기와 가져오기
      • Provisioned IOPS(PIOPS) 구성
      • Multi-AZ 배포
      • 리드 레플리카
      • 백업과 복원
      • RDS 모니터링하기
    • ▣ 06장: 클라우드포메이션을 이용한 구축 자동화
      • 시스템 구성 자동화의 이점
      • 인프라 구축 자동화
      • 미들웨어 구축 설정 자동화와의 조합
      • 요약
  • [3부] 테스트 주도 인프라와 CI
    • ▣ 07장: 인프라 테스트와 그 중요성
      • 3부를 시작하며
      • Infrastructure as Code - 인프라의 코드화
      • 테스트 주도 인프라
      • 인프라 CI
      • 3부에서 사용할 도구와 서비스
      • 3부의 구성
    • ▣ 08장: 테스트 주도 인프라의 구현
      • 테스트 주도 인프라의 시나리오
      • 사용 환경
      • 테스트 주도 인프라 준비
      • 테스트 주도 인프라 구축
      • 테스트 주도 인프라의 반복
      • 작성한 파일을 깃으로 관리
      • 한발 더 나아가기
      • 정리
    • ▣ 09장: 인프라 CI 구축
      • 인프라 CI의 흐름
      • 인프라 CI 준비
      • 인프라 CI 구축
      • 한발 더 나아가기
      • 정리
    • ▣ 10장: 인프라의 지속적인 개선 실현
      • 깃헙을 활용한 워크플로우
      • 워크플로우 시나리오
      • 워크플로우의 구현
      • 워크플로우 구현 요약
      • 한 걸음 더 나아가기
      • 요약
  • [4부] Immutable Infrastructure
    • ▣ 11장: Immutable Infrastructure란 무엇인가
      • 4부를 시작하며
      • II란 무엇인가
      • II의 해결 과제
      • II의 단점과 적용되지 않는 영역
      • II 등장 배경
      • II에서 필요로 하는 기술
      • II가 개발, 운용, 배포 프로세스에 미치는 영향
      • 요약
    • ▣ 12장: Immutable Infrastructure에서 사용하는 도구와 서비스
      • 기본적인 II의 구성
      • 클러스터 관리 도구를 이용한 II의 고도화
      • 시스템 전체의 구성 예
      • 도커와 아파치 메소스를 이용한 구성
      • 요약
    • ▣ 13장: 컨테이너형 가상화와 클라우드를 이용한 구현
      • 이 장의 예제 프로그램
      • II에서 사용하는 도커의 기능
      • 도커와 HA프락시를 이용한 II 구현
      • 아마존 EC2와 ELB를 이용한 II
      • 도커를 이용한 II와 AWS를 이용한 II의 차이
      • 요약
    • ▣ 14장: 클러스터 관리 도구를 이용한 구현
      • 아파치 메소스와 아파치 주키퍼
      • 아파치 메소스 환경구성
      • 아파치 메소스를 이용한 II 구현
      • 요약
      • 맺음말
  • [5부] 엔진엑스 상세 풀이
    • ▣ 15장: 엔진엑스 세계에 오신 것을 환영합니다
      • 엔진엑스란
      • C10K 문제와 웹 서버의 주도 아키텍처
      • 프로세스 주도 아키텍처
      • 용도
      • 엔진엑스를 사용했을 때의 장점
      • 엔진엑스를 이용했을 때의 단점
      • 5부의 구성
    • ▣ 16장: 엔진엑스를 시작하며
      • 엔진엑스 설치
      • 엔진엑스의 기동, 다시 불러오기, 종료
      • 설정 파일의 구성
      • 기본적인 지시어
      • 요약
    • ▣ 17장: 일반적인 웹 서버 구성
      • 가상 호스트 이용하기
      • 접속 제한하기
      • SSL 통신
      • 기본 인증 설정
      • 로그 출력 제어
      • 요약
    • ▣ 18장: 실제 웹 응용프로그램 서버의 구성
      • 웹 응용프로그램 서버에서 엔진엑스의 역할
      • 레일즈 응용프로그램의 구성
      • PHP 응용프로그램의 구성
      • 웹 응용프로그램 서버의 튜닝
      • 요약
    • ▣ 19장: 대규모 콘텐츠 배포 시스템 구축
      • 대량의 콘텐츠를 제공하려면?
      • 캐시 사용
      • 로드 밸런싱 사용
      • 캐시와 로드 밸런싱의 병행 사용
      • 요약
    • ▣ 20장: 확장 모듈의 구조와 제작 방법
      • 엔진엑스와 확장 모듈
      • 확장 모듈을 만들기 위한 지식
      • 확장 모듈을 만드는 방법
      • 요약
      • 맺음말
  • [6부] 유지보수 본격 입문
    • ▣ 21장: 유지보수란
      • 유지보수는 필요한가?
      • 유지보수의 종류
      • 유지보수 방법
      • 6부의 구성
    • ▣ 22장: 계획 유지보수의 흐름
      • 유지보수 실전
      • 사후 처리
      • 요약
    • ▣ 23. 긴급 유지보수의 흐름
      • 논리적인 장애의 경향
      • 물리 장애 경향
      • 평소에 대비
      • 실전
      • 사후 처리
      • 노하우 축적
      • 요약
    • ▣ 24장: 유지보수 프리의 접근법 [인프라 편]
      • 유지보수 프리란
      • 인프라 설계
      • 데이터베이스 설계
      • 장애 감지
      • 요약
    • ▣ 25장: 유지보수 프리의 접근법 [응용프로그램 편]
      • 릴리즈
      • 응용프로그램의 설계
      • 요약
    • ▣ 26장: 걸 프랜드(가칭)와 아메바 피그의 사례
      • 걸 프랜드(가칭)의 경우
      • 계획 유지보수
      • 긴급 유지보수
      • 유지보수 프리를 위한 노력
      • 아메바 피그의 경우
      • 계획 유지보수
      • 긴급 유지보수
      • 유지보수 프리를 위한 노력
      • 요약
  • [7부] 도커를 이용한 경량 가상 환경
    • ▣ 27장: 리눅스 컨테이너로 인프라를 순식간에 구축하기
      • 도커란
      • 도커의 기동
      • 도커 첫걸음
      • 리눅스 컨테이너 속으로
      • 실행 중인 컨테이너의 상태 확인
      • 도커 이미지
      • Dockerfile
      • 도커의 리모트 API
      • 도커의 사용 예
      • Immutable Infrastructure

예제코드 다운로드 페이지

https://github.com/wikibook/building-server-infra

관련 글