메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

쿠버네티스 모범 사례

쿠버네티스 창시자가 알려주는 최신 쿠버네티스 개발 및 배포 기법

한빛미디어

번역서

판매중

  • 저자 : 브렌던 번스 , 에디 비얄바 , 데이브 스트레벨 , 라클런 이븐슨
  • 번역 : 장정호
  • 출간 : 2020-12-01
  • 페이지 : 304 쪽
  • ISBN : 9791162243640
  • 물류코드 :10364
  • 초급 초중급 중급 중고급 고급
4.6점 (16명)
좋아요 : 508

성공적인 쿠버네티스 애플리케이션 구축을 위한 실전 가이드 

 

이 책은 쿠버네티스 창시자인 브렌던 번스와 분산 시스템, 기업용 애플리케이션 개발, 오픈 소스에 조예가 깊은 세 명의 쿠버네티스 전문가가 함께 썼다. 현업에서 쌓은 경험을 바탕으로 쿠버네티스를 성공적으로 운영하기 위한 다양한 기법을 구체적인 코드 예제와 함께 설명한다. 쿠버네티스 기본 개념에 익숙한 사람이 일반적인 모범 사례를 배우고자 할 때 적합한 책으로, 쿠버네티스 환경에서 처음 애플리케이션을 구축할 때 필요한 지식을 얻을 수 있다. 또한 쿠버네티스에 애플리케이션을 배포하거나 쿠버네티스 기반 애플리케이션에 적용할 수 있는 패턴과 사례를 배우려는 실무자에게 도움을 준다.

 

  • 쿠버네티스에서 애플리케이션 구축 및 개발하기
  • 시스템 모니터링 및 보안, 업그레이드, 롤아웃, 롤백 관리 유형 학습하기
  • 쿠버네티스 네트워킹 정책과 서비스 메시 적용 이해하기

 

 

출판사 리뷰

 

구글의 쿠버네티스는 2014년에 오픈 소스화되면서 빠르게 생태계를 키워나가고 있다. 하지만 익숙하지 않은 기술이 새롭게 등장했을 때 제대로 활용할 방법을 찾는 데는 많은 시간과 노력이 든다. 특히 쿠버네티스와 같이 자유도가 높은 기술의 경우에는 더욱 그렇다. 

 

쿠버네티스의 강점을 100% 끌어내기 위해서는 경험이 많은 선배 개발자의 조언이 필요하다. 이 책은 쿠버네티스의 창시자인 브렌던 번스가 쿠버네티스를 이용하는 다양한 실무자를 도우며 직접 경험한 내용을 담았다. 문제가 발생하기 쉬운 모니터링, 테스트, 배포, 리소스 관리, 알림 등의 작업부터 머신러닝, 고수준 애플리케이션 패턴 구축까지 폭넓은 범위를 다룬다. 

 

특히, 독립적인 구성에 주목하면 좋다. 각 장은 쿠버네티스에서 수행하는 특정 작업에 대한 전반적인 개요와 같으므로 특정 주제를 배우고 싶거나 관심사가 생겼을 때 찾아 읽을 수 있다. 현업에서 과제를 수행하기 전에 이 책을 완독해도 유용하겠지만, 주제별 내용을 현업에서 실습해보기 위한 안내서 혹은 필요할 때마다 찾아보는 참고서로 생각하기를 추천한다.

 

쿠버네티스를 소개하는 책은 아니다. 독자가 기본적인 쿠버네티스 API와 도구에 친숙하며 쿠버네티스 클러스터를 생성하고 상호작용하는 법을 안다고 가정한다. 쿠버네티스를 활용한 최상의 접근 방법을 제시하며 현업에서 반드시 알아야 하는 내용만을 다루기 때문에, 쿠버네티스에 대한 기본적인 지식을 가진 초보 실무자는 물론이고 경험이 많은 프로 실무자에게도 도움을 준다. 

 

반복되는 문제를 붙잡고 씨름하고 있는 사람, 이미 해결된 문제를 새롭게 풀려는 사람, 혹은 새로운 분야의 전문가가 되려는 사람 모두가 이 책을 읽고 쿠버네티스를 완벽히 활용할 수 있는 기술과 자신감을 얻기를 바란다.

 

 

추천사

 

경험이 풍부한 전문가의 실용적인 핸즈온 안내서로, 급변하는 쿠버네티스 생태계에 대한 깊은 통찰력을 제시합니다.

_ 브리짓 크롬하우트, 마이크로소프트 수석 프로그램 관리자

 

현업에서 발생하는 다양한 쿠버네티스 문제에 대한 해결책을 담은 실용적인 안내서로 이 책을 강력 추천합니다.

_ 롤란트 후스, 레드햇 수석 소프트웨어 엔지니어

 

이 책에서 제시하는 사례의 다양한 규모, 위상, 도메인을 통해 쿠버네티스 운영 전반에 대한 통찰력을 얻을 수 있습니다.

_ 빌긴 이브리암, 레드햇 수석 아키텍트

브렌던 번스 저자

브렌던 번스

마이크로소프트 애저의 최고 엔지니어. 쿠버네티스 오픈 소스 프로젝트의 공동 설립자다. 10년 넘게 클라우드 애플리케이션을 구축해왔다.

 

에디 비얄바 저자

에디 비얄바

마이크로소프트의 상업 소프트웨어 엔지니어링 부문 엔지니어. 오픈 소스 클라우드와 쿠버네티스에 전념한다. 애플리케이션에 쿠버네티스를 적용하는 현업 사용자들을 돕는다.

데이브 스트레벨 저자

데이브 스트레벨

마이크로소프트 애저의 글로벌 클라우드 네이티브 아키텍트. 오픈 소스 클라우드와 쿠버네티스에 집중한다. 쿠버네티스 오픈 소스 프로젝트에 참여하며 쿠버네티스 릴리스 팀을 돕고 SIG 애저를 이끈다.

라클런 이븐슨 저자

라클런 이븐슨

마이크로소프트 애저의 컨테이너 컴퓨트 팀 수석 프로그램 관리자. 핸즈온 과정과 컨퍼런스 대담을 통해 쿠버네티스를 시작하려는 사람들에게 도움을 준다.

장정호 역자

장정호

네이버 검색 소프트웨어 엔지니어. 2006년에 티맥스에서 애플리케이션/시스템 간 데이터 전송 시스템 개발을 시작으로, 다음커뮤니케이션에서 데이터 마이닝 업무, SAP에서 칼럼 기반의 인메모리 RDBMS인 HANA 개발에 동참했으며, 그 후 빅데이터 저장/분석 시스템 영역에 관한 연구를 통해 네이버에서 데이터 분석 시스템을 개발을 담당하고 있습니다. 한빛미디어에서 『쿠퍼네티스 모범 사례』(2020), 『하둡 완벽 가이드(4판)』(2017), 『하이브 완벽 가이드』(2013) 등을 번역했습니다.

 

SK텔레콤의 데이터 플랫폼 엔지니어. 네이버와 SAP에서 데이터 플랫폼과 데이터베이스 개발에 참여했습니다.

 

chapter 1 기본 서비스 설치

1.1 애플리케이션 개요

1.2 설정 파일 관리

1.3 디플로이먼트를 이용한 복제 서비스 생성

1.4 HTTP 트래픽을 처리하는 외부 인그레스 설정

1.5 컨피그맵으로 애플리케이션 설정

1.6 시크릿 인증 관리

1.7 간단한 스테이트풀 데이터베이스 배포

1.8 서비스를 이용한 TCP 로드 밸런서 생성

1.9 인그레스를 이용해 트래픽을 정적 파일 서버로 전달

1.10 헬름을 이용한 애플리케이션 파라미터화

1.11 서비스 배포 모범 사례

1.12 마치며

 

chapter 2 개발자 워크플로

2.1 목표

2.2 개발 클러스터 구축

