1. 광고배너
/ 이전버튼 다음버튼
2
미리보기

카오스 공학-견고한 시스템을 만드는 카오스 공학의 이론과 실제(소프트웨어 테스팅)
저자 : 러스마일스 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 권병섭

2021.02.26 ㅣ 228p ㅣ ISBN-13 : 9791161754949

정가20,000
판매가19,000(5% 할인)
적립금 800원 (4%)
배송일정 12월 11일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 시스템공학 > 소프트웨어공학
카오스 공학의 기본 개념부터 카오스 실험을 구성하고 자동화하는 방법, 나아가 협업을 통해 지속적인 카오스 공학을 실현하는 방식까지 종합적인 내용을 다루는 실무서다. 가장 먼저, 카오스 공학을 쉽게 이해하기 위한 핵심 원칙을 제시한다. 배경 이론을 갖춘 다음에는 카오스 실험을 계획하고 이를 실행하는 과정에서 필요한 실질적인 고려사항을 사례 중심으로 설명한다. 마지막으로 지속적인 카오스를 통해 자동화와 운영, 협업 관점에서 카오스 공학의 진화 방향을 소개한다.


펼쳐보기

[목 차]

1부. 카오스 공학의 핵심

1장. 카오스 공학의 정수
카오스 공학의 정의
__카오스 공학은 전체 사회공학 시스템을 해결한다
__어두운 부채의 위치
카오스 공학 프로세스
카오스 공학 관행
__샌드박스/스테이징 또는 운영환경?
카오스 공학과 관찰 가능성
‘카오스 엔지니어’가 있는가?
요약


2장. 가설 백로그 작성
실험으로 시작할 것인가?
가설 수집
__사건 분석
__시스템 스케치
__“무엇이 잘못될 수 있을까?” 포착
가능성과 영향 소개
__가능성-영향 지도 작성
__고려 항목 추가
가설 백로그 만들기
요약


3장. 수동 게임 데이 계획과 실행
게임 데이란?
게임 데이 계획
__가설 선택
__게임 데이 스타일 선택
__참여자와 관찰자 결정
__장소 선택
__실행 시점과 지속 시간 결정
__게임 데이 실험 설명
__승인 받기
게임 데이 실행
__안전 모니터 고려
요약


2부. 카오스 공학 자동화

4장. 자동화된 카오스 공학용 도구 확보
파이썬 3 설치
카오스 툴킷 커맨드라인 인터페이스 설치
요약


5장. 첫 번째 자동화된 카오스 실험 작성과 실행
샘플 대상 시스템 구축
__샘플 시스템 둘러보기
취약점의 증거 탐색과 발견
__실험 실행
__chaos run의 표면 아래
__‘개선 기회’를 나타낼 수 있는 정상 상태 편차
시스템 개선
개선 검증
요약


6장. 카오스 공학의 시작부터 종료까지
대상 시스템
__플랫폼: 세 개의 워커 노드로 구성된 쿠버네티스 클러스터
__애플리케이션: 단일 서비스, 세 번 복제
__사람: 애플리케이션 팀과 클러스터 관리자
취약점 사냥
__실험 이름 지정
__정상 상태에 대한 가설 정의
__실험 방법에 혼란스런 상황 주입
__카오스 툴킷 쿠버네티스 드라이버 설치
__실험 방법에서 쿠버네티스 드라이버 사용
롤백과 함께 좋은 시민되기
모든 내용을 통합하고 실험 실행
__취약점 극복: 중단 예산 적용
요약


7장. 카오스 협업
실험 정의 공유
__구성 값 이동
__구성 속성을 환경 변수로 지정
__시크릿의 외부화
__시크릿의 범위 지정
기여 모델 지정
사람이 읽을 수 있는 카오스 실험 보고서 생성과 공유
__단일 실험의 실행 보고서 생성
__다중 실험의 실행 보고서 생성과 공유
요약


8장. 사용자 정의 카오스 드라이버 생성
코드 수정 없이 사용자 정의 드라이버 생성
__HTTP 호출로 조사 항목과 동작 구현
__프로세스 호출을 통한 조사 항목과 동작 구현
파이썬으로 자신만의 사용자 정의 카오스 드라이버 생성
__카오스 툴킷 확장 프로젝트용 신규 파이썬 모듈 생성
__조사 항목 추가
요약


3부. 카오스 공학 운영

9장. 카오스와 운영
실험 ‘제어’
컨트롤 활성화
__실험에서 인라인으로 컨트롤 활성화
__전역으로 컨트롤 활성화
요약


10장. 카오스 공학의 관찰 가능성 구현
카오스 실험에 로깅 추가
__중앙 집중식 카오스 로깅 수행
카오스 실험 추적
__OpenTracing 소개
__OpenTracing 컨트롤 적용
요약


11장. 카오스 실험 자동화에서 사람의 개입
컨트롤을 위한 신규 카오스 툴킷 확장 생성
사람과 상호작용하는 (매우) 간단한 컨트롤 추가
실험 활동 건너뛰기 또는 실행
요약


