이미 소장하고 있다면 판매해 보세요.
|
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. 카오스 툴킷 커뮤니티 플레이그라운드 |
Russ Miles
권병섭의 다른 상품
|
★ 이 책에 쏟아진 찬사 ★
러스 마일스는 따라 하기 쉬운 카오스 툴킷 지침서를 통해 카오스 공학의 이론과 실제를 설명한다. 이 책은 카오스 공학을 시작하려는 모든 사람에게 훌륭한 내용을 제공한다. - 애런 블로호비악(Aaron Blohowiak)/ 넷플릭스의 엔지니어링 관리자 및 보고서 『Chaos Engineering』(O’Reilly, 2017) 공동 저자 분산 환경의 시스템적인 취약점을 탐색하는 것은 클라우드 네이티브, 마이크로서비스 스타일 아키텍처를 운영하는 모든 조직에 있어 중요한 관행이다. 이 책은 카오스 공학을 성공적으로 이해하고, 구현하고, 채택할 수 있도록 도와주는 종합적이고 실용적인 안내서다. 이 책을 적극 추천한다. - 크리스티안 포스타(Christian Posta)/ Solo.io의 최고 현장기술 관리자(Field CTO) 운영환경을 담당하는 모든 사람에게 실용적인 입문서다. 오늘날 우리가 구축하는 점점 더 복잡한 시스템에서 신뢰를 높이고자 카오스 공학을 시작하는 방법을 담고 있다. 여러분이 게임 데이에 참여한 적이 없더라도 당장 시작하는 데 필요한 모든 프로세스와 도구를 배울 수 있다. - 데니스 유(Denise Yu)/ 피보탈의 수석 소프트웨어 엔지니어 ★ 이 책에서 다루는 내용 ★ ■ 카오스 엔지니어처럼 생각하는 방법 ■ 시스템에서 무엇이 잘못될 수 있는지 결정하기 위한 가설 백로그 작성 ■ 가설을 발전시켜 게임 데이의 카오스 공학 실험으로 작성 ■ 오픈소스 카오스 툴킷을 사용해 자동화된 카오스 실험 작성과 실행 및 학습 ■ 카오스 실험을 테스트로 전환해 발견한 취약점을 극복했는지 확인 ■ 실행 중인 자동화된 카오스 실험의 관찰과 제어 ★ 이 책의 대상 독자 ★ 운영환경에서 어떤 식으로든 자신의 코드를 책임지는 사람들을 위한 책이다. 즉, 개발자, 운영자, 데브옵스 담당자를 의미할 수 있다. ‘어떤 식으로든 책임지는’의 의미는 실행 중인 시스템의 가용성, 안정성, 전반적인 견고성을 책임진다는 말이다. 그리고 시스템이 중단됐을 때 만들어지는 협업 그룹의 일부가 될 수 있다는 의미다. 여러분은 담당하는 시스템의 안정성을 개선하려는 사이트 신뢰성 엔지니어일 수 있다. 또한 코드의 소유권을 갖지 못한 채 운영환경에서 데브옵스를 수행하는 팀에서 일할 수도 있다. 여러분의 책임 수준이 어느 정도든 간에 운영환경에서 코드가 실행되는 방식과 조직에서 운영환경을 잘 관리하는 큰 그림에 관심이 있다면 이 책이 그러한 과제를 해결하는 데 도움이 될 것이다. ★ 이 책의 구성 ★ 무료 오픈소스 도구, 특히 카오스 툴킷(‘예제 설명’ 절 참고)을 사용해 카오스 공학을 수행하기 위한 실용적인 가이드다. 오픈소스 커뮤니티의 샘플을 통해 실무자에게 필요한 사고방식, 프로세스, 예제, 일부 도구를 소개한다. 실무자가 직접 작성했기 때문에 성공적인 카오스 공학 실험을 계획하고 실행하는 방법을 배울 수 있다(3장과 5장 참고). 카오스 공학은 과학적 방법을 따른다. 1부에서는 카오스 공학 과학자처럼 생각하는 방법(1장 참고), 카오스 실험을 위해 준비된 가설 백로그를 만드는 방법을 배운다(2장 참고). 마지막으로 소중한 가설을 완전한 카오스 공학 실험으로 발전시키는 방법, 게임 데이를 배운다(3장 참고). 2부에서는 카오스 공학 실험을 자동화하는 방법을 다루고, 카오스 공학을 어떻게 반복 학습하는지 구현하는 방법을 탐구한다. 3부에서는 카오스 공학에서의 협력 및 운영상의 문제를 다룬다(9장 참고). 위와 같은 학습 경로를 통해 이 책은 지금 바로 전체 조직에서 카오스 공학을 안전하고 신중하게 도입하고자 필요한 모든 것을 여러분과 동료에게 제공하는 것을 목표로 한다. ★ 지은이의 말 ★ 카오스 공학의 과학적 원칙을 다루는 실무자를 위한 책이다. 카오스 공학은 전반적인 복원 공학의 접근 방식 중 하나로, 시스템 중단 같은 위기를 초래하기 전에 시스템 취약점의 증거를 찾아내는 특정한 목적을 제공한다. 독자 여러분과 동료뿐만 아니라 전체 사회공학 시스템이 신뢰성에 대한 위협을 연습하고 대응하는 방법에 관심 있다면 카오스 공학이 적합하다 ★ 옮긴이의 말 ★ 언제 어디서 튀어나올지 모르는 시스템 에러 때문에 걱정이 많았을 것이다. 뛰어난 센스로 복잡한 에러를 해결하더라도 더 큰 산이 연이어 버티고 있다. 클라우드 전환의 소용돌이 속에서 점점 작아지고 분리되는 소프트웨어 모듈, 그에 반해 시스템의 취약점은 더욱 깊이 숨어들고 그에 따른 영향력은 커져만 간다. 또한 이러한 문제는 시스템에 국한되지 않는다. 소프트웨어에서 시작해 플랫폼, 인프라, 프로세스, 나아가 사람과 조직에 이르기까지 취약점의 종류와 내용도 매우 다양해지고 있다. 그렇다면 과학과 응용 공학이 결합된 체계적인 접근 방식으로 이 모든 취약점을 완벽하게 해결할 수 없을까? 그리고 가능하다면 취약점을 미리 파악하고, 조치를 신속하게 취하고, 철저하게 검증하는 방식으로 실패의 위험을 사전에 차단할 수 없을까? 이미 눈치챘겠지만 100% 완벽한 사전 준비란 결코 존재하지 않는다. 다만 완벽에 가까이 다가가려는 노력이 있을 뿐이다. 카오스 공학은 그러한 노력 중 단연 최고라 할 수 있다. 꾸준한 연습과 실전 경험이 최고를 만드는 것처럼 카오스 공학은 카오스 실험을 체계적으로 계획하고, 이를 반복적으로 운영환경의 시스템에 적용하는 과정에서 취약점을 찾아 개선함으로써 최고의 시스템과 엔지니어를 만들어낸다. 이 책은 카오스 공학이 왜 필요한지 구체적으로 설명하며, 카오스 실험을 어떻게 계획하고, 자동화를 통해 반복하는 방법과 효과 등을 상세히 기술한다. 이론에 이어 카오스 실험을 정의하고 수행하는 예제와 코드 설명으로 곧바로 실전에 나설 수 있도록 돕는다. 따라서 최고의 카오스 엔지니어가 되기 위한 입문서로 안성맞춤이다. 사실 카오스 공학은 국내 소프트웨어 환경에서 도입이 쉽지 않다. 기능 요건의 우선순위에 밀려 소프트웨어 품질 개선 및 코드/시스템의 유지 보수 활동이 등한시되고 있기 때문이다. 소프트웨어 외주 제작 문화와 소프트웨어 공학 성숙도의 저하는 이런 문제를 더욱 키워왔다. 하지만 소프트웨어 세상의 패러다임이 급격히 변화하고 있다. 클라우드와 빅데이터, 인공지능으로 대표되는 디지털 트랜스포메이션에 의해 기존 방식은 점점 존재 가치를 잃어가고 있다. 누구나 클라우드 전환을 통해 인공지능 기술을 접목하는 지금 이 순간부터 카오스 공학은 적정 기술을 넘어 필수 기술로 자리매김할 수 있을 것이다. |