장바구니 담기 close

장바구니에 상품을 담았습니다.

클라우드 시스템을 관리하는 기술 (컴퓨터/IT)

클라우드 시스템을 관리하는 기술 (컴퓨터/IT) 클라우드 관리자가 알아야 할 웹 규모 분산 시스템 설계와 운영

  • 토머스 리몬첼리, 스트래터 체일럽, 크리스티나 호건
  • |
  • 한빛미디어
  • |
  • 2016-02-25 출간
  • |
  • 656페이지
  • |
  • 183 X 235 mm
  • |
  • ISBN 9788968482618
★★★★★ 평점(10/10) | 리뷰(1)
판매가

36,000원

즉시할인가

32,400

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
32,400

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

목차

소개
_ 사업 목표
_ 이상적인 시스템 구조
_ 이상적인 릴리스 과정
_ 이상적인 운영

= 1부 설계: 시스템 만들기 =

CHAPTER 1 분산 세계에서의 설계
1.1 대규모 시스템의 가시성
1.2 단순함의 중요성
1.3 조합
1.3.1 부하 분산기와 다수의 뒷단 복제본들
1.3.2 서버와 다수의 뒷단들
1.3.3 서버 트리
1.4 상태의 분산
1.5 CAP 원리
1.5.1 일관성
1.5.2 가용성
1.5.3 분리 저항
1.6 느슨히 결합된 시스템
1.7 속도
1.8 요약
연습문제

CHAPTER 2 운영을 위한 설계
2.1 운영상의 요구사항
2.1.1 구성
2.1.2 시동과 종료
2.1.3 대기열 배출
2.1.4 소프트웨어 업그레이드
2.1.5 백업과 복구
2.1.6 중복성(redundancy)
2.1.7 복제된 데이터베이스
2.1.8 즉석 교체
2.1.9 개별 기능 켜고 끄기
2.1.10 우아한 강등
2.1.11 접근 제어와 속도 제한
2.1.12 자료 도입 제어
2.1.13 감시
2.1.14 감사
2.1.15 디버깅 계장(instrumentation)
2.1.16 예외 수집
2.1.17 운영을 위한 문서화
2.2 운영을 위한 설계의 구현
2.2.1 기능을 처음부터 구축
2.2.2 필요성을 발견한 후 개발팀에 요청
2.2.3 운영팀이 기능을 직접 작성
2.2.4 서드파티 공급업체와 협력
2.3 모형의 개선
2.4 요약
연습문제

CHAPTER 3 서비스 플랫폼 선택
3.1 서비스 추상 수준
3.1.1 IaaS(서비스로서의 기반구조)
3.1.2 PaaS(서비스로서의 플랫폼)
3.1.3 SaaS(서비스로서의 소프트웨어)
3.2 기계의 종류
3.2.1 물리적 기계
3.2.2 가상 기계
3.2.3 컨테이너
3.3 자원 공유 수준
3.3.1 법규 준수
3.3.2 개인정보
3.3.3 비용
3.3.4 제어권
3.4 코로케이션
3.5 선택 전략
3.6 요약
연습문제

CHAPTER 4 응용 프로그램 구조
4.1 단일 기계 웹 서버
4.2 3층 웹 서비스
4.2.1 부하 분산기의 종류
4.2.2 부하 분산 방법
4.2.3 공유 상태가 있는 부하 분산
4.2.4 사용자 신원
4.2.5 규모 변화
4.3 4층 웹 서비스
4.3.1 앞단
4.3.2 응용 프로그램 서버
4.3.3 구성 옵션
4.4 역 프록시 서비스
4.5 클라우드 규모 서비스
4.5.1 전역 부하 분산기
4.5.2 전역 부하 분산 방법
4.5.3 사용자 고유 자료에 근거한 전역 부하 분산
4.5.4 내부 기간망
4.6 메시지 버스 구조
4.6.1 메시지 버스의 설계
4.6.2 메시지 버스의 신뢰성
4.6.3 예제 1: 링크 단축 사이트
4.6.4 예제 2: 직원 인적자원 자료 갱신
4.7 서비스 지향 구조
4.7.1 유연성
4.7.2 지원
4.7.3 모범 관행
4.8 요약
연습문제