2.3 다중 개발자를 위한 공용 클러스터 구축

2.4 개발자 워크플로 활성화

2.5 초기 설정

2.6 반복적 개발

2.7 테스트와 디버그 동작

2.8 개발 환경 설정 모범 사례

2.9 마치며

 

chapter 3 모니터링과 로깅

3.1 메트릭 vs 로그

3.2 모니터링 기술

3.3 모니터링 패턴

3.4 쿠버네티스 메트릭 개요

3.5 모니터링할 메트릭

3.6 모니터링 도구

3.7 프로메테우스를 사용한 모니터링

3.8 로깅 개요

3.9 로깅 도구

3.10 EFK 스택을 사용한 로깅

3.11 알림

3.12 모니터링, 로깅, 알림 모범 사례 

3.13 마치며

 

chapter 4 설정, 시크릿, RBAC

4.1 컨피그맵과 시크릿을 통한 설정

4.2 컨피그맵과 시크릿 API 모범 사례

4.3 RBAC

4.4 마치며

 

chapter 5 지속적 통합, 테스트, 배포

5.1 버전 관리

5.2 지속적 통합

5.3 테스트

5.4 컨테이너 빌드

5.5 컨테이너 이미지 태그

5.6 지속적 배포

5.7 배포 전략

5.8 운영에서 테스트

5.9 파이프라인 구축과 카오스 실험 수행

5.10 CI/CD 모범 사례

5.11 마치며

 

chapter 6 버전, 릴리스, 롤아웃

6.1 버전

6.2 릴리스

6.3 롤아웃

6.4 버전, 릴리스, 롤아웃 통합 예제

6.5 버전, 릴리스, 롤아웃 모범 사례

6.6 마치며

 

chapter 7 글로벌 애플리케이션 분산과 스테이지

7.1 이미지 분산

7.2 배포 파라미터화

7.3 글로벌 트래픽 로드 밸런스

7.4 안정적인 글로벌 롤아웃

7.5 문제 발생 시 대처

7.6 글로벌 롤아웃 모범 사례

7.7 마치며

 

chapter 8 리소스 관리

8.1 쿠버네티스 스케줄러

8.2 고급 스케줄링 기술

8.3 파드 리소스 관리

8.4 리소스 관리 모범 사례

8.5 마치며

 

chapter 9 네트워킹, 네트워크 보안, 서비스 메시

9.1 쿠버네티스 네트워크 원칙

9.2 네트워크 플러그인

9.3 쿠버네티스의 서비스

9.4 네트워크 보안 정책

9.5 서비스 메시

9.6 마치며

 

chapter 10 파드와 컨테이너 보안

10.1 파드시큐리티폴리시 API

10.2 워크로드 격리와 런타임클래스

10.3 파드와 컨테이너 보안 고려 사항

10.4 마치며

 

chapter 11 클러스터 정책과 거버넌스

11.1 정책과 거버넌스의 중요성

11.2 다른 정책과의 차이

11.3 클라우드 네이티브 정책 엔진

11.4 게이트키퍼 소개

11.5 감사

11.6 정책과 거버넌스 모범 사례

11.7 마치며

 

chapter 12 다중 클러스터 관리

12.1 다중 클러스터의 필요성

12.2 다중 클러스터 설계 문제

12.3 다중 클러스터 배포 관리 

12.4 깃옵스를 이용한 클러스터 관리

12.5 다중 클러스터 관리 도구

12.6 쿠버네티스 페더레이션

12.7 다중 클러스터 관리 모범 사례

12.8 마치며

 

chapter 13 외부 서비스와 쿠버네티스 통합

13.1 쿠버네티스로 서비스 가져오기

13.2 쿠버네티스 서비스 내보내기

13.3 쿠버네티스 간 서비스 공유

13.4 서드파티 도구

13.5 클러스터와 외부 서비스 연결 모범 사례

13.6 마치며

 

chapter 14 쿠버네티스에서 머신러닝 실행하기

14.1 머신러닝에서 쿠버네티스의 장점 

14.2 머신러닝 워크플로

14.3 쿠버네티스 클러스터 관리자를 위한 머신러닝

14.4 데이터 과학자 관심사

14.5 쿠버네티스에서의 머신러닝 모범 사례

14.6 마치며

 

chapter 15 고수준 애플리케이션 패턴 구축

15.1 고수준 추상화 개발 방법

15.2 쿠버네티스 확장

15.3 플랫폼 구축 시 설계 고려 사항

15.4 애플리케이션 플랫폼 구축 모범 사례

15.5 마치며

 

chapter 16 상태와 스테이트풀 애플리케이션 관리

16.1 볼륨과 볼륨 마운트

16.2 쿠버네티스 스토리지

16.3 스테이트풀 애플리케이션

16.4 마치며

 

chapter 17 어드미션 컨트롤과 권한

17.1 어드미션 컨트롤

17.2 권한

17.3 마치며

 

chapter 18 결론

쿠버네티스 창시자가 알려주는 최신 쿠버네티스 개발 및 배포 기법

 

브랜던 번스, 에디 비얄바, 데이브 스트레벨, 라클런 이븐슨 지음 / 장정호 옮김

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

10월, 나는 리뷰어다 활동의 9번째 리뷰.

(8번째 리뷰는 완성하지 못하여 비공개입니다. 흙흙)

 

여차저차하여 쿠버네티스 모범 사례 책을 받게 되었다. 회사는 Azure 클라우드 환경에서 개발 및 배포를 진행하기 때문에 쿠버네티스 파이프라인 구성이 굉장히 중요하다. 본인은 아직 주니어기 때문에 쿠버네티스 구성을 직접 한다거나 수정하는 등의 중책을 맡고 있지는 못하지만, 그래도 어떻게 굴러가는 건지는 알아야 할 것 같아서 신청하였다.

 

일단, 쿠버네티스란 무엇인가?

https://kubernetes.io/ko/docs/concepts/overview/what-is-kubernetes/

 

쿠버네티스란 무엇인가?

쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식할 수 있고, 확장 가능한 오픈소스 플랫폼으로, 선언적 구성과 자동화를 모두 지원한다. 쿠버네티스는 크고 빠르게 성장하

kubernetes.io

쿠버네티스는 컨테이너화 된 워크로드와 서비스를 관리하기 위한 이식성이 있고, 확장 가능한 오픈소스 플랫폼이다. 쿠버네티스는 선언적 구성과 자동화를 모두 용이하게 해 준다. 크고, 빠르게 성장하는 생태계를 가지고 있다. 쿠버네티스 서비스, 기술 지원 및 도구는 어디서나 쉽게 이용할 수 있다.

-----

좋은 것 같긴 한데 도통 뭐라는건지 전혀 모르겠다. 회사 프로젝트가 쿠버네티스를 이용하고 있음에도 이런다. 그나마 도커는 조금 알고 이해하고는 있지만 ...

 

그럼, 쿠버네티스가 왜 필요하고 무엇인지 알아보자.

- 서비스 디스커버리와 로드 밸런싱

- 스토리지 오케스트레이션

- 자동화된 롤아웃과 롤백

- 자동화된 빈 패킹(bin packing)

- 자동화된 복구(self-healing)

- 시크릿과 구성 관리

---

역시 잘 모르겠다. 하하하하하하...

 

쿠버네티스가 더 궁금하다면 조대협님이 블로그를 정독하도록 하자.

https://bcho.tistory.com/1255

 

쿠버네티스 #1 - 소개

Kubernetes #1 - 소개 조대협 (http://bcho.tistory.com) 배경 도커와 쿠버네티스를 알게 된건 수년전인데, 근래에 들어서 다시 쿠버네티스를 보기 시작하였다. 컨테이너 기반의 환경은 배포에 장점이 있고

bcho.tistory.com

자 그럼 이 책에 대해서 알아보자. 이제 본론이다.

