헬름 배우기 (효율적인 쿠버네티스 애플리케이션 관리)

헬름 배우기 (효율적인 쿠버네티스 애플리케이션 관리)

$33.77
Description
쿠버네티스 환경에서 실행되는 애플리케이션을 효율적으로 관리하기 위한 도구로 헬름을 소개하고 핵심 개념에 대한 간략한 소개로 시작한다. 그리고 이해를 돕기 위해 헬름 차트의 다양한 사용 사례를 보여주며 엔터프라이즈 환경에 적용할 수 있도록 자동화, 보안 등을 추가로 설명한다. 헬름의 기초를 배우고 엔터프라이즈 환경에서 활용하는 방법을 배울 수 있는 좋은 지침서가 될 것이다.
저자

앤드류블록

앤드류블록(AndrewBlock)
레드햇의시니어프린시플컨설턴트(seniorprincipalconsultant)로다양한배포환경에자동화원칙을사용해서컨테이너솔루션및마이크로서비스아키텍처를채택하는방법을조직에안내했다.『ApplicationReleaseStrategieswithOpenshift』의저자로소프트웨어를좀더빨리개발하고배포하기위해보안에중점을둔CI/CD방법론의중요성을소개하고있다.또한레드햇내에서컨테이너생태계에대한인식을높이는것을목표로하는학습공동체(CommunityofPractice)의관리자역할을담당하고있다.

목차

1부.소개및설정

1장.쿠버네티스와헬름이해
__모놀리식부터현대마이크로서비스까지
__쿠버네티스란무엇인가?
____컨테이너오케스트레이션
____고가용성
____확장성
____활성화된커뮤니티
__쿠버네티스애플리케이션배포
____디플로이먼트
____서비스
____영구볼륨요청
__리소스관리에대한접근
____명령형및선언형구성
__리소스구성문제
____다양한타입의쿠버네티스리소스
____라이브및로컬상태로동기화상태로유지
____애플리케이션수명주기관리의어려움
____정적인리소스파일
__구원이될헬름!
패키지매니저이해
쿠버네티스패키지매니저
________추상화된쿠버네티스리소스의복잡성
________동적으로구성된선언형리소스
________로컬상태와라이브상태간의일관성
________지능형배포
________자동화된수명주기훅
__요약
__더읽을거리
__평가문제


2장.쿠버네티스및헬름환경준비
__기술요구사항
__미니쿠베를사용한로컬쿠버네티스환경준비
____미니쿠베설치
____버추얼박스설치
____지정된하이버파이저로버추얼박스구성
____미니쿠베리소스할당구성
____기본사용법확인
__kubectl설정
____kubectl설치
________미니쿠베를통한kubectl설치
________미니쿠베없이kubectl설치
________패키지매니저사용
________링크에서직접다운로드
__헬름설정
____헬름설치
____상위리포지토리추가
____플러그인추가
____환경변수
____탭완성
____인증
____인가/RBAC
__요약
__더읽을거리
__평가문제


3장.첫번째헬름차트설치
__기술요구사항
__워드프레스애플리케이션이해
__워드프레스차트찾기
____명령행을통한워드프레스차트검색
____브라우저에서워드프레스차트보기
____명령행에서워드프레스차트정보보기
__쿠버네티스환경만들기
__워드프레스차트설치
____구성을위한values파일생성
____설치실행
____릴리스검사
__추가설치정보
____-n플래그
____HELM_NAMESPACE환경변수
____--set과-values중선택
__워드프레스애플리케이션에접근
__워드프레스릴리스업그레이드
____헬름값수정
____업그레이드실행
____업그레이드중값재사용및재설정
__워드프레스릴리스롤백
____워드프레스이력검사
____롤백실행
__워드프레스릴리스삭제
__환경정리
__요약
__더읽을거리
__평가문제


2부.헬름차트개발