CHAPTER 5 규모 변화를 위한 설계 패턴
5.1 일반 전략
5.1.1 병목 식별
5.1.2 구성요소들의 재공학
5.1.3 결과의 측정
5.1.4 능동적 대처
5.2 규모 확장
5.3 AKF 규모 변화 입방체
5.3.1 x축: 수평 중복
5.3.2 y축: 기능 또는 서비스별 분할
5.3.3 z축: 조회 지향적 분할
5.3.4 조합
5.4 캐싱
5.4.1 캐시 효율성
5.4.2 캐시 위치
5.4.3 캐시 영속성
5.4.4 캐시 교체 알고리즘
5.4.5 캐시 항목 무효화
5.4.6 캐시 크기
5.5 자료 파편화
5.6 스레드 적용
5.7 대기열 적용
5.7.1 장점
5.7.2 변형들
5.8 CDN
5.9 요약
연습문제

CHAPTER 6 탄력성을 위한 설계 패턴
6.1 하드웨어 탄력성보다 중요한 소프트웨어 탄력성
6.2 모든 것은 결국에는 고장난다
6.2.1 분산 시스템의 MTBF
6.2.2 전통적인 접근방식
6.2.3 분산 컴퓨팅 접근방식
6.3 예비 수용량을 이용한 탄력성 확보
6.3.1 예비 수용량 결정
6.3.2 부하 공유 대 즉석 예비
6.4 장애 영역
6.5 소프트웨어 장애
6.5.1 소프트웨어 충돌
6.5.2 소프트웨어 멈춤
6.5.3 죽음의 질의
6.6 물리적 장애
6.6.1 부품과 구성요소
6.6.2 기계
6.6.3 부하 분산기
6.6.4 랙
6.6.5 데이터센터
6.7 과부하 장애
6.7.1 소통량 급증
6.7.2 DoS 및 DDoS 공격
6.7.3 스크레이핑 공격
6.8 사람의 실수
6.9 요약
연습문제

= 2부 운영: 시스템 실행하기 =

CHAPTER 7 분산 세계에서의 운영
7.1 분산 시스템의 운영
7.1.1 SRE팀 대 전통적인 전사적 IT 부서
7.1.2 변화 대 안정성
7.1.3 SRE의 정의
7.1.4 대규모 운영
7.2 서비스의 수명 주기
7.2.1 서비스 개시
7.2.2 서비스 폐지
7.3 운영팀을 위한 조직화 전략
7.3.1 팀원의 업무일 구분
7.3.2 기타 전략들
7.4 가상 사무실
7.4.1 의사소통 메커니즘
7.4.2 의사소통 방침
7.5 요약
연습문제

CHAPTER 8 개발운영 문화
8.1 개발운영이란?
8.1.1 전통적인 접근방식
8.1.2 개발운영 접근방식
8.2 개발운영의 3대 방법
8.2.1 제1 방법: 작업흐름
8.2.2 제2 방법: 피드백 개선
8.2.3 제3 방법: 끊임없는 실험과 학습
8.2.4 작은 일괄 단위들이 더 낫다
8.2.5 전략의 적용
8.3 개발운영의 역사
8.3.1 진화
8.3.2 사이트 신뢰성 공학
8.4 개발운영의 가치와 원리
8.4.1 관계
8.4.2 통합
8.4.3 자동화
8.4.4 지속적인 개선
8.4.5 흔한 비기술적 개발운영 관행
8.4.6 개발운영의 일반적인 기술적 관행들
8.4.7 릴리스 공학과 관련된 개발운영의 관행들
8.5 개발운영으로의 전환
8.5.1 첫걸음
8.5.2 사업 수준에서의 개발운영
8.6 애자일과 지속적 인도
8.6.1 애자일이란 무엇인가?
8.6.2 지속적 인도란 무엇인가?
8.7 요약
연습문제

