데브옵스를 지탱하는 클라우드 네이티브 입문 (쿠버네티스와 프로메테우스를 이용한 마이크로서비스 환경 구축과 배포 | 모니터링 가이드)
Description
마이크로서비스 구성을 전제로 컨테이너와 쿠버네티스, 클라우드 네이티브 응용 프로그램 구축 생태계의 한 축을 담당하고 있는 기술들의 활용 방법을 다룬다. 도커 사용법부터 쿠버네티스 클러스터 생성, 응용 프로그램 배포, 확장, 스토리지 관리, 모니터링에 이르기까지 쿠버네티스와 프로메테우스 환경을 각각의 시나리오를 보고 따라 할 수 있도록 안내한다.
저자

오누르일마즈,술레이만아크바스

(OnurYılmaz)
다국적엔터프라이즈소프트웨어기업의선임소프트웨어엔지니어다.CKA(CertifiedKubernetesAdministrator)인증보유자로,사내에서는쿠버네티스및클라우드관리시스템을담당하고있다.또한도커,쿠버네티스,클라우드네이티브애플리케이션을비롯한최신기술에깊은관심이있다.공학석사학위와2개분야의공학학사학위를소지하고있으며,현재박사학위과정중에있다.

목차

1장.데브옵스소개
__소개
____소프트웨어분야에데브옵스가끼치는영향
____데브옵스문화와그이점
__데브옵스툴체인
____계획단계
____실습1:깃허브에서저장소와프로젝트보드만들기
____생성단계
____실습2:데브옵스블로그만들기
____검증단계
____실습3:CI/CD시스템에데브옵스블로그연결하기
____패키지생성단계
____릴리스단계
____실습4:데브옵스블로그릴리스하기
____구성단계
____모니터링단계
____활동1:데브옵스블로그용CI/CD파이프라인
__요약
2장.마이크로서비스와컨테이너소개
__소개
__도커소개
____도커의기본개념
____실습5:도커‘HelloWorld’컨테이너만들기
__도커이미지빌드하기
____Dockerfile
____도커레지스트리
____실습6:도커이미지빌드하기및이를도커허브로푸시하기
__도커컨테이너실행하기
____실습7:볼륨매핑및포트공유기능을사용한도커컨테이너실행하기
____활동2:도커를사용해워드프레스블로그와데이터베이스설치하기
__요약
3장.쿠버네티스소개
__소개
____쿠버네티스란무엇인가?
__쿠버네티스아키텍처
____마스터컴포넌트
____노드컴포넌트
____실습8:로컬쿠버네티스클러스터설치및실행하기
__쿠버네티스클러스터액세스하기
____실습9:쿠버네티스대시보드에서애플리케이션의상태확인하기
____실습10:kubectl을사용해클러스터관리수행하기
__쿠버네티스기본리소스
____파드
____레플리카셋
____디플로이먼트
____스테이트풀셋
____활동3:쿠버네티스에워드프레스블로그및데이터베이스설치하기
__요약
4장.쿠버네티스클러스터만들기
__소개
__수동으로쿠버네티스클러스터설정하기
____실습11:kubeadm을사용해쿠버네티스클러스터만들기
__쿠버네티스클러스터의고려사항
____개발단계,혹은서비스운영단계에따른설정
____사내혹은관리형서비스선택
____온프레미스혹은클라우드인프라
____바닐라쿠버네티스혹은커스텀솔루션
__쿠버네티스플랫폼옵션
____로컬머신솔루션
____호스팅솔루션
____턴키솔루션
____헵티오
____코어OS테크토닉
____레드햇오픈시프트
____실습12:GCP에서관리형클러스터만들기
____활동4:쿠버네티스클러스터에서실행중인애플리케이션을마이그레이션하기
__요약
5장.쿠버네티스에애플리케이션배포하기
__소개
__쿠버네티스의객체관리
____명령형커맨드
____명령형구성
____선언적구성
____실습13:kubectl을사용해애플리케이션배포하기
__쿠버네티스의서비스디스커버리
____실습14:서비스를사용해애플리케이션에액세스하기
__쿠버네티스패키지매니저:헬름
____실습15:쿠버네티스클러스터에헬름설치하기
____활동5:헬름을사용해쿠버네티스에서워드프레스블로그설치및확장하기
__요약
6장.쿠버네티스로구성및스토리지관리하기
__구성관리
____인프라구성
____런타임구성
__쿠버네티스의구성관리
____컨피그맵만들기
____컨피그맵업데이트하기
____파드에서컨피그맵사용하기
____실습16:문자열과파일로부터컨피그맵만들기
__시크릿관리
__시크릿관리의모범사례
____시크릿식별하기
____소스코드에서시크릿분리하기
____시크릿로테이션
____최소권한원칙
____애플리케이션로그에대한시크릿출력방지하기
____유휴시암호화
____쿠버네티스에서시크릿관리하기
____시크릿생성하기
____시크릿업데이트하기
____파드에서시크릿사용하기
____실습17:시크릿생성및업데이트
____활동6:즉석에서구성업데이트하기
__스토리지관리
__쿠버네티스의스토리지관리
____볼륨
____emptyDir
____gcePersistentDisk
____glusterfs
____실습18:emptyDir볼륨을사용해컨테이너간에콘텐츠공유하기
____영구볼륨(PV)
____영구볼륨클레임(PVC)
____액세스모드
____스토리지클래스
____활동7:쿠버네티스에서영구데이터베이스실행하기
__요약
7장.쿠버네티스에서애플리케이션업데이트및확장하기
__애플리케이션업데이트하기
____블루그린배포
____롤링업데이트
____카나리아릴리스
____다크런치와피처토글
____소프트웨어업데이트와소프트웨어업그레이드
__쿠버네티스에서애플리케이션업데이트하기
____스테이트풀셋업데이트전략
____OnDelete
____RollingUpdate
____디플로이먼트업데이트전략
____Recreate
____RollingUpdate
____쿠버네티스에서블루그린배포수행하기
____쿠버네티스에서롤링업데이트수행하기
____maxSurge
____maxUnavailable
____롤링업데이트를사용해디플로이먼트업데이트하기
____헬름을사용해애플리케이션업데이트하기
____실습19:롤링업데이트를사용해쿠버네티스에서디플로이먼트업데이트하기
____애플리케이션확장하기
____수평확장과수직확장
____오토스케일링
____강력한일관성과최종일관성
__쿠버네티스에서애플리케이션확장하기
____실습20:쿠버네티스에서디플로이먼트확장및축소하기
____HPA
____활동8:오토스케일링활성화및롤링업데이트수행하기
__요약
8장.쿠버네티스에서애플리케이션트러블슈팅하기
__소개
__트러블슈팅
____문제식별하기
____테스트개선하기
____문서화
____도구소개
____로깅
____로그수준
__쿠버네티스에서애플리케이션트러블슈팅하기
____파드의수명주기
____파드의상태
____파드컨디션
____컨디션유형
____파드단계
____재시작정책
____컨테이너상태
____자동복구
____상태점검
____활성프로브
____준비성프로브
____실습21:쿠버네티스에서활성및준비성프로브사용하기
____종료로그생성하기
____트러블슈팅을위한편리한커맨드들
____그외의편리한커맨드들
____변경과적용을위한커맨드
____흔히겪을수있는문제에대한제안
____리소스부족
____ImagePull실패
____실습22:쿠버네티스에서파드오류수정하기
____커뮤니티에문의하기
____활동9:쿠버네티스에서애플리케이션트러블슈팅하기
__요약
9장.쿠버네티스에서애플리케이션모니터링하기
__모니터링
____인프라모니터링
____애플리케이션성능모니터링
____경고알림
____도구
__쿠버네티스에서애플리케이션모니터링하기
____프로메테우스
____알림매니저
____그라파나
____그라파나에서대시보드생성하기
____실습23:프로메테우스와그라파나설치하기
__사용자정의메트릭
____실습24:프로메테우스에서사용자지정메트릭노출하기
__쿠버네티스에서공개된메트릭
____슬랙
____웹훅수신기능
____실습25:슬랙에가입하고워크스페이스만들기
____활동10:쿠버네티스에서경고알림설정하기
__요약
부록