4장.헬름차트이해
__기술요구사항
__YAML형식이해
__키-값쌍정의
____값타입
________JSON형식
________헬름차트구조
__차트템플릿이해
____Go템플릿작성
________값및내장객체를통한필드의매개변수화
________values.schema.json파일
________흐름제어를통한세분화된템플릿처리
________템플릿변수
________함수및파이프라인을사용한복잡한처리
________명명된템플릿으로코드재사용활성화
________라이브러리차트
________CR템플릿
__차트정의이해
____필수필드
____선택적메타데이터
____차트디펜던시관리
____디펜던시다운로드
____조건부디펜던시
____자식차트에서값재정의및참조
____import-values를통한값가져오기
__수명주기관리
____헬름훅의기본사항
____훅실행
____고급훅개념
__헬름차트문서화
____README.md파일
____LICENSE파일
____templates/NOTES.txt파일
__헬름차트패키징
__요약
__더읽을거리
__평가문제


5장.첫번째헬름차트빌드
__기술요구사항
__방명록애플리케이션이해
__환경설정
__방명록헬름차트생성
____초기파일구조스캐폴딩
____차트정의평가
____레디스차트디펜던시추가
________레디스차트디펜던시다운로드
____values.yaml파일수정
________레디스차트를구성하기위한값추가
________방명록프론트엔드배포를위한값수정
____방명록차트설치
__방명록헬름차트개선
____사전업그레이드및사전롤백수명주기훅생성
________데이터스냅샷생성을위한사전업그레이드훅생성
________데이터베이스복원을위한사전롤백훅생성
________수명주기훅실행
____입력유효성검사추가
________fail함수사용
________required함수사용
__방명록차트를차트리포지토리에게시
____차트리포지토리생성
____방명록헬름차트게시
____차트리포지토리추가
__정리
__요약
__더읽을거리
__평가문제


6장.헬름차트테스트
__기술요구사항
__환경설정
__헬름템플릿확인
____헬름템플릿을사용해로컬에서템플릿생성유효성검사
________템플릿매개변수화테스트
________제어동작테스트
________함수및파이프라인테스트
________차트렌더링에서버측유효성검사추가
____헬름차트및템플릿정적검사
__라이브클러스터환경에서테스트
____차트테스트생성
____차트테스트실행
__차트테스팅프로젝트를통한차트테스트개선
____차트테스팅프로젝트소개
____차트테스팅도구설치
____차트테스팅lint-and-install명령실행
__정리
__요약
__더읽을거리
__질문


3부.고급배포패턴

7장.CI/CD및깃옵스를사용한헬름프로세스자동화
__기술요구사항
__CI/CD및깃옵스이해
____CI/CD
____깃옵스를사용하여CI/CD한단계업그레이드
__환경설정
__헬름차트를빌드하기위한CI파이프라인생성
____파이프라인설계
____젠킨스이해
____젠킨스설치
____파이프라인이해
____파이프라인실행
__헬름을사용해애플리케이션을배포하기위한CD파이프라인생성
____파이프라인설계
____환경업데이트
____파이프라인이해
____파이프라인실행
__정리
__요약
__더읽을거리
__평가문제


8장.오퍼레이터프레임워크와함께헬름사용
__기술요구사항
__쿠버네티스오퍼레이터이해
__헬름오퍼레이터생성
____환경설정
________퀘이리포지토리생성
________로컬개발환경준비
____오퍼레이터파일구조스캐폴딩
____오퍼레이터빌드및퀘이로푸시
____방명록오퍼레이터배포
____방명록애플리케이션배포
__헬름을사용하여오퍼레이터및CR관리
__쿠버네티스환경정리
__요약
__더읽을거리
__평가문제


9장.헬름보안고려사항
__기술요구사항
__데이터출처및무결성
____GPG키쌍생성
____헬름다운로드확인
__헬름차트서명및확인
__안전한헬름차트개발
____안전한이미지사용
____리소스제한설정
____헬름차트에서의시크릿처리
__RBAC규칙구성
__안전한차트리포지토리접근
__요약
__더읽을거리
__평가문제


부록.평가문제해답

출판사 서평

★이책에서다루는내용★

■헬름을사용해쿠버네티스환경에서엔터프라이즈자동화전략개발
■쉽게사용하고구성할수있는헬름차트생성
■오케스트레이션도구및쿠버네티스오퍼레이터에서헬름사용
■애플리케이션제공및라이프사이클관리를위한모범사례확인
■기업에적합하며,안전하고안정적인방식으로헬름활용
■헬름을통한자동화의세부내용확인