옮긴이의 말을 보면, 이 책을 통해 15년 이상 쌓아온 구글의 노하우를 터득할 수 있다고 한다. 쿠버네티스는 자유도가 높기 때문에 제대로 활용할 방법을 찾는 것에 많은 시간과 노력이 든다고 한다. 쿠버네티스의 창시자인 브렌던 번스가 다양한 실무자를 도우며 경험한 내용을 담았으며 초보 실무자는 물론 경험이 많은 프로 실무자에게도 꼭 필요한 책이라고 한다.

 

책의 구성을 보자.

각 장은 독립적인 형태로 구성되어 있으며 각 장은 쿠버네티스에서 수행하는 특정 작업에 대한 전반적인 개요와 같으므로, 특정 주제를 배우고 싶거나 관심사가 생겼을 때 찾아서 읽으면 더 효율적이다.

 

사실 쿠버네티스는 클라우드 네이티브 개발의 사실상 표준으로, 애플리케이션을 더 쉽게 개발하고 빠르게 배포하고 안정적으로 운영하도록 돕는 강력한 도구이다. 이 책은 쿠버네티스를 소개하는 책이 아니며, 독자가 기본적인 쿠버네티스 API와 도구와 친숙하며 쿠버네티스 클러스터를 생성하고 상호작용하는 법을 안다고 가정한다. 아무튼 쿠버네티스에 관심 있는 사람이 보기에 참 좋은 책이라는 이야기다.

 

CONTENTS

1. 기본 서비스 설치

2. 개발자 워크플로

3. 모니터링과 로깅

4. 설정, 시크릿, RBAC

5. 지속적 통합, 테스트, 배포

6. 버전, 릴리스, 롤아웃

7. 글로벌 애플리케이션 분산과 스테이지

8. 리소스 관리

9. 네트워킹, 네트워크 보안, 서비스 메시

10. 파드와 컨테이너 보안

11. 클러스터 정책과 거버넌스

12. 다중 클러스터 관리

13. 외부 서비스와 쿠버네티스 통합

14. 쿠버네티스에서 머신러닝 실행하기

15. 고수준 애플리케이션 패턴 구축

16. 상태와 스테이트풀 애플리케이션 관리

17. 어드미션 컨트롤과 권한

18. 결론

 

CONTENTS를 보면 실무자가 어려움에 처했을 때 케이스를 쉽게 찾을 수 있도록 구성되어 있다.

배포를 할 때 문제가 발생하였다면 5번 CONTENTS를 먼저 참고하고, 책 뒤에 있는 INDEX를 참고하면 될 일이다.
(사실, 그전에 갓글 검색 먼저 하겠지만 말이다.)

 

5장 지속적 통합, 테스트, 배포

책을 보면 명령어와 함께 순서대로 설명을 잘해주기 때문에 그대로 따라 해 보면 바로 적용해 볼 수 있다.

게다가 각 챕터의 끝에는 모범 사례를 말하지만 꿀팁을 제공하고 있는 부분이다.

5.10 CI/CD 모범 사례

5장에서는 CI/CD 파이프라인이 쿠버네티스에 애플리케이션을 전달할 때 위험을 줄이고 처리 속도를 높이는 역할을 하는 부분에 서술하였고, 배포 전략까지 다루고 있다.

 

참말로, 현재 쿠버네티스를 다루고 있는 실무자라면 바로 적용해 볼 수 있는 부분들이 많아서 큰 도움이 된다.

 

본인은 아직 이 책의 전부를 읽어보진 않았고, 필요한 부분만 발췌해서 보고 있지만 앞으로 사전처럼 자주 볼 책임이 분명하다.

언젠가는 쿠버네테스에 관련해서도 블로깅 해보리라 다짐한다.

(현실은 시작한 시리즈가 없지만!!)

 

오늘도 괴발개발 코드 몽키는 조금 더 똑똑한 코딩을 하려 하고 있다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

이제는 쿠버네티스다. 클라우드 시대가 도래하면서 더더욱 가상머신을 더 많이 사용하게 되었다. 가상머신은 다양한 환경과 좀더 복잡해져가는 요구사항에 발 맞추기 위한 최소한의 노력으로 시작되었다. 비록 하드웨어는 나날이 발전하고 단가는 더 내려가지만 여전히 가상머신을 실행해야 하는 가상프로그램들은 퍼포먼스에 시달리고 있다. CPU와 Memory 특히 Disk I/O는 여러 개의 가상 머신을 실행할 때 시스템이 허덕이고 있는 것을 느낄 정도다. 

새로운 가상머신의 소프트웨어는 Linux의 Container 기반 기술을 이용하도록 발전했다. 하지만 여전히 문제는 남아 있다. 그것은 그 기술이 너무 어렵다는 것이다. 일반인들이 접근해서 사용하기에는 러닝커브가 너무 크다. 그런차에 Docker가 출시되었고, 보다 빠르고 퍼포먼스가 너무도 좋아진 가상 환경을 Docker Container를 통해 사용하게 되었다. 문제는 여전히 따라오고 있었다. 너무 많은 Docker Container들의 관리가 필요한 것이다. 그래서 우리는 Google에서 만든 쿠버네티스에 눈을 돌리게 된다. 즉, 지금은 쿠버네티스가 인프라에서도, MSA에서도 절대적으로 필요하게 되었다. 실제적으로 어떻게 그 많은 Container를 관리할 것인가에 대한 올바른 해답을 쿠버네티스에서 찾을 수 있게 되었다.

이 책은 이론과 구성에서 벗어나서 좀 더 새로운 패턴으로 인도하고 있다. Best Practice가 필요한 인프라에 아주 아주 적절한 해답을 가져다 주는 책이다. 사막에서 오아시스를 만난 책이다. 더구나 이 책의 저자는 쿠버네티스의 창시자인 브렌던 번스가 썼다는 것이 중요하다. 그는 어떻게 쿠버네티스를 이용하고 경험하며 보다 올바른 방향으로 실무자들에게 코칭했던 내용들을 이 책에 담아내고 있다. 모니터링, 테스트, 배포, 리소스 관리, 알림 등 실무 인프라에서 필요한 내용을 다 담아냈다고 보면 된다. 18개의 챕터를 따라가보자. 전문가가 안내하는 더구나 창시자가 안내해주는 가이드를 따라가보자. 이 책을 통해 한 걸음 더 나아가고 있는 자신을 볼 것이다. 

서비스 배포에 대한 스트레스는 개발자들에게 엄청나게 다가올 것입니다.

개발자가 이런 어려움을 겪어야 하는 것인가? 그저 주어진 배포 환경에서 온전히 개발에만 전념하고 싶어하는

개발자들이 많을 것입니다. 이런 고민들을 단박에 해결 또는 줄여줄 수 있는 것이 바로 쿠버네티스일 것입니다.

다만 쿠버네티스는 최초에 학습이라는 크나큰 허들이 있습니다. 개념을 이해하고, 실무에 적용하기까지,

익숙하지 않은 환경 구축에 대한 학습을 하는 것이 많은 개발자들이 처음 겪는 어려움일 것입니다.

저도 현재 프로젝트에서 쿠버네티스를 사용하고 있고, 이것에 익숙해지기 까지의 경험을 가지고

이번 책을 주의깊게 볼수 있어서 많은 기대가 되었습니다.

 

책 소개

    이 책에서 쿠버네티스에 대해 이야기 하기론, '쿠버네티스는 클라우드 네이티브 개발의 사실상 표준으로,

애플리케이션을 더 쉽게 개발하고 빠르게 배포하고 안정적으로 운여하도록 돕는 강력한 도구이다. 하지만, 강력한 기능을

제대로 활용하려면 올바르게 사용해야합니다. ' 이렇게 정의하고 있습니다.

    맞습니다. 쿠버네티스는 배포와 운영을 안정정으로 도와주는 도구 입니다. 뭉뚱그려서 좋은 기능이야 라고 하기에는