출판사 서평

◈이책에서다루는내용◈

◆온프레미스시스템과클라우드에서쿠버네티스클러스터생성및관리
◆쿠버네티스로다양한데브옵스실습수행
◆구성과시크릿,스토리지관리기능을알아보고쿠버네티스에서실습수행
◆다양한업데이트기술을쿠버네티스에적용
◆쿠버네티스의내장스케일링기능으로애플리케이션확장및축소
◆쿠버네티스에서다양한트러블슈팅기술사용및모니터링시스템설치

◈이책의대상독자◈

데브옵스에대한확실한이해와함께쿠버네티스로데브옵스사례를적용하는방법을알고자하는독자에게적합하다.데브옵스나쿠버네티스경험이없는사람,혹은경험많은데브옵스엔지니어가쿠버네티스를데브옵스실무에활용할수있도록시야를넓히는데유용하다.

◈이책의구성◈

1장,‘데브옵스소개’에서는데브옵스를소개한다.데브옵스가무엇인지와데브옵스를둘러싼개념을간략하게알아본다.
2장,‘마이크로서비스와컨테이너소개’에서는마이크로서비스와컨테이너화를소개한다.
3장,‘쿠버네티스소개’에서는쿠버네티스를소개한다.쿠버네티스의역사와아키텍처그리고앞으로여러장에걸쳐등장할쿠버네티스의주요개념을다룬다.
4장,‘쿠버네티스클러스터만들기’에서는첫쿠버네티스클러스터를만들고,쿠버네티스의플랫폼옵션을살펴본다.
5장,‘쿠버네티스에애플리케이션배포하기’에서는쿠버네티스의객체관리를살펴보고,객체관리기능으로쿠버네티스에워드프레스블로그를배포한다.
6장,‘쿠버네티스로구성및스토리지관리하기’에서는쿠버네티스의구성과스토리지관리방법을학습한다.
7장,‘쿠버네티스에서애플리케이션업데이트및확장하기’에서는쿠버네티스에서애플리케이션을업데이트하고확장하는방법을살펴본다.
8장,‘쿠버네티스에서애플리케이션트러블슈팅하기’에서는쿠버네티스에서동작하는애플리케이션에문제가생겼을때트러블슈팅하는방법을설명한다.
9장,‘쿠버네티스에서애플리케이션모니터링하기’에서는쿠버네티스에서가장일반적으로사용되는도구를활용해인프라및애플리케이션을모니터링하는다양한기술을소개한다.
부록은독자가책에수록된활동을수행하도록돕기위한내용으로구성됐다.또한책에서의도한목표를달성하는데필요한상세한내용을담고있다.