CHAPTER 9 서비스 인도: 구축 국면
9.1 서비스 인도 전략
9.1.1 패턴: 현대적인 개발운영 방법론
9.1.2 반反패턴(안티패턴): 폭포수 방법론
9.2 품질의 선순환
9.3 구축 국면의 단계들
9.3.1 개발
9.3.2 커밋
9.3.3 구축
9.3.4 패키지
9.3.5 등록
9.4 구축 콘솔
9.5 지속적 통합
9.6 작업 이전 인터페이스로서의 패키지
9.7 요약
연습문제

CHAPTER 10 서비스 인도: 배치 국면
10.1 배치 국면의 단계들
10.1.1 승격
10.1.2 설치
10.1.3 구성
10.2 검사와 승인
10.2.1 검사
10.2.2 승인
10.3 운영 콘솔
10.4 기반구조 자동화 전략
10.4.1 물리적 기계 마련
10.4.2 가상 기계 마련
10.4.3 운영 체제와 서비스 설치
10.5 지속적 인도
10.6 코드로서의 기반구조
10.7 기타 플랫폼 서비스들
10.8 요약
연습문제

CHAPTER 11 활성 서비스의 업그레이드
11.1 서비스 중단 후 업그레이드
11.2 순회식 업그레이드
11.3 카나리아 공정
11.4 국면별 롤아웃
11.5 비례식 차단
11.6 청록 배치
11.7 기능 켜고 끄기
11.8 활성 스키마 변경
11.9 활성 코드 변경
11.10 지속적 배치
11.11 코드 투입 실패의 처리
11.12 릴리스 원자성
11.13 요약
연습문제

CHAPTER 12 자동화
12.1 자동화 접근방식들
12.1.1 잔여물 원리를 따르는 자동화 접근방식
12.1.2 보충 원리를 따르는 자동화 접근방식
12.1.3 상보성 원리를 따르는 자동화 접근방식
12.1.4 시스템 관리자를 위한 자동화
12.1.5 경험에서 얻은 교훈들
12.2 도구 구축 대 자동화
12.2.1 예: 자동차 제조
12.2.2 예: 컴퓨터 구성
12.2.3 예: 계정 생성
12.2.4 도구는 좋다, 자동화는 더 좋다
12.3 자동화의 목표
12.4 자동화 작성
12.4.1 자동화 작성 시간 마련
12.4.2 고역 줄이기
12.4.3 첫 번째 자동화 대상 선정
12.5 자동화 방법
12.6 언어 도구들
12.6.1 셸 스크립팅 언어
12.6.2 스크립팅 언어
12.6.3 컴파일식 언어
12.6.4 구성 관리용 언어
12.7 소프트웨어 공학 도구들과 기법들
12.7.1 문제점 추적 시스템
12.7.2 버전 관리 시스템
12.7.3 소프트웨어 패키지 작성
12.7.4 스타일 지침
12.7.5 TDD
12.7.6 코드 검토
12.7.7 딱 필요한 만큼의 코드를 작성
12.8 다중 입주 시스템
12.9 요약
연습문제

CHAPTER 13 설계 문서
13.1 설계 문서의 개요
13.1.1 변경과 그 논거의 문서화
13.1.2 과거 의사결정들을 보관하는 문서화
13.2 설계 문서의 구성
13.3 문서 양식
13.4 문서 보관소
13.5 설계 문서 검토의 작업흐름
13.5.1 검토자와 승인자
13.5.2 결재
13.6 설계 문서 표준의 채용
13.7 요약
연습문제