많은 기능을 담고 있습니다. 이 책은 쿠버네티스의 창시자이자 마이크로소프트 애저의 최고 엔지니어이며 쿠버네티스 오픈 소스 프로젝트의 공동 설립자인 브렌던 번스가 지은이 입니다. 브랜던 번스는 쿠버네티스 프로젝트를 통해 다양한 실무자를 도우며 경험한

내용을 이 책에 담고 있습니다. 

 

장점

    이 책은 각 장에서 기능들을 차근차근 설명하고 있습니다. 서비스의 설치, 개발자의 워크 플로우, 모니터링과 로깅,

지속적 통합, 테스트, 배포, 버전 / 릴리스, 롤아웃, 분산과 스테이지, 리소스 관리, 네트워킹, 네트워크 보안, 

파드와 컨테이너 보안, 다중 클러스터 관리 등등 기능별로 챕터를 나누고 있습니다. 그래서 모든 챕터를 처음부터 끝까지

보아도 되지만, 실무에서 필요하거나, 궁금한 챕터에 대해 필요한 챕터만을 골라서 볼수 있는 점이 아주 편리하였습니다.

또한 제 경험에서 평소에 개념이 부족했거나, 실무 적용이 어려웠던 점들에 대한 궁금증을 풀 수 있었던 책이지 싶습니다.

쿠버네티스 간 서비스 공유라던지, 외부 서비스와 연결하는 사례 등등 이 있습니다. 

 

마치며

    그동안 쿠버네티스가 어려워서 접근도 못했던 개발자들에게 가뭄에 단비 같은 책이지 싶습니다. 1장부터 차근 차근

챕터들을 클리어 해 나가다보면, 어느새 실무에도 조금씩 적용해보고 싶은 욕구가 생길만큼 용기가 생기고 있는 모습을

발견하게 될 것입니다.

[도서리뷰] 쿠버네티스 모범 사례 Kubernetes Best Practices

** 이리뷰는 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다. **


 

 

 

 쿠버네티스 모범 사례는 쿠버네티스에 입문 하기 위한 책은 아닙니다. 쿠버네티스에대해 알아보고, 학습하기시 위한분이라면 다른 책을 통해서 학습하실것을 권해드립니다.  
 쿠버네티스 학습은 이미 완료하셨고, 책 제목 그대로 실무에 적용하기위해서 모범 사례를 학습하고싶으신분, 혹은 내가 배운 것들을 어떻게 적용하면 좋을지 고민하시는분들이 보기에 적합한 내용의 책 입니다. 

사실 저의 경우 이미 쿠버네티스를 이용해서 잘 구성된 서버들을 사용하기만했지, 직접 구성해본적은 없고 쿠버네티스에 대한 지식도 많이 없어서 책을 읽으면서 내용을 이해하기 어려운점이 많았습니다. 

 앞서 말씀드린것 처럼 쿠버네티스에대한 학습이 필요하신분들은 다른 책을 보시는게 좋을거같다는 판단이 들고, 이미 어느정도 학습이 완료되신 분들은 책을 한번 정독하신 후 실제 서비스를 구축하거나 서비스를 변경할때 필요한 내용을 참고하시는 용도로 책을 사용하신다면 매우 좋은 선택이 될거같습니다. 



 

쿠버네티스 모범 사례 | 한빛미디어

 

* 목차를 확인해보시길 꼭 추천드립니다 :)

 

 

KakaoTalk_Photo_2021-10-24-21-56-29.jpeg

 

 

순서대로 쭉 따라가면 되는 101 서적은 아니다

개인적으로 책 소개를 꼼꼼하게 읽는 편인데요. 특이 기술서적의 경우 제목만으로 유추할 수 없는 부분이 너무 많기 때문입니다. 책이 쓰여진 목적과 읽는 법을 알면 그만큼 더 잘 활용할 수 있지요. 도움이 될 부분을 발췌했습니다.

  • 쿠버네티스를 소개하는 책은 아니다.
  • "기본적인 쿠버네티스 API와 도구와 친숙하며, 쿠버네티스 클러스터를 생성하고 상호작용하는 법을 안다고 가정"한다.
  • 특정 애플리케이션과 워크로드를 쿠버네티스에 배포하는 방법에 대해 깊게 살핀다.
  • 각 장은 독립적인 형태로 되었있어 필요한 부분을 골라 읽어도 된다.

비개발자 k8s 입문자로서 읽은 방식

사실 책을 집어든 시점에서, 책의 타겟 독자는 아니었습니다. 심지어 엔지니어도 아니고요. 그런데 현업에서는 데이터 직군에서도 데이터 수집 등을 할 때 쿠버네티스를 활용 합니다. 상당히 복잡하고 공부가 필요하다고 들어서, 아직 써보지는 못했지만요. 본격적으로 공부해보기에 앞서서 현실 사례가 궁금해서 읽게 되었습니다.

도입부에서 '써 본 사람'을 타겟으로 한다고 해서 모든 걸 이미 알고 있다고 전제하는 건가, 걱정도 했는데요. 물론 그렇다면 정말 필요한 부분만 쏙쏙 골라 읽을 수 있겠지만, 반드시 능숙한 사용자를 대상으로 하지는 않습니다.

기대했던 건 '이런 것도 할 수 있다'였는데, 그 보다는 '이렇게 안 해도 굴러는 가지만, 제대로 써야 진가를 발휘한다.'에 가깝습니다. 기대와 달랐지만 그래도 좋았던 점은? 입문자인 제가 봐도 상당히 꼼꼼하게 쿠버네티스의 전 부분을 커버하고 있다는 점입니다. 그래서 소장하고 앞으로 시도하는 게 늘어날수록 그때그때 참고하려고 합니다.

쿠버네티스를 사용하고 있다면, 강력히 추천!

"이 책을 통해 우리는 쿠버네티스를 처음 접하는 사람이든 숙련된 관리자든 상관없이, 접하게 될 특정한 주제에 대해 구체적인 현업에서의 경험을 제공하려 노력했습니다."

다시 한 번, 입문자의 관점에서 보아도 쿠버네티스를 활용하는 과정에서 거쳐갈 수 있는 기본적인 부분들은 전부 다룬다고 느꼈습니다. 서비스 설치, 환경 구축, 로깅, 보안, 정책과 거버넌스, 머신러닝 등. 어떤 일이 발생할 수 있고, 미리 방지하려면 어떻게 해야하며, 그게 왜 중요한지 설명하고 있습니다.

지금 쿠버네티스를 사용하고 있다면, 목차에서 눈에 띄는 부분을 짚을 수 있을 겁니다. 그리고 상태를 점검해볼 수 있지요. 생각지 못한 부분에서 문제를 발견할 수도 있고, 잘 운영은 되고 있는데 어쩐지 찝찝하다면 그 부분을 시원하게 점검할 기회가 될 수 있습니다.


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

마이크로서비스 뿐만 아니라 데이터 분석에서도 쿠버네티스를 많이 사용하다보니 최근에는 쿠버네티스에 대한 지식이 필수가 되어가고 있다. 그러면서 많은 회사들에서 쿠버네티스 기반의 서비스를 구축하고 있고, 다양한 사례들이 나오고 있으며 어느정도 패턴화 된 부분들이 있는 듯 하다. 나 또한 쿠버네티스 기반의 서비스를 운영하기 위해 다양한 입문 서적들을 접해보면서 하나씩 구축해보았고, 다양한 시행 착오를 거쳤었었다. 

 

쿠버네티스를 효과적으로 운영하기 위해서는 파일시스템, 네트워크, 스토리지 등 다양한 분야에 대한 지식이 필요했고, 처음 접했을 때는 어디서부터 어떻게 시작해야할지 막막함부터 느꼈던 것 같다. 이로 인해 아직은 몰라도 될 부분에도 스터디 하는데 많은 시간을 쏟았었고, 지금 생각해보면 효율이 많이 떨어지는 방식이었다고 생각한다. 

 

