책소개
세 가지 핵심 아이디어를 자세히 설명한다. 첫째, 만나는 대부분의 고객은 실제로 조직도(org-chart)상에 문제가 있을 때 기술 채택에 문제가 있다고 생각한다. 둘째, 경영진이 중점적으로 고려해야 할 가장 중요한 지표는 가치 창출 시간이며 각 팀별 배포를 위해 수행되는 지연 시간으로 가장 쉽게 측정될 수 있다. 셋째, 분석 마비, 기술 변동에 대해 논의하고 솔루션을 설계하는 최선의 방법에 대해 논의하는 데 너무 많은 시간이 소요된다. 패턴들은 이러한 논쟁들을 집중시키고, 잘못된 선택을 할 위험을 줄이면서 아키텍처 결정을 빠르게 하고, 궁극적으로 낮은 가치의 아키텍처 차이를 대체하는 패턴들이 더 많은 공통성을 만들어내는 데 도움을 줄 것이다.
목차
프롤로그 : 진화 혹은 퇴화
1장. 클라우드 네이티브란?
__“클라우드 네이티브”는 “클라우드”가 아니다
__클라우드 네이티브 개요
____클라우드 네이티브를 어떻게 알 수 있을까?
____서비스에 대한 모든 것
____클라우드 네이티브 원칙의 이해
__모든 것을 함께 조정하라
__무엇이 잘못될 수 있을까?
__분산 시스템의 충격
__미성숙함으로 인한 충격
__요약 정리
2장. 클라우드 네이티브로의 도전
__문화광
__조직 문화에 대한 명확한 현장 가이드
__“적합한” 솔루션, “적절하지 않은” 문화
__문화 충돌 난제
__우리를 다시 데려오는 것은… 문화
INTERLUDE I : 웰스그리드 팀을 만나다
3장. 패턴이란 무엇인가? 아키텍처, 패턴 언어, 그리고 디자인
__패턴
__디자인의 시대
__클라우드 네이티브 패턴 언어
____컨텍스트의 패턴
__실제 클라우드 네이티브 컨텍스트
__공통 컨텍스트
__패턴, 패턴 언어 및 디자인
____패턴 동작 방식
____패턴의 구성 요소는 무엇인가?
____(이바) 패턴은 어떻게 만들어지나?
____표현
____저자들의 접근 방법
4장. 패턴을 넘어: 행동, 편향 및 진화 관리
__콘웨이 법칙
__인지적 편향
__편향이 유용한 이유
__편향, 패턴 및 행동
__넛지
__일반 편향과 넛지
__무엇을 보고 어떻게 극복해야 하는가?
INTERLUDE II : 첫 번째 전환 시도 - 클라우드 네이티브 “보조 프로젝트”
5장. 자신을 아는 방법: 클라우드 네이티브 성숙도 매트릭스 도구
__거울아, 거울아…
__성숙한 청중만을 대상으로 하는 성숙도 매트릭스
__동기화 유지
__매트릭스 적용
____문화
____제품/서비스 디자인
____팀
____프로세스
____아키텍처
____유지관리
____전달
____프로비저닝
____인프라스트럭처
__점들의 연결
__통합 축
Interlude III : 클라우드 네이티브 두 번째 시도
6장. 클라우드 네이티브 패턴을 이해하고 사용하기 위한 도구
__너무나 많은, 현혹되기 쉬운 단순한 도구
__다른 방법을 모색하기 위한 도구
____숙련도 대 창의성
____감자튀김 같이 드릴까요?
____창의성, 숙련도, 그리고 엔터프라이즈
____세 가지 지평
____우리는 챔피언인가?
__그렇다면 웰스그리드에서 무슨 일이 일어났을까?
__요약
7장. 전략 및 비즈니스 리스크 감소 패턴
__스티브를 만나다
__전략 그리고 위임
__패턴: 동적 전략
__패턴: 가치 계층
__패턴: 비즈니스 케이스
__패턴: 경영진의 헌신
__이론부터 실행까지
__패턴: 트랜스포메이션 챔피언
__패턴: 비전 우선
__패턴: 목표 설정
__패턴: 비즈니스 참여
__패턴: 주기적 점검
__패턴: 데이터 기반 의사결정
__패턴: 학습 루프
__패턴: 학습 조직
__패턴: 중요 사항 측정
__패턴: 실행을 통한 연구
__모든 종류의 위험 관리를 위한 실용적인 패턴
__패턴: 점진적 투자 확대
__패턴: 후회 없는 시도
__패턴: 선택과 위험 회피
__패턴: 큰 도전
__패턴: 실험 비용 절감
__패턴: 벤더 락인 탈피 전략
__전략적 모멘텀 유지
__패턴: 세 가지 지평
__패턴: 회고의 시간
__패턴: 지정된 전략가
__다음을 위한 준비
8장. 조직과 문화의 패턴
__패턴: 핵심 팀
__패턴: 빌드-실행 팀(“클라우드 네이티브 데브옵스”)
__패턴: 플랫폼 팀
__패턴: SRE 팀
__패턴: 원격 팀
__패턴: 공동 배치된 팀
__패턴: 담당 업무별 커뮤니케이션
__패턴: 창의성 관리
__패턴: 숙련도 관리
__패턴: 스트랭글 모놀리식 조직
__패턴: 점진적 온보딩
__패턴: 근본적인 혁신을 위한 디자인 싱킹
__패턴: 신규 개발을 위한 애자일(혁신의 시간)
__패턴: 최적화를 위한 린
__패턴: 내부 에반젤리즘
__패턴: 지속적인 교육
__패턴: 탐색적 실험
__패턴: 개념 증명
__패턴: 최소 실행 가능 제품 플랫폼
__패턴: 실행과 가장 가까운 의사결정
__패턴: 생산적 피드백
__패턴: 심리적 안정
__패턴: 공동 창조를 위한 개인화된 관계
__패턴: 책임을 묻지 않는 원인 조사
__요약
9장. 개발 및 프로세스 패턴
__패턴: 오픈소스 기반 내부 프로젝트
__패턴: 분산 시스템
__패턴: 테스트 자동화
__패턴: 지속적 통합
__패턴: 재현 가능한 개발 환경
__패턴: 장시간 테스트를 배제하는 CI/CD
__패턴: 마이크로서비스 아키텍처
__패턴: API를 통한 통신
__패턴: 레퍼런스 아키텍처
__패턴: 아키텍처 도안
__패턴: 개발자 스타터 팩
__패턴: 데모 애플리케이션
__패턴: 시작 단계부터 보안을 고려한 시스템
__패턴: 스트랭글 모놀리식 애플리케이션
__패턴: 자동화는 마지막에
__패턴: 바퀴의 재발명 방지
__패턴: A/B 테스트
__패턴: 서버리스
__요약
10장. 인프라스트럭처 및 클라우드에 대한 패턴
__패턴: 프라이빗 클라우드
__패턴: 퍼블릭 클라우드
__패턴: 인프라 자동화
__패턴: 셀프 서비스
__패턴: 동적 스케줄링
__패턴: 컨테이너 기반 애플리케이션
__패턴: 관측성
__패턴: 지속적 전달
__패턴: 지속적 배포
__패턴: 전체 운영 환경 준비 상태
__패턴: 위험을 줄이는 배포 전략
__패턴: 마지막 단계에서 리프트 앤 시프트
__요약
11장. 패턴 적용 1부: 트랜스포메이션 디자인 스토리
__1단계: 사고
____챔피언 진입
____적용 준비
____비전 및 핵심 팀
____권한 위임
__2단계: 디자인
____분산 시스템과 친구
____탐색적 실험
____개념 증명
12장. 패턴 적용 2부: 클라우드 네이티브 트랜스포메이션 디자인
__3단계: 빌드
____온보딩 준비
____올바른 시기와 올바른 경로에 적용
__4단계: 실행
____오래된 모든 것들을 스트랭글해라
____창의성 유지
__종료?
13장. 공통적인 트랜스포메이션 난관
__너무 일찍 리프트 앤 시프트 진행
__클라우드를 단순히 애자일의 확장으로 취급
__불균형 액세스를 통한 “스파이킹” 클라우드 네이티브 혁신
__새로운 시스템, 오래된 구조
__잘못된 구현 순서
__운영 준비가 되지 않은 플랫폼, 여하튼 운영으로 간다
__그린필드 신화, 또는 “전부가 아니면 전무” 접근법
__플랫폼 팀의 부족
__교육과 적용 계획 부족
__요약
14장. 1년 내 은행 구축: 스타링 뱅크 사례 연구
__아키텍처를 멋지게
__애플리케이션 구축
IT 부서 없음
당신이 만들고, 당신이 실행한다
지속적 전달
모든 것을 클라우드로
__회복력 있는 아키텍처
__그리고, 정말로, 그게 다야
15장. 정글에 온 것을 환영한다: 아디다스 클라우드 네이티브 트랜스포메이션 사례 연구
__정글에 온 것을 환영한다
__쿠버네티스 놀이터
__2일차
__클라우드 시티에서의 2일 오후
에필로그
부록
저자소개
피니 레즈닉, 제이미 돕슨, 미셸 지노 , 정이현, 소병욱, 김진웅
출판사리뷰
이 책에서 다루는 내용
◆ 기업의 관점에서 전환의 모든 과정 이해
◆ 가상의 회사 이야기로 실패 사례들과 실용 패턴 제시
◆ 쿠버네티스 설명 및 시스템 이해
◆ 대응력과 적응력이 뛰어난 조직으로 변화하는 방법 제시
이 책의 대상 독자
회사에 적합한 클라우드 네이티브를 진지하게 고려하는 중간 관리자, 프로젝트 리더 또는 경영진 수준의 의사 결정권자를 대상으로 한다.
이 책의 구성
1장부터 5장까지 클라우드 기본 배경 지식 및 개념을 설명한 다음, 기술 및 패턴과 함께 작업하기 위한 도구와 접근 방식 및 전략을 소개한다. 이후 당신이 속한 회사의 현재 상황을 파악하고 클라우드 네이티브 대상을 선택할 수 있도록 돕는 자체적인 클라우드 네이티브 성숙도 매트릭스(Maturity Matrix) 도구를 제공한다. 후반부에서는 전략, 조직/문화, 개발/프로세스 및 인프라에 대한 장으로 구성된 패턴 자체를 보여준다. 그 후 일반적인 회사의 성공적인 클라우드 네이티브 트랜스포메이션 경로를 패턴으로 보여준다.
지은이의 말
모든 내용은 공식적인 연구가 아닌 필자들의 경험에 근거한다. 게다가 현 시점에서 매우 새로운 지식이기에 아직까지 공식적인 연구는 존재하지 않는다. 이는 필자의 의견과 관찰 사항이며, 클라우드 네이티브의 어떤 종류의 확정적인 십계명으로도 제공되지 않는다. 이러한 복잡한 부분들이 어떻게 조화를 이루는지, 기능적이면서 효율적인 클라우드 네이티브 시스템이 어떻게 만들어지는지 쉽게 파악할 수 있기를 바란다. 잘 알려진 길을 벗어나 클라우드로 완전히 새로운 세계로 나아가고 있기에 전체 조직을 트랜스포메이션하는 것은 불안할 것이다. 패턴은 이 새로운 길을 따라 천천히, 그리고 점진적으로 올바른 방향으로 나아가고자 일련의 작은 단계들을 제공한다. 하지만 더 중요한 건 이 책에서 배운 모든 것을 계속해서 사용할 수 있다는 것을 알게 될 거라는 점이다. 클라우드 네이티브를 실행하는 방법을 알려주지는 않는다. 대응력과 적응력이 뛰어난 조직으로 변화하는 법, 향후에 어떤 일이 일어나더라도 문제없이 신속하게 대처할 수 있는 방법을 알려주고자 한다.
옮긴이의 말
요즘은 바야흐로 클라우드의 시대다. 거의 모든 기업이 클라우드 도입에 열을 내고 있는 상황이다. 그러나 기업별 클라우드를 바라보는 시각에는 다소 차이가 있어 보인다. 이미 수년 전부터 실제 클라우드 환경에서 모든 대국민을 대상으로 서비스하고 있는 다수의 기업들이 있는가 하면, 아직도 단순히 서버를 대체하는 관점으로 바라보는 기업도 있고, 다른 기업들이 앞다투어 도입함으로써 따라 도입하려는 기업도 있다. 사실 클라우드를 도입하고 기존 시스템이나 서비스를 클라우드로 전환하기 위해서는 치밀한 사전 준비가 필요하다. 또한 관련 조직 구성, 접근 방향성, 역량, 비전과 로드맵, 스폰서십 등도 필요하다.
기존 시스템의 현황 조사도 필요하며 클라우드에서의 기술적 성숙도를 어떻게 높여갈 수 있는지에 대한 CEO, CIO, CSO 및 실무 리더들의 고민도 필요하다. 단순한 서버 대체가 아닌 진정으로 클라우드를 효과적으로 잘 활용하는 ‘클라우드 네이티브’가 목표가 돼야 함은 의심의 여지가 없다. 이를 위해 컨테이너화, 마이크로서비스, 동적관리, 자동화, 오케스트레이션 등 클라우드 네이티브의 5개 기술 요소 적용을 필히 고려해야 한다. 이 또한 단순히 기술적인 측면에서 쉽게 되는 것이 아닌 조직과 일하는 문화의 혁신 및 경영층의 스폰서십 등이 지속해서 동반돼야 가능하다. 이 ‘클라우드 네이티브 트랜스포메이션’이라는 목표로 클라우드 전환이라는 여정에 있는 기업들이나 시스템/서비스 관련자들에게 이 도서가 많은 도움이 될 것으로 기대한다. 파이팅!
정이현
현대 사회에서 클라우드는 IT/OT의 경계를 넘어 명실상부 모든 서비스의 근간이며, 클라우드 네이티브는 급변하는 요구에 빠르게 대응하기 위해 필수불가결한 요소로 자리매김하고 있다. 때문에 수많은 기업들이 생존을 위해 명확한 전략 없이 클라우드 네이티브 트랜스포메이션의 여정을 시작한다. 그러나 기대와 달리 기술과 도구에 집중한 접근법은 수없이 많은 위험과 변수에 노출돼 비용과 시간을 낭비하게 된다. 저자는 웰스그리드 회사 이야기를 통해 암묵지에 가려진 실패 사례들과 이를 극복할 수 있는 실용 패턴을 형식지로 제시한다. 또한 문화, 철학, 일하는 방식 등 총체적인 변화를 통해 목적지에 도착할 수 있다고 말하고 있다. 이 책을 통해 클라우드 네이티브 트랜스포메이션 여정의 출발지에서 앞으로 발생할 많은 시행착오와 실패 비용을 줄이며 장밋빛 청사진으로 한 걸음 다가설 수 있기를 기대해 본다.
소병욱
클라우드 네이티브는 클라우드 컴퓨팅 모델의 장점을 모두 활용하는 애플리케이션을 개발하고 실행하기 위한 접근 방식으로, 느슨하게 결합된 마이크로서비스 형태인 컨테이너 기반의 프로세스나 애플리케이션을 쿠버네티스와 같은 오케스트레이션 도구를 통해 관리하는 방식을 말한다. 기업이 클라우드 네이티브로 전환할 때 이러한 기술과 도구를 도입하기만 한다면 성공하기란 매우 어렵다. 실제 성공을 위해서는 문화와 철학으로 접근해야 더 효율적이며, 새로운 기술 스택을 습득하면서 동시에 여러 패턴을 통한 장기적인 전환 시도가 필수적이라고 저자는 이야기한다. 기술적인 내용을 자세히 담고 있지는 않지만, 현재 기업이 직면한 현실적인 문제를 파악하고 어떤 방향으로 트랜스포메이션을 진행할지에 대한 조언을 얻을 수 있다.
김진웅