CHAPTER 14 호출대기
14.1 호출대기의 설계
14.1.1 SLA로 시작
14.1.2 호출대기 명단
14.1.3 당직대기
14.1.4 호출대기 일정 설계
14.1.5 호출대기 일정표
14.1.6 호출대기의 빈도
14.1.7 통지의 종류
14.1.8 근무 시간 외 유지보수 조정
14.2 호출대기 수행
14.2.1 교대근무 전 임무
14.2.2 정규 호출대기 임무
14.2.3 경보 처리 임무
14.2.4 관찰, 지향, 결정, 실행: OODA 루프
14.2.5 호출대기 각본
14.2.6 서드파티 상부 보고
14.2.7 교대근무 마감 임무
14.3 다음 호출대기 교대근무까지의 작업
14.3.1 장기적 해결책
14.3.2 사후 분석
14.4 주기적인 경보 검토
14.5 경보 줄이기
14.6 요약
연습문제

CHAPTER 15 재난 대비
15.1 사고방식
15.1.1 반취약 시스템
15.1.2 위험 줄이기
15.2 개인 훈련: 불운의 바퀴
15.3 팀 훈련: 소방 훈련
15.3.1 서비스 검사
15.3.2 무작위 검사
15.4 조직 훈련: 게임 데이/DiRT
15.4.1 첫걸음
15.4.2 범위 확장
15.4.3 계획과 구현
15.4.4 DiRT 검사의 예
15.5 사고지휘체계
15.5.1 작동 방식: 공공 안전 분야
15.5.2 작동 방식: IT 운영 분야
15.5.3 사고 대응 활동 계획서
15.5.4 모범 관행
15.5.5 사고지휘체계의 예
15.6 요약
연습문제
CHAPTER 16 감시의 기초
16.1 개요
16.1.1 감시의 용도
16.1.2 서비스 관리
16.2 감시 정보의 소비자
16.3 감시 대상
16.4 감시 자료의 유지
16.5 메타 감시
16.6 로그
16.6.1 접근방식
16.6.2 타임스탬프
16.7 요약
연습문제

CHAPTER 17 감시 시스템의 구조와 관행
17.1 감지 및 측정
17.1.1 블랙박스 측정 대 화이트박스 측정
17.1.2 직접 측정 대 합성 측정
17.1.3 속도 측정 대 능력 측정
17.1.4 계측치 측정 대 카운터 측정
17.2 수집
17.2.1 밀기 대 당기기
17.2.2 프로토콜 선택
17.2.3 서버 자체 측정 대 에이전트 대 주기적 점검
17.2.4 중앙 수집기 대 지역별 수집기
17.3 분석 및 계산
17.4 경보 및 상부 보고 구성요소
17.4.1 경보, 상부 보고, 확인
17.4.2 소음 대 금지
17.5 시각화
17.5.1 백분위수
17.5.2 스택 랭킹
17.5.3 히스토그램
17.6 저장
17.7 구성
17.8 요약
연습문제

CHAPTER 18 수용량 계획 수립
18.1 표준 수용량 계획 수립
18.1.1 현재 사용량
18.1.2 정상 성장
18.1.3 계획된 성장
18.1.4 여유분
18.1.5 탄력성
18.1.6 시간표
18.2 고급 수용량 계획 수립
18.2.1 1차 자원의 식별
18.2.2 수용량 한계 파악
18.2.3 핵심 동인 식별
18.2.4 참여도 측정
18.2.5 자료의 분석
18.2.6 핵심지표 감시
18.2.7 수용량 계획 수립의 위임
18.3 자원 회귀
18.4 새 서비스 개시
18.5 조달 시간 줄이기
18.6 요약
연습문제

