개발자를 위한 쉬운 쿠버네티스 (신뢰성 있고 확장 가능한 소프트웨어 구축을 위한 쿠버네티스 실무 가이드)

개발자를 위한 쉬운 쿠버네티스 (신뢰성 있고 확장 가능한 소프트웨어 구축을 위한 쿠버네티스 실무 가이드)

$30.83
Description
쿠버네티스로 전환하기가 얼마나 쉬운지 알려주는 명쾌하고 실용적인 초보자 가이드!
현대 소프트웨어는 확장성뿐만 아니라 부하 분산, 상태, 보안 등 다양한 문제를 효과적으로 처리해야 한다. 쿠버네티스는 이러한 과제를 더 쉽고 안정적으로 해결할 수 있게 지원하며, 애플리케이션의 규모와 상관없이 적용 가능하다. 이 책은 쿠버네티스 환경에서 애플리케이션을 개발하는 소프트웨어 개발자를 위해 핵심적인 과제와 주요 문제를 명확히 다루고 해결 방법을 알려준다.

《개발자를 위한 쉬운 쿠버네티스》는 중소 규모의 애플리케이션도 쿠버네티스에 손쉽게 배포할 수 있는 실용적이고 부담 없는 접근법을 제시한다. 기존 애플리케이션을 처음부터 다시 구축하지 않고도 쿠버네티스로 마이그레이션하는 방법을 소개하며, 향후 확장성을 염두에 둔 최신 클라우드 네이티브 아키텍처의 구현 방법을 익힐 수 있게 도와준다.

또한, Google Kubernetes Engine(GKE)의 강력한 자동화 도구를 활용하면 자동 점검과 확장이 가능해져 더 많은 시간을 애플리케이션 개발에 집중할 수 있다. 독자는 막대한 비용이나 대기업 수준의 인력 없이도 쿠버네티스를 통해 생산성을 크게 향상시킬 수 있다는 사실을 직접 경험하게 될 것이다.
저자

윌리엄데니스

윌리엄데니스는GoogleKubernetesEngine(GKE)제품관리자로,상호운용성과개발자경험에깊은관심을가지고있으며CNCF쿠버네티스적합성(Conformance)워킹그룹에참여하고있다.그는KubeConNorthAmerica및Europe,DockerCon,GoogleCloudNext(샌프란시스코,런던,도쿄)등주요콘퍼런스에서쿠버네티스와관련된다수의발표를진행했다.또한RFC8252,RFC8417,RFC8628의저자이며대표적인오픈소스OAuth클라이언트인AppAuth를설립했다.

목차

[1부]쿠버네티스시작하기

▣1장:애플리케이션배포를위한쿠버네티스
1.1왜컨테이너인가?
__1.1.1컨테이너의이점
1.2왜쿠버네티스인가?
__1.2.1구성가능한빌딩블록
__1.2.2특징및이점
__1.2.3쿠버네티스vsPaaS(PlatformasaService)
__1.2.4쿠버네티스를사용해야할때와그렇지않을때
요약

▣2장:애플리케이션컨테이너화
2.1도커컨테이너빌드하기
__2.1.1개발환경설정
__2.1.2도커에서명령실행하기
__2.1.3자신만의이미지빌드하기
__2.1.4베이스이미지사용하기
__2.1.5기본명령추가하기
__2.1.6디펜던시추가하기
__2.1.7도커내부에서코드컴파일하기
__2.1.8다단계빌드로코드컴파일하기
2.2서버애플리케이션컨테이너화하기
__2.2.1애플리케이션서버컨테이너화하기
__2.2.2디버깅
2.3테스트를위해로컬환경에도커컴포즈사용하기
__2.3.1디렉터리를로컬에매핑하기
__2.3.2서비스디펜던시추가하기
__2.3.3외부디펜던시속이기
요약

▣3장:쿠버네티스에배포하기
3.1쿠버네티스아키텍처
__3.1.1쿠버네티스클러스터
__3.1.2쿠버네티스객체
3.2애플리케이션배포하기
__3.2.1클러스터생성하기
__3.2.2컨테이너업로드하기
__3.2.3쿠버네티스에배포하기
__3.2.4파드스펙
__3.2.5서비스게시하기
__3.2.6디플로이먼트와상호작용하기
__3.2.7애플리케이션업데이트하기
__3.2.8정리하기
3.3명령형커맨드
3.4로컬쿠버네티스환경
__3.4.1도커데스크톱의쿠버네티스클러스터
__3.4.2미니큐브
__3.4.3로컬쿠버네티스클러스터사용하기
요약

▣4장:운영자동화
4.1상태검사를사용해업타임자동으로감지하기
__4.1.1활성및준비성프로브
__4.1.2준비성프로브추가하기
__4.1.3활성프로브추가하기
__4.1.4올바른상태확인설계하기
__4.1.5준비되지않은컨테이너재스케줄링
__4.1.6프로브유형
4.2라이브애플리케이션업데이트하기
__4.2.1롤링업데이트전략
__4.2.2재생성전략
__4.2.3블루/그린전략
__4.2.4롤아웃전략선택하기
요약