12장. 지속적인 카오스
지속적인 카오스란 무엇인가?
cron을 사용해 지속적인 카오스 계획
__카오스 테스트 실행을 위한 스크립트 생성
__cron에 카오스 테스트 스크립트 추가
젠킨스로 지속적인 카오스 계획
__젠킨스 복사본 가져오기
__젠킨스 빌드에 카오스 테스트 추가
빌드 트리거를 사용해 젠킨스에서 카오스 테스트 계획
요약


부록A. 카오스 툴킷 참조
부록B. 카오스 툴킷 커뮤니티 플레이그라운드


펼쳐보기
★ 이 책에서 다루는 내용 ★

■ 카오스 엔지니어처럼 생각하는 방법
■ 시스템에서 무엇이 잘못될 수 있는지 결정하기 위한 가설 백로그 작성
■ 가설을 발전시켜 게임 데이의 카오스 공학 실험으로 작성
■ 오픈소스 카오스 툴킷을 사용해 자동화된 카오스 실험 작성과 실행 및 학습
■ 카오스 실험을 테스트로 전환해 발견한 취약점을 극복했는지 확인
■ 실행 중인 자동화된 카오스 실험의 관찰과 제어


★ 이 책의 대상 독자 ★

운영환경에서 어떤 식으로든 자신의 코드를 책임지는 사람들을 위한 책이다. 즉, 개발자, 운영자, 데브옵스 담당자를 의미할 수 있다. ‘어떤 식으로든 책임지는’의 의미는 실행 중인 시스템의 가용성, 안정성, 전반적인 견고성을 책임진다는 말이다. 그리고 시스템이 중단됐을 때 만들어지는 협업 그룹의 일부가 될 수 있다는 의미다.
여러분은 담당하는 시스템의 안정성을 개선하려는 사이트 신뢰성 엔지니어일 수 있다. 또한 코드의 소유권을 갖지 못한 채 운영환경에서 데브옵스를 수행하는 팀에서 일할 수도 있다. 여러분의 책임 수준이 어느 정도든 간에 운영환경에서 코드가 실행되는 방식과 조직에서 운영환경을 잘 관리하는 큰 그림에 관심이 있다면 이 책이 그러한 과제를 해결하는 데 도움이 될 것이다.


★ 이 책의 구성 ★

무료 오픈소스 도구, 특히 카오스 툴킷(‘예제 설명’ 절 참고)을 사용해 카오스 공학을 수행하기 위한 실용적인 가이드다. 오픈소스 커뮤니티의 샘플을 통해 실무자에게 필요한 사고방식, 프로세스, 예제, 일부 도구를 소개한다. 실무자가 직접 작성했기 때문에 성공적인 카오스 공학 실험을 계획하고 실행하는 방법을 배울 수 있다(3장과 5장 참고).
카오스 공학은 과학적 방법을 따른다. 1부에서는 카오스 공학 과학자처럼 생각하는 방법(1장 참고), 카오스 실험을 위해 준비된 가설 백로그를 만드는 방법을 배운다(2장 참고). 마지막으로 소중한 가설을 완전한 카오스 공학 실험으로 발전시키는 방법, 게임 데이를 배운다(3장 참고). 2부에서는 카오스 공학 실험을 자동화하는 방법을 다루고, 카오스 공학을 어떻게 반복 학습하는지 구현하는 방법을 탐구한다. 3부에서는 카오스 공학에서의 협력 및 운영상의 문제를 다룬다(9장 참고).
위와 같은 학습 경로를 통해 이 책은 지금 바로 전체 조직에서 카오스 공학을 안전하고 신중하게 도입하고자 필요한 모든 것을 여러분과 동료에게 제공하는 것을 목표로 한다.


★ 지은이의 말 ★

카오스 공학의 과학적 원칙을 다루는 실무자를 위한 책이다. 카오스 공학은 전반적인 복원 공학의 접근 방식 중 하나로, 시스템 중단 같은 위기를 초래하기 전에 시스템 취약점의 증거를 찾아내는 특정한 목적을 제공한다. 독자 여러분과 동료뿐만 아니라 전체 사회공학 시스템이 신뢰성에 대한 위협을 연습하고 대응하는 방법에 관심 있다면 카오스 공학이 적합하다.


★ 지은이 소개 ★

러스 마일스(Russ Miles)
무료 오픈소스 카오스 툴킷의 공동 창립자이자 ChaosIQ 프로젝트를 담당하는 회사의 최고 경영자다. 지난 3년 동안 스타트업과 기업을 도와서 취약점을 발견하고 학습하는 활동을 통해 그들이 가진 시스템의 복원력을 향상시켜왔다.


★ 옮긴이의 말 ★