만약 지금 다시 쿠버네티스 공부를 시작한다고 하면 현재는 사례들이 많기 때문에 안정적으로 운영하고 있는 여러 서비스들이 어떻게 쿠버네티스 기반으로 운영되었는지 조사해보고 간접 경험을 통해 공부해야할 범위를 축소해서 집중 적으로 공부를 했을 것 같다. 그런면에서 이번에 읽은 쿠버네티스 모범 사례는 어디를 살펴봐야 효과적인지를 잘 짚어주는 책이라고 생각한다. 더군다나 쿠버네티스 창시자를 포함한 전문가 분들이 집필한 책이기 때문에 더욱 믿음이 간다.

 

 

저자분 중 한분인 브렌던 번스와 함께

 

 

책은 그렇게 두껍지 않아서 빠르게 훑어볼 수 있지만 내가 쿠버네티스를 운영하면서 실제 시행착오를 거쳐가며 설정했던 내용들이 대부분 포함되어 있었고, 미처 적용하지 못해서 아쉬웠던 부분까지도 잘 담겨져 있었다. 기본적인 쿠버네티스 설치부터 애플리케이션 실행에 대한 부분은 물론이고 향 후 Pod가 잘 유지될 수 있도록 리소스 설정과 오토스케일링 설정, 이미지 버전 업데이트를 위한 롤아웃, 지속적인 모니터링을 위한 방법, 심지어는 컨테이너 보안과 거버넌스 측면에 대해서도 다루고 있다. 이러한 것들은 쿠버네티스를 기반으로 서비스를 운영하기 위한 전체적인 싸이클에 대해 간접적으로 경험해볼 수 있고, 각 챕터마다 모범사례에 대해 언급하고 있기 때문에 숙련된 쿠버네티스 엔지니어에게 조언을 듣는 듣한 느낌을 받을 수 있다. (저자분들 중 창시자들이 포함되어 있으니 숙련을 뛰어 넘은 듯)

 

한빛미디어에서 이번에 번역서로 발간된 Kubernetes Best Practices 쿠버네티스 모범 사례이다. 책의 제목보다 부제가 무척 매력적이기 때문에 엔지니어라면 이 책을 포기하기 쉽지 않다

쿠버네티스 창시자가 알려주는 최신 쿠버네티스 개발 및 배포 기법

 

이건 못참지. 요즘 IT 개발 쪽 콘퍼런스에 가보면 빠지지 않고 등장하는 주제가 쿠버네티스다. 그만큼 핫한 기술이기도 하고 많은 회사들이 인프라 아키텍처 고도화의 방향을 MSA로 잡으면서 쿠버네티스를 시도한다. 아무튼, 이 책은 쿠버네티스 오픈 소스 프로젝트의 공동 설립자 브렌던 번스(Brendan Burns)와 동료들이 작성한 책이다. 아마도 많은 분들이 빠르게 쿠버네티스를 익히기 위해 이 책을 검색하고 꺼내 들었을 거라고 생각된다. 하지만 잠깐 대상 독자는 주목해보자.

이 책은 쿠버네티스를 소개하는 책이 아닙니다. 독자가 기본적인 쿠버네티스 API와 도구와 친숙하며 쿠버네티스 클러스터를 생성하고 상호작용하는 법을 안다고 가정합니다

 

이 책은 입문서적이 아니며, 그렇다고 중급 책도 아니다. 굳이 나누자면 고급 책에 해당한다. 이미 쿠버네티스를 어느 정도 능숙히 다룰 수 있는 사람 혹은 운영 레벨에서 사용하고 있는 엔지니어를 대상으로 한다. 그런 사람이 더욱 쿠버네티스를 깊이 있게 이해하기 위해 필요한 책이 바로 이 책 "쿠버네티스 모범 사례" 되시겠다. 책의 콘텐츠를 살펴보면 하나하나가 입문 서적으로 다룰 만큼 큰 주제이다. 

  • CHAPTER 01 - 기본 서비스 설치
  • CHAPTER 02 - 개발자 워크플로
  • CHAPTER 03 - 모니터링과 로깅
  • CHAPTER 04 - 설정, 시크릿, RBAC
  • CHAPTER 05 - 지속적 통합, 테스트, 배포
  • CHAPTER 06 - 버전, 릴리스, 롤아웃
  • CHAPTER 07 - 글로벌 애플리케이션 분산과 스테이지
  • CHAPTER 08 - 리소스 관리
  • CHAPTER 09 - 네트워킹, 네트워크 보안, 서비스 메시
  • CHAPTER 10 - 파드와 컨테이너 보안
  • CHAPTER 11 - 클러스터 정책과 거버넌스
  • CHAPTER 12 - 다중 클러스터 관리
  • CHAPTER 13 - 외부 서비스와 쿠버네티스 통합
  • CHAPTER 14 - 쿠버네티스에서 머신러닝 실행하기
  • CHAPTER 15 - 고수준 애플리케이션 패턴 구축
  • CHAPTER 16 - 상태와 스테이트풀 애플리케이션 관리
  • CHAPTER 17 - 어드미션 컨트롤과 권한
  • CHAPTER 18 - 결론

자, CHAPTER 제목을 훑어보니 어떠한가? 책은 두껍지도 않다. 300 페이지밖에 안 되는 얇은 책이다. 저 모든 내용이 담겨있다는 게 무엇을 나타낼지 생각해보라. 용어 하나하나 친절하게 설명하는 책이 아니라는 의미다. 쿠버네티스에서 사용되는 용어나 기본적인 동작 흐름을 모두 이해하고 있다는 전제로 내용이 진행된다. 그렇기 때문에 가벼운 마음으로 선택해서는 안 되는 책이다.

책은 고급서적 답게 최신 쿠버네티스에 적용되는 다양한 개발 방법과 배포 기법이 다뤄진다. 커맨드 라인에서 kubectl을 사용하는 다양한 예제와 yaml 파일을 기본으로 설명한다. 적절한 곳에 다이어그램을 통해 내부 구조를 깔끔하게 그려내기도 한다. 여러 권의 쿠버네티스 관련 서적을 읽었지만 이렇게 깔끔한 다이어그램은 이 책이 유일무이하다고 생각된다. 

자, 그럼 이 책을 추천하느냐의 이야기를 해야겠다. 결론은 독자의 레벨에 따라 다르다. 보통 입문서나 중급 책 같은 경우에는 폭 넓게 누구나 읽을 수 있다. 어차피 통달한 사람이라도 기본기를 다시 점검하는 차원으로 읽을 수 있으니까. 하지만 고급 서적은 느낌이 조금 다르다. 입문 레벨이나 쿠버네티스를 제대로 다뤄보지 못한 사람은 오히려 많은 혼란을 겪게 될 거다. 어쩌면 책을 읽다가 중도 포기하게 되는 경우가 생길지도. 책의 대상 독자에 나와있는 것처럼 입문을 위해서는 쿠버네티스 시작하기 2/e(에이콘출판사, 2020)가 좋은 선택이 될 거다.

 


한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

이 도서는 쿠버네티스의 기본적인 구성 요소에 대한 친절한 입문서는 아니다. 애플리케이션을 개발하여 컨테이너를 다루며 Docker Image를 만들어본 경험이 있고 Deployment, 레플리카, ConfigMap 등의 쿠버네티스 관련 용어가 무엇을 의미하는지 전부는 아니더라도 알고 있는 개발자, 하지만 이들을 어떻게 조합하여 인프라 구성을 해야 한 발자국 더 전진할 수 있을지 고민이 되는 분들께 추천하고 싶은 도서. 'ㅅ')/
 