▣5장:리소스관리
5.1파드스케줄링
__5.1.1파드리소스명시하기
__5.1.2서비스의품질
__5.1.3축출,우선순위,선점
5.2파드리소스계산하기
__5.2.1메모리요청및제한구성하기
__5.2.2CPU요청및제한구성하기
__5.2.3CPU오버커밋을통해비용절감하기
__5.2.4파드의복제본과내부파드동시성균형맞추기
요약

[2부]운영환경으로의전환

▣6장:스케일링업
6.1파드및노드확장하기
6.2수평적파드오토스케일링
__6.2.1외부메트릭
6.3노드오토스케일링및용량계획
__6.3.1클러스터오토스케일링
__6.3.2클러스터오토스케일링을통한예비용량
6.4확장가능한앱구축하기
__6.4.1상태피하기
__6.4.2마이크로서비스아키텍처
__6.4.3백그라운드태스크
요약

▣7장:내부서비스및로드밸런싱
7.1내부서비스
__7.1.1쿠버네티스클러스터네트워킹
__7.1.2내부서비스생성하기
__7.1.3서비스탐색
7.2인그레스:HTTP(S)로드밸런싱
__7.2.1TLS로커넥션에대한보안강화하기
요약

▣8장:노드기능선택
8.1노드기능선택
__8.1.1노드셀렉터
__8.1.2노드어피니티및안티어피니티
__8.1.3기본적으로스케줄링되는것을방지하기위한노드테인트설정하기
__8.1.4워크로드분리
8.2파드배치하기
__8.2.1고가용성배포구축하기
__8.2.2상호의존적인파드를함께배치하기
__8.2.3특정파드회피하기
8.3배치문제디버깅하기
__8.3.1배치규칙이동작하지않는것처럼보이는경우
__8.3.2파드가Pending상태에빠져있는경우
요약

▣9장:상태저장애플리케이션
9.1볼륨,영구볼륨,클레임및스토리지클래스
__9.1.1볼륨
__9.1.2영구볼륨및클레임
__9.1.3스토리지클래스
__9.1.4단일파드상태저장워크로드배포
9.2스테이트풀셋
__9.2.1스테이트풀셋배포하기
__9.2.2다중역할을가지는스테이트풀셋배포하기
9.3디스크마이그레이션/복구하기
9.4스크래치공간을위한제네릭임시볼륨
요약

▣10장:백그라운드프로세싱
10.1백그라운드처리큐
__10.1.1사용자정의태스크큐만들기
__10.1.2워커파드에서신호처리하기
__10.1.3워커파드확장하기
__10.1.4오픈소스태스크큐
10.2잡
__10.2.1잡을사용해일회성작업실행하기
__10.2.2크론잡을사용해태스크스케줄링하기
10.3잡을사용한배치태스크처리하기
__10.3.1잡을사용한동적큐처리하기
__10.3.2잡을사용한정적큐처리하기
10.4백그라운드태스크를위한활성프로브
요약

▣11장:깃옵스-코드형설정
11.1네임스페이스를사용한운영및검증환경
__11.1.1새로운네임스페이스에배포하기
__11.1.2클러스터의예외사항동기화시키기
11.2쿠버네티스방식으로코드형설정
11.3안전하게롤아웃하기
__11.3.1배포파이프라인
__11.3.2클라우드빌드를통한지속적인배포
11.4시크릿
__11.4.1문자열기반(패스워드)시크릿
__11.4.2Base64로인코딩된시크릿
__11.4.3파일기반시크릿
__11.4.4시크릿과깃옵스
요약

▣12장:쿠버네티스보안강화하기
12.1최신상태로유지하기
__12.1.1클러스터및노드업데이트
__12.1.2컨테이너업데이트하기
__12.1.3중단처리하기
12.2데몬셋을사용해노드에이전트배포하기
12.3파드보안컨텍스트
12.4비루트컨테이너
12.5승인컨트롤러
__12.5.1파드보안승인
__12.5.2보안과호환성균형맞추기
12.6역할기반접근제어
12.7다음단계
__12.7.1네트워크정책
__12.7.2컨테이너격리
__12.7.3클러스터강화하기
요약

출판사 서평

★이책에서다루는내용★

◎도커를활용해웹애플리케이션을컨테이너화하는방법
◎퍼블릭클라우드서비스를활용해컨테이너화된애플리케이션을쿠버네티스에서호스팅하는방법
◎클라우드네이티브기술을활용해비용을절감하고성능을향상시키는방법
◎신뢰할수있고장애복구가용이한배포방법
◎애플리케이션을재설계없이확장가능한구조로준비하는방법
◎쿠버네티스에서배포된애플리케이션을모니터링하고디버깅하고최적화하는방법