★이책의대상독자★

쿠버네티스환경에서애플리케이션배포를자동화할수있는헬름학습에관심이있는쿠버네티스개발자나관리자를대상으로한다.쿠버네티스애플리케이션개발관련기본지식은유용하겠지만헬름에대한사전지식은필요로하지않는다.자동화가제공할수있는비즈니스사용사례의사전지식에대한학습을권장한다.


★이책의구성★

1장,‘쿠버네티스와헬름이해’에서는쿠버네티스와헬름을소개한다.쿠버네티스애플리케이션을배포할때사용자가직면할수있는문제와헬름이구현을단순화하고생산성을높이는데어떻게도움이되는지소개한다.
2장,‘쿠버네티스및헬름환경준비’에서는로컬쿠버네티스클러스터에애플리케이션을배포하는데필요한도구를살펴보고설치한후수행할수있는기본적인헬름구성을알아본다.
3장,‘첫번째헬름차트설치’에서는헬름차트를설치해쿠버네티스에애플리케이션을배포하는방법을설명하고,헬름을통해배포된애플리케이션의다른수명주기단계를다룬다.
4장,‘헬름차트이해’에서는헬름차트빌딩블록을좀더깊게살펴보고자신만의헬름차트를작성하는데필요한사전지식을학습한다.
5장,‘첫번째헬름차트빌드’에서는헬름차트를빌드하는엔드투엔드(end-to-end)연습을제공한다.5장은기본적인헬름구조를활용하는헬름차트의기본개념으로시작해좀더진보된헬름구조로통합하기위해기본구성을수정하는단계로진행된다.마지막으로기본차트리포지토리에차트를배포하는방법을알아본다.
6장,‘헬름차트테스트’에서는헬름차트에대한정적검사및테스트를수행할수있는다양한방법론을설명한다.
7장,‘CI/CD및깃옵스를사용한헬름프로세스자동화’에서는CI/CD및깃옵스(GitOps)모델을활용해헬름작업을자동화하는사용사례를살펴본다.헬름차트테스트,패키징및릴리스에대한프로세스를개발한다.또한다양한환경에서의헬름차트설치및관리방법도소개한다.
8장,‘오퍼레이터프레임워크와함께헬름사용’에서는오퍼레이터프레임워크에서제공하는operator-sdk도구를사용해기존의헬름차트에서헬름오퍼레이터를구축하기위한쿠버네티스오퍼레이터의기본적인개념을설명한다.
9장,‘헬름보안고려사항’에서는도구를설치하는순간부터쿠버네티스클러스터에헬름차트를설치할때까지헬름사용에관한보안고려사항과주의사항을설명한다.

★옮긴이의말★

쿠버네티스가컨테이너화된애플리케이션의자동배포및스케일링등많은이점을가져다주면서국내외에서오픈소스기반컨테이너오케스트레이션플랫폼인쿠버네티스를도입하는기업이빠르게증가하고있다.이에따라컨테이너로애플리케이션을빌드하고이를여러환경의쿠버네티스클러스터에배포하는경우가많아졌다.하지만여러환경에애플리케이션배포에따른설정관리및구성절차의복잡성때문에대다수의사용자가어려움을겪고있다.이를해결하기위한방안으로배포환경에따라달라지는설정값만정의해둔다음이에따라배포하는방법을제공하는것이바로쿠버네티스에서헬름과차트다.헬름은쉽게말해CentOS의yum,Ubuntu의apt와같은쿠버네티스의패키지관리도구이며차트는사전에정의된쿠버네티스의리소스패키지다.개발자는헬름을통해차트로정의된쿠버네티스애플리케이션을다양한테스트환경및운영환경에쉽게설치하고업그레이드할수있어이에소비되는시간을줄여개발자가개발에집중할수있는환경을만들수있다.이책은헬름에대한기본개념부터실제운영환경에적용해프로세스자동화를구축할수있는CI/CD및깃옵스의개념까지설명한다.복잡한쿠버네티스애플리케이션배포및업그레이드프로세스효율화에관심을갖고동참할수있기를바란다.