Docker Container 관련 사용법을 익히고, Docker Hub에 Image를 올리고, Docker Compose를 사용하다가, CI 서비스들도 건드려보다가, 쿠버네티스를 구성하는 기본적인 개념들(Node, Pod, Service, Object, ConfigMap, Secret, Volume, Ingress ... 참 많기도 하지)을 적당히 익히는... 위와 비슷한 흐름을 겪어 오면서 아놔 더럽게 배울 것이 많구나. 이거 다 사용하기는 하는거임? 하고 의문을 가지시는 분들이 이 도서를 읽으시면서 무릎을 탁 치면서, 아 나의 고생은 이제 시작이로구나 하는 기쁨 + 슬픔, 인생이 이렇게 단짠단짠의 연속이구나를 느끼게 해줄 수 있는 그러한 도서임. 인프라 구축과 관리에 흥미가 있으신 모든 분들께, 얼른 읽어보시라고 권해드리고 싶음.
 
읽다 보면, 인프라 엔지니어, DevOps 엔지니어가 높은 연봉을 받는 이유가 있구나 하는 생각이 머리 속을 지나간다는... 방대한 지식은 흥미가 있는 부분부터 조금씩 채우면 되는겁니다. 인생은 생각보다 길어요.
 
힘을 냅시다. 'ㅅ')/
 
.
 
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

이번 달 리뷰할 책은 쿠버네티스 실 사례에 대해서 작성된 번역서 "Kubernetes Best Practices_쿠버네티스 모범 사례" 입니다.

클라우드가 대세이고 클라우드를 사용하기 위한 환경에서는 요즘에는 기본적으로 사용하고 있는 오픈소스입니다. 기본적으로 해당 오픈소스는 클라우드의 대규모 서비스를 운영하는 데 있어서 물리 자원을 가상화하여 효율적으로 사용하기 위한 오픈소스 중에 하나로 요즘에는 대기업, 스타트업 가릴 것 없이 많이 사용하고 있는 툴입니다.

이번 책의 대상은 쿠버 네티스에 어느 정도 익숙한 초중급자 이상을 대상으로 작성된 책이며, 전혀 기본이 없는 상태에서는 이해하기 어려운 책입니다. 그래서 저자는 책의 앞장에 소개하기를

"쿠버 네티스에 애플리케이션을 배포하거나 쿠버네티스 기반 애플리케이션에 적용할 수 있는 패턴과 사례를 배우려는 실무자를 대상"으로 한다고 안내하고 있습니다.

그래서 쿠버네티스에 익숙하지 않은 사용자는 "쿠버네티스 시작하기 2/e"를 참고하라고 안내하고 있습니다.

책의 구성은 전체적으로 모든 장을 읽지 않고 독자가 필요한 곳을 찾아서 읽어서 무리가 없는 구성으로 되어 있습니다. 하지만 책의 각 장표마다 다루는 내용이 있어서 다음과 같이 가이드하고 있습니다.

 

쿠버네티스에서 애플리케이션을 개발하는 것에 대한 설명

  •  2장 개발자 워크플로
  • 5장 지속적 통합, 테스트, 배포
  • 15장 고수준 애플리케이션 패턴 구축
  • 16장 상태와 스테이풀 애플리케이션 관리
  •  

쿠버네티스 서비스 운영

  • 1장 기본 서비스 설치
  • 3장 모니터링과 로깅
  • 4장 설정, 시크릿, RBAC
  • 6장 버전, 릴리스, 롤아웃
  • 7장 글로벌 애플리케이션 분산과 스테이지
  •  

클러스터 관리

  • 8장 리소스 관리
  • 9장 네트워크, 네트워크 보안, 서비스 메시
  • 10장 파드와 컨테이너 보안
  • 11장 클러스터 정책과 거버넌스
  • 12장 다중 클러스터 관리
  • 17장 어드미션 컨트롤과 권한
  •  

독립

  • 13장 외부 서비스와 쿠버네티스 통합
  • 14장 쿠버네티스에서 머신러닝 실행하기
  •  

위 설명과 같이 꼭 차례대로 읽지 않는다고 하더라도 독자가 원하는 장표를 읽고 숙지를 하면 되는 구조로 되어 있습니다.

각 장은 실습에 대해서 설명하고 해당 실습에 대한 모범 사례 그리고 해당 장에서 저자가 독자에게 알리고자 했던 내용에 대해서 마무리해주고 있습니다.

해당 서적은 서두에 설명한 것과 같이 처음 쿠버네티스에 접근하는 독자에게는 어울리지는 않지만 어느 정도 쿠버네티스에 익숙하고 사례별로 진행하는 방법에 대해서 알고자 하는 사람에게는 괜찮은 책이라고 할 수 있습니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

입문서가 아님을 이렇게 박력있게 드러내는 기술서는 처음 보았습니다.

 

 

다짜고짜 '이미 설치해 둔' 쿠버네티스에 응용프로그램을 설치한다며 시작합니다.

 

"쿠버네티스부터 설치하는 게 아닌가?" 같은 의구심이 드는 자는 이 책을 펼칠 자격이 없습니다. 반면 입문을 벗어나려는 독자에게는 눈에 쏙 들어오는 주제로 목차가 꽉 찼습니다. DevOps를 감안한 개발자 워크플로와 파이프라인 구축, 카나리 리전과 글로벌 롤아웃, 리소스 관리와 클러스터링, 모니터링/로깅, 보안/권한 등 구글 검색으로 찾아 보기에는 품이 많이 듭니다. 이 책으로 시행착오를 상당히 줄일 겁니다.

 

제가 감동 받은 14장 '쿠버네티스에서 머신러닝 실행하기'가 이 책의 특성과 취지를 잘 알려 줍니다.

 

chapter 14 쿠버네티스에서 머신러닝 실행하기

14.1 머신러닝에서 쿠버네티스의 장점

14.2 머신러닝 워크플로

14.3 쿠버네티스 클러스터 관리자를 위한 머신러닝

14.4 데이터 과학자 관심사

14.5 쿠버네티스에서의 머신러닝 모범 사례

14.6 마치며

 

쿠버네티스로 서비스를 운용하는 강점과 절차 전반에 대해 설명하고 구성에 대해 하나 하나 짚어 나가다가 최선의 효과를 뽑아낸 사례를 다룹니다. 아쉽게도 그대로 따라 할 수 있지는 못합니다. 쿠버네티스를 비롯한 유명한 오픈소스는 버전업이 빠른 편이므로 코드를 일일이 언급하지는 못했다고 봅니다. 대신 취지를 충분히 설명하여 독자가 해당 구성요소를 찾아 쓸 수 있게 안내합니다.

 

이 책이 가진 한계라 하면 한계이겠지만 바이블 수준으로 썼다가는 바이블 몇 권치는 나와야 합니다. 이 책이 보이는 미덕이 미덕으로 남으려면 분량은 이 정도가 적당하겠다 싶습니다.

 

달리 아쉬운 점이 있다면 학생 독자는 실습하기가 어렵겠다는 현실입니다. 메모리가 32GB 정도 되는 컴퓨터라면 그럭저럭 구성해 볼 만할 텐데 그 이하라면 좀 답답하겠다 싶습니다. 아무래도 VM을 여러 개 만들어야 하기 때문입니다. 라즈베리파이를 몇 개 살 만하다면 K3s를 섞어 쓰는 것도 방법이겠습니다.

이 책은 쿠버네티스 자체에 대해 이해를 하고 있는 사람들이 여러가지 필요한 구조들을 적용하기 위해서 읽어야 할 책이라고 생각한다. 

쿠버네티스의 활용 사례 중 모범 사례, Best Practices 우리는 항상 베스트 프랙티스에 열광하게 된다.

그래서 모범 사례는 항상 업무에 바로 활용되고 투영하게 되는 좋은 쏘스라는 것이다.

쿠버네티스가 어느정도 입에 붙었다는 것은 클라우드기반에 서비스 하는 사람들이나 관심을 가진 이들에게는 익숙한 단어인 것이다.

하지만, 이 책은 분명 기초서적, 쿠버네티스가 어떤 책인지를 말하는 책은 아니다.