언제 어디서 튀어나올지 모르는 시스템 에러 때문에 걱정이 많았을 것이다. 뛰어난 센스로 복잡한 에러를 해결하더라도 더 큰 산이 연이어 버티고 있다. 클라우드 전환의 소용돌이 속에서 점점 작아지고 분리되는 소프트웨어 모듈, 그에 반해 시스템의 취약점은 더욱 깊이 숨어들고 그에 따른 영향력은 커져만 간다. 또한 이러한 문제는 시스템에 국한되지 않는다. 소프트웨어에서 시작해 플랫폼, 인프라, 프로세스, 나아가 사람과 조직에 이르기까지 취약점의 종류와 내용도 매우 다양해지고 있다.
그렇다면 과학과 응용 공학이 결합된 체계적인 접근 방식으로 이 모든 취약점을 완벽하게 해결할 수 없을까? 그리고 가능하다면 취약점을 미리 파악하고, 조치를 신속하게 취하고, 철저하게 검증하는 방식으로 실패의 위험을 사전에 차단할 수 없을까? 이미 눈치챘겠지만 100% 완벽한 사전 준비란 결코 존재하지 않는다. 다만 완벽에 가까이 다가가려는 노력이 있을 뿐이다. 카오스 공학은 그러한 노력 중 단연 최고라 할 수 있다.
꾸준한 연습과 실전 경험이 최고를 만드는 것처럼 카오스 공학은 카오스 실험을 체계적으로 계획하고, 이를 반복적으로 운영환경의 시스템에 적용하는 과정에서 취약점을 찾아 개선함으로써 최고의 시스템과 엔지니어를 만들어낸다. 이 책은 카오스 공학이 왜 필요한지 구체적으로 설명하며, 카오스 실험을 어떻게 계획하고, 자동화를 통해 반복하는 방법과 효과 등을 상세히 기술한다. 이론에 이어 카오스 실험을 정의하고 수행하는 예제와 코드 설명으로 곧바로 실전에 나설 수 있도록 돕는다. 따라서 최고의 카오스 엔지니어가 되기 위한 입문서로 안성맞춤이다.
사실 카오스 공학은 국내 소프트웨어 환경에서 도입이 쉽지 않다. 기능 요건의 우선순위에 밀려 소프트웨어 품질 개선 및 코드/시스템의 유지 보수 활동이 등한시되고 있기 때문이다. 소프트웨어 외주 제작 문화와 소프트웨어 공학 성숙도의 저하는 이런 문제를 더욱 키워왔다. 하지만 소프트웨어 세상의 패러다임이 급격히 변화하고 있다. 클라우드와 빅데이터, 인공지능으로 대표되는 디지털 트랜스포메이션에 의해 기존 방식은 점점 존재 가치를 잃어가고 있다. 누구나 클라우드 전환을 통해 인공지능 기술을 접목하는 지금 이 순간부터 카오스 공학은 적정 기술을 넘어 필수 기술로 자리매김할 수 있을 것이다.



추천사

러스 마일스는 따라 하기 쉬운 카오스 툴킷 지침서를 통해 카오스 공학의 이론과 실제를 설명한다. 이 책은 카오스 공학을 시작하려는 모든 사람에게 훌륭한 내용을 제공한다.
- 애런 블로호비악(Aaron Blohowiak)/ 넷플릭스의 엔지니어링 관리자 및 보고서 『Chaos Engineering』(O’Reilly, 2017) 공동 저자

분산 환경의 시스템적인 취약점을 탐색하는 것은 클라우드 네이티브, 마이크로서비스 스타일 아키텍처를 운영하는 모든 조직에 있어 중요한 관행이다. 이 책은 카오스 공학을 성공적으로 이해하고, 구현하고, 채택할 수 있도록 도와주는 종합적이고 실용적인 안내서다. 이 책을 적극 추천한다.
- 크리스티안 포스타(Christian Posta)/ Solo.io의 최고 현장기술 관리자(Field CTO)

운영환경을 담당하는 모든 사람에게 실용적인 입문서다. 오늘날 우리가 구축하는 점점 더 복잡한 시스템에서 신뢰를 높이고자 카오스 공학을 시작하는 방법을 담고 있다. 여러분이 게임 데이에 참여한 적이 없더라도 당장 시작하는 데 필요한 모든 프로세스와 도구를 배울 수 있다.
- 데니스 유(Denise Yu)/ 피보탈의 수석 소프트웨어 엔지니어

펼쳐보기

옮긴이 권병섭
지난 2005년, 개발자로 소프트웨어 세상에 첫 발을 내딛은 이후 프로덕트 매니저와 컨설턴트를 거쳐 클라우드 아키텍트로 디지털 세상에 참여하고 있다. 15년 동안 코드 수준의 디버깅과 문제 해결, 소프트웨어 제품의 전체 수명주기 관리, 디지털 솔루션의 컨설팅과 딜리버리를 경험하며 소프트웨어 신뢰성 및 카오스 공학에 깊은 관심을 갖게 됐다.
지난 해, 첫 기술서적을 번역한 이후 국내/외 양서를 널리 알리고 제작하는 일에 참여하고 있다. 또한 공유와 협업을 통한 개방적인 소프트웨어 세상에 일조하고자 오픈소스 커뮤니티에도 기여하는 중이다. 오픈소스 생태계 기술을 활용해 클라우드 네이티브 아키텍처를 구축하거나 클라우드 환경에서 카오스 실험을 계획하는 독자와도 꾸준히 소통할 예정이다.


펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기