CHAPTER 19 KPI 작성
19.1 KPI란 무엇인가?
19.2 KPI 작성
19.2.1 단계 1: 이상적 상황을 상상한다
19.2.2 단계 2: 이상과의 거리를 재는 방법을 고안한다
19.2.3 단계 3: 사람들의 행동 변화를 예상한다
19.2.4 단계 4: 수정하고 선택한다
19.2.5 단계 5: KPI를 배치한다
19.3 KPI의 예: 가상 기계 할당
19.3.1 첫 번째 패스
19.3.2 두 번째 패스
19.3.3 KPI의 평가
19.4 사례 연구: 구글 오류 예산
19.4.1 목표 대립
19.4.2 통합된 목표
19.4.3 모두의 이익
19.5 요약
연습문제

CHAPTER 20 탁월한 운영
20.1 탁월한 운영은 어떤 모습인가?
20.2 훌륭함을 측정하는 방법
20.3 평가 방법론
20.3.1 주요 운영 책무
20.3.2 평가 수준
20.3.3 평가를 위한 질문과 징표
20.4 서비스 평가
20.4.1 평가 대상 식별
20.4.2 각 서비스의 평가
20.4.3 서비스 간 결과 비교
20.4.4 결과에 기초한 행동
20.4.5 평가와 프로젝트 계획 수립의 빈도
20.5 조직 차원의 평가
20.6 개선 수준
20.7 평가 체계의 도입과 적용
20.8 요약
연습문제

맺음말

= 3부 부록 =
부록 A 평가
부록 B 분산 컴퓨팅과 클라우드의 기원과 미래
부록 C 규모 변화 관련 용어 및 개념
부록 D 문서 양식과 예제 문서
부록 E 읽을거리 추천

도서소개

★ 이제 클라우드다!
웹 규모 IT(Web-scale IT) 시대가 도래하였다. 앱과 서비스 시장에서 국경이 사라지면서 이제 지구 상의 모든 이가 잠재 고객이고 모든 시간대에 고객이 깨어 있다. 한시도 예측하기 어려워진 이러한 환경에서 성공적인 IT 비즈니스를 위해서는 서비스의 신뢰성(reliability)과 규모가변성(scalability)은 필수가 되었다. 그리고 이를 위해서는 각 구성요소들이 분산되고 느슨하게 결합되어야 한다. 거스를 수 없는 이 흐름은 서비스와 인프라의 설계와 구축은 물론, 운영 방식에까지 근본적인 변화를 요구한다.

이 책은 ‘분산’과 ‘클라우드’에 중점을 두어, 개발운영(DevOps)과 사이트 신뢰성 공학(SRE)을 대규모 시스템 관리에 적용하는 방법을 소개하여, 여러분을 새로운 시대에 맞는 전문가의 길로 인도할 것이다.

★ 대상 독자
이 책은 시스템 관리자(system administrator)와 그들을 관리하는 관리자(manager)를 위한 책이다. 독자가 컴퓨터 과학에 대한 배경 지식을 갖추고 있다고 가정하지는 않지만, UNIX/Linux 시스템 관리와 네트워킹에 관한 경험이 있고 운영 시스템 개념들에 익숙하다고 가정한다.

★ 주요 내용
설계 : 현대적 웹 규모 분산 시스템을 구축한다.
_ 대규모 시스템 설계의 기본
_ 클라우드 관리를 위한 새로운 소프트웨어 엔지니어링 이해
_ 장애 탄력성을 갖추고 동적으로 확장/성장하는 시스템 구축
_ 개발운영 원칙과 문화 심기
_ IaaS/PaaS/SaaS와 가상 플랫폼 선택하기

운영 : 개발운영과 사이트 신뢰성 공학 전략을 녹여 운영한다.
_ 비가동시간 없이 활성 시스템 업그레이드하기
_ 자동화, 무엇을 어떻게 할 것인가?
_ 가동시간 향상을 위한 당직대기 모범 사례
_ 분산 시스템 관리가 근본적으로 다른 이유
_ 탄력성 문제를 사전에 식별하고 해결하는 방법

평가와 개선 : 운영 효과를 평가하고 개선한다.
_ 지속적 개선을 위한 과학적 관리 방법
_ 바로 활용할 수 있는 평가 체계 수록

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.