그런 기반 지식이 없다면, 다른 책으로 사전에 익히고 오는 것이 훨씬 더 유익할 것이다.

실제 현업에서 활용하고 있는 사람들에게 더 적합한 책이다, 그래서 모범 사례라는 표현이 제격인 것이다.

 

2020-12-19-20-16-50-626.jpg

 

첫 표지

20201219_203020.jpg

 

뒷면에는 책의 구성을 이야기 한다.

2020-12-19-15-22-28-436.jpg

 

 

그리고 모범사례에 걸맞는 소스코드도 있다는 것이다.

 

2020-12-19-20-17-39-205.jpg

 

목차는 18장으로 구성되어 있어서, 관심있는 부문으로 시작해도 되는 것 같다.

모니터링과 로깅과 지속적 통합, 테스트, 배포 장을 주요항목으로 선택한 것은 실제 서비스 운영이라는 업무 연관성이다.

거기에 네트워크까지가 딱 필요한 항목이다.

 

20201219_203106.jpg

 

20201219_203155.jpg

 

모니터링, 프로메테우스 아키텍처

 

2020-12-19-20-21-10-214.jpg

 

모니터링 기술, 블랙박스와 화이트박스, 인프라와 애플리케이션을 그렇게 구분한 것이다. 그리고 이제는 별건으로 보지 않는 것이다.

DevOps조직의 태생은 적은 리소스로 개발과 운영 다 가용하다는 것이다. 콘트롤이 가능하다는 것이다. 여쩌면 이상적인 그림이라 DevOps로 전환했다가 분리했다가 다시 DevOps로 갔다가 본인들의 업무에 맞는 업무 재정의들이 빈번하게 일어나는 것도 사실이다.

하지만, 중요한 것은 통합되어서 누군가의 도움없이 쉽게 확인이 가능하다는 것이다.

 

2020-12-19-20-20-47-817.jpg

 로깅 모범 사례

20201219_203427.jpg

모범 사례를 통해서, 꼭 쿠버네티스가 아닌 업무적으로 고려해볼만 것을 정리해봅니다.

 

모니터링 모버 사례

-노드와 쿠버네티스의 모든 컴포넌트에 대한 사용률, 포화도, 오류율을 모니터링합니다. 그리고 애플리케이션의 속도, 오류, 시간도 모니터링합니다.

-시스템의 예측하기 힘든 상태와 징후를 모니터링할 때는 블랙박스 모니터링을 사용합니다.

-시스템과 내부를 조사할 때는 화이트박스 모니터링을 사용합니다.

-정확도가 높은 매트릭을 얻으려면 시계열 깁나의 메트릭을 구현합니다. 애플리케이션 동작에 대한 통창을 얻을 수 있습니다.

-프로메테우스와 같은 모니터링 시스템을 활용합니다. 고차원을 위한 키 레이블을 제공하고 문제의 징후에 대한 더 나은 신호를 제공합니다.

-평균 메트릭을 사용하여 실제 데이터 기반의 하위 합계와 매트릭을 시각화합니다. 합꼐 매트릭을 이용하여 특정 메트릭의 분포를 시각화합니다.

 

로깅 모범 사례

-전반적인 분석을 위해서는 메트릭 모니터링과 함께 로깅해야 합니다.

-30일에서 45일까지만 로그를 저장하세요. 만약 그 이상의 로그가 필요하다면 장기간 보관할 수 있는 저비용 리소스를 사용하세요.

-사이드카 패턴에서 로그 전달자를 제한적으로 사용하세요. 너무 많은 리소스를 사요할 겹니다. 데몬셋을 사요하세요.

 

알림 모범 사례

-알림 피로를 조심하세요. 사람과 프로세스에 악영향을 끼칠 수 있습니다.

-절대로 완벽해 질 수 없다는 생각을 가지고 점진적으로 개선하세요.

-즉가적인 대응이 필요 없는 일시적인 문제는 알림하지 않고 SLO와 고객에게 영향을 미치는 징후를 알림하세요.

20201219_203337.jpg

로드밸런서, 노드포트로 서비스 내보내기

2020-12-19-20-25-34-251.jpg

 

네트워크

20201219_203459.jpg

2020-12-19-20-24-16-765.jpg

 

2020-12-19-20-26-16-578.jpg

2020-12-19-20-24-05-026.jpg

 

추가적으로 머신러닝도 언급이 되는데 최근에는 머신러닝은 기본이라는 것이다.

2020-12-19-20-25-59-678.jpg

한빛미디어에 책처럼 볼수 있는 미리보기 입니다.

https://preview2.hanbit.co.kr/books/qkls/#p=1

쿠버2.PNG

 

결론

저자가 쿠베네티스의 창시자라서 그런지, 자부심과 애착이 보입니다. 그래서 결론이라는 18장이 더 눈에 들어오기도 합니다.

 

쿠버네티스의 강점은 모듈화와 일반화입니다. 쿠버네티스에는 거의 모든 애플리케이션을 배포 할 수 있으며 시스템에 필요하다면 어떠한 변경이나 튜닝도 할 수 있습니다.

쿠버네티스의 강력한 기능을 완벽하게 활용한다면 애플리케이션 개발, 관리, 배포를 보다 쉽고 안정적으로 수행할 수 있습니다.

 

이 책을 통해 우리는 쿠버네티스를 처음 접하는 사람이든 숙련된 관리자든 상관없이, 접하게 될 특정한 주제에 대해 구체적인 현업에서의 경험을 제공하려 노력했습니다. 새로운 분야의 전문가가 되려는 사람도, 혹은 이미 해결된 문제를 새롭게 풀려는 사람도, 모든 사람이 이 책을 통해 우리의 경험을 배웠기를 희망합니다. 또한 이 학습을 통해 쿠버네티스를 완벽히 활용할 수 있는 기술과 자신감을 얻기를 바랍니다. 감사합니다. 그리고 현실 세계에서 여러분을 만나게 되기를 고대합니다! 

2020-12-19-20-27-23-299.jpg

 

실제로 쿠버네티스를 직접 운영하는 사람들에게 더 적합할 수도 있지만, 도입준비나 스스로 가볍게 운영해보려고 하는 사람들에게 조금 더 심층적은 아이디어와 기본 골격을 제공하는 책이기도 합니다. 이 책을 통해 어쩌면 기초르 다시 돌아가서 기본부터 다시 시작하게끔 만드는 책일 수도 있습니다. Best Practices는 다수의 누구보다는 몇 몇에게는 꼭 필요한 처방전 같은 것이라고 봅니다.

쿠버네티스 모범 사례로 간지러운 부문이 해결되는 사람이 분명 있을 거라고 봅니다. 저는 무턱대고 도전해보았지만, 다시 기초와 기본으로 돌아가려고 합니다. 

 


이 책은 Kubernetes 에 대한 이론적인 내용을 담고 있으면서 각각의 Best Practice 에 대한 내용들을 담고 있다. 

실습을 하면서 읽어볼 수도 있고 그런 여건이 되지 않는다면 참고 서적처럼 읽는 방법도 괜찮아 보인다. 나같은 경우는 내용을 따라 해보면서 완독을 했다.

 

책을 읽으면서 몇가지 좋았던 점과 아쉬웠던 점을 말하고자 한다.

우선 좋았던 점은 책 제목에서 처럼 여러가지 사례들이 많이 담겨 있다는 것이다. Kubernetes 에 대한 이론을 설명해주면서 어떻게 활용하는 것이 좋은 방법인지 알려준다. Kubernetes 를 공부하다 보면 노드에 파드를 생성하고 서비스가 잘 동작하는걸 확인해 보는건 그나마 쉽다. 하지만 그걸 운영에 가져갔을때 어떻게 사용을 해야 올바른 방법인지는 찾기가 좀처럼 쉽지 않다. 그런 것에 대한 시작점을 제시해주는 주는게 이 책의 핵심이라고 할수 있다.

 

반면에 몇가지 아쉬웠던 부분이 있었다.

우선 실습을 병행해 봤지만 실습 하기가 쉽지 않았다. github 에 있는 소스를 가지고 실제 반영을 해보면 버전상으로 맞지 않는것이 있어서 수정이 필요 했다.  결국 책에 나온 내용들만 가지고는 실습에 옮기기에는 무리가 있었다. 

그리고 번역이 매끄럽지 않다는 느낌을 많이 받았다. 문장이라든지 아니면 단어의 선택들이 고개를 갸웃거리게 만든적이 많았다. 

 

기본 적인 내용이 포함되어 있긴 하지만 사례에 대한 것이 주가 되는 책이기 때문에 처음 Kubernetes 를 접하는 분들은 다른 책을 먼저 공부하고 보길 권한다. 


7500.jpg

 

이 책은 쿠버네티스 창시자인 브렌던 번스와 오픈 소스 클라우드, 쿠버네티스의 전문가들인 에디 비얄바, 데이브 스트레벨, 라클런 이븐슨이 함께 쓴 쿠버네티스 모범 사례라는 책이다. 구글의 쿠버네티스는 2014년에 오픈소스화 되면서 빠르게 생태계를 키워나가고 있고, 대규모 서비스를 운영해본 경험이 많지 않은 사람도 쿠버네티스를 사용하면 빠르게 구글의 노하우를 터특할 수 있다고 한다.

이 책은 쿠버네티스가 익숙하지 않은 쿠버네티스의 기초적인 지식만 가진 초보 실무자나 경험이 많은 프로 실무자를 대상으로 한다. 쿠버네티스의 창시자인 브렌던 번스와 3명의 저자가 쿠버네티스를 이용하는 다양한 실무자를 도우며 경험한 내용을 담고 있는 이 책은 쿠버네티스에 대한 소개가 아닌 트정 어플리케이션과 워크로드를 쿠버네티스에 배포하는 방법에 대해 깊게 살펴보고 있다.

 

7501.jpg

이 책은 각 장이 독립적인 형태로 이루어져 있어, 처음부터 읽지 않고 필요한 주제를 선택해서 읽어도 무방하다. 책 전반에 걸쳐 다루는 주제가 있는데, 애플리케이션 개발은 2장, 5장, 15장, 16장에서 다루고 있다. 그리고 쿠버네티스 서비스에 대한 설명은 1장, 3장, 4장, 6장, 7장에서 다루고 있다. 클러스터에 대한 관리는 8장부터 12장, 17장에 걸쳐 설명하고 있고, 그 외 13장 외부 서비스 통합, 14장 머신 러닝도 다루고 있다.

 

7502.jpg

이 책에서 사용한 예제나 연습문제 등의 자료는 저자 브렌던 번스의 github에서 다운로드 받을 수 있는데, 책의 특성상 모범 사례를 설명하기 위한 코드가 있지만 모든 코드가 담겨 있지 않아 참고용으로만 사용하면 좋을 것 같다.

 

https://github.com/brendanburns/kbp-sample

 

각 장에서 설명하는 쿠버네티스의 특정 작업에 대한 개요를 살펴보면서 바로 모범 사례를 확인할 수 있으므로, 현업에서 쿠버네티스를 적용하고 있다면 큰 도움이 될 것이다.

 

출판사로부터 도서를 제공받아 작성한 리뷰입니다

 

​#쿠버네티스모범사례 #쿠버네티스 #클라우드네이티브 #브렌던번스 #한빛미디어

`



[한줄평]

쿠버네티스 최신 패턴과 실무 경험 사례를 배울수 있다.


[목차구성]

chapter 1 기본 서비스 설치

chapter 2 개발자 워크플로

chapter 3 모니터링과 로깅

chapter 4 설정, 시크릿, RBAC

chapter 5 지속적 통합, 테스트, 배포

chapter 6 버전, 릴리스, 롤아웃

chapter 7 글로벌 애플리케이션 분산과 스테이지

chapter 8 리소스 관리

chapter 9 네트워킹, 네트워크 보안, 서비스 메시

chapter 10 파드와 컨테이너 보안

chapter 11 클러스터 정책과 거버넌스

chapter 12 다중 클러스터 관리

chapter 13 외부 서비스와 쿠버네티스 통합

chapter 14 쿠버네티스에서 머신러닝 실행하기

chapter 15 고수준 애플리케이션 패턴 구축

chapter 16 상태와 스테이트풀 애플리케이션 관리

chapter 17 어드미션 컨트롤과 권한

chapter 18 결론



[이 책의 특징]

- 쿠버네티스에서 애플리케이션 구축 및 개발하기

- 시스템 모니터링 및 보안, 업그레이드, 롤아웃, 롤백 관리 유형 학습하기

- 쿠버네티스 네트워킹 정책과 서비스 메시 적용 이해하기

- 쿠버네티스에서 머신러닝 실행하기

-  쿠버네티스에서 고수준 애플리케이션 패턴 구축하기


[대상 독자]

- 쿠버네티스 기반 앱에 적용할 수 있는 패턴과 사례를 배우려는 실무자

- 쿠버네티스에 앱을 배포 사려는 DevOps 또는 개발자


[서평]

도커 컨테이너 플랫폼이 나오면서 개발 생태계가 빠르게 변화고 있다 그변화 중에서 DevOps 분야가 가장 핫하게 변화가 있었다. 예전에는 운영과 배포 하는데 많은 시간이 들었다. 하지만 도커와 쿠버네티스가 나오면서 대규모 서비스를 시간과 비용을 줄일수 있었다. 


이책을 학습하는 방법은 쿠버네티스에 대해서 입문 수준이라면 첫장 부터 전체적으로 읽는 것이 좋다. 하지만 쿠버네티스에 대해서 어느정도 실무 경험이 있다면 자신이 필요한 챕터 위주로 보고나 특정 주제를 배우고 싶거나 관심사가 생겼을때 그때 그때 찾아서 읽으면 되겠다.


주제별로 책을 학습 하고 싶다면 이런 방식으로 읽으면 되겠다. 


쿠버네티스 서비스 운영

1장 기본서비스 설정

3장 모니터링과 메트릭

4장 설정 관리

6장 버전과 릴리스

7장 애플리케이션을 배포 하는 방법

쿠버네티스 애플리케이션 개발

2장 개발자 워크플로

5장 지속적 통합과 테스팅에 대해 설명

15장 고수준 플랫폼 구축

16장 상태와 스테이트풀 애플리케이션 관리를 설명

클러스터 관리

8장 리소스 관리

9장 네트워킹

10장 파드 보안

11장 정책과 거버넌스

12장 다중 클러스터 관리

17장 어드미션 컨트롤

이책은 쿠버네티스를 이용하는 실무자들의 경험의 노하우들이 녹여져 있다. 쿠버네티스 처음 입문하는 실무자라면 이책을 통해서 쿠버네티스에 필요한 많은 패턴과 경험을 배울수 있을것이다.



 

 

 

이 책은 쿠버네티스 창시자가 쿠버네티스 운영 초보자 뿐만 아니라 실무에서 쿠버네티스를 운영하고 있는 실무자에게 직접 쿠버네티스를 운영하면서 경험해본 운영 노하우를 구체적인 모범사례와 함께 예를 들어 설명해주므로 매우 실용적인 서적이라고 할 수 있다

기존에 쿠버네티스 이론 위주로 설명해주는 책들에 비해 얇지만 직접 적인 사례들과 핵심적인 내용들로 꽉꽉 채워져 있으므로 쿠버네티스를 알고 있고 운영하고 있다면 한권쯤 옆에두고 참고하기를 강력히 권장한다

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
쿠버네티스 모범 사례
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
쿠버네티스 모범 사례
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
쿠버네티스 모범 사례
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실