이미 소장하고 있다면 판매해 보세요.
|
1부 쿠버네티스 빠르게 훑어보기
1장 시작하기 전에 1.1 쿠버네티스 이해하기 1.2 이 책의 대상 독자 1.3 실습 환경 만들기 __1.3.1 이 책의 예제 코드 내려받기 __1.3.2 도커 데스크톱 설치하기 __1.3.3 도커 커뮤니티 에디션과 K3s 설치하기 __1.3.4 쿠버네티스 명령행 도구 설치하기 __1.3.5 애저 환경에서 단일 노드 쿠버네티스 클러스터 실행하기 __1.3.6 AWS에서 단일 노드 쿠버네티스 클러스터 실행하기 __1.3.7 생성한 클러스터 확인하기 1.4 바로 활용하기 2장 파드와 디플로이먼트로 컨테이너 실행하기 2.1 쿠버네티스는 어떻게 컨테이너를 실행하고 관리하는가 2.2 컨트롤러 객체와 함께 파드 실행하기 2.3 애플리케이션 매니페스트에 배포 정의하기 2.4 파드에서 실행 중인 애플리케이션에 접근하기 2.5 쿠버네티스의 리소스 관리 이해하기 2.6 연습 문제 3장 네트워크를 통해 서비스에 파드 연결하기 3.1 쿠버네티스 내부의 네트워크 트래픽 라우팅 3.2 파드와 파드 간 통신 3.3 외부 트래픽을 파드로 전달하기 3.4 쿠버네티스 클러스터 외부로 트래픽 전달하기 3.5 쿠버네티스 서비스의 해소 과정 3.6 연습 문제 4장 컨피그맵과 비밀값으로 애플리케이션 설정하기 4.1 쿠버네티스에서 애플리케이션에 설정이 전달되는 과정 4.2 컨피그맵에 저장한 설정 파일 사용하기 4.3 컨피그맵에 담긴 설정값 데이터 주입하기 4.4 비밀값을 이용하여 민감한 정보가 담긴 설정값 다루기 4.5 쿠버네티스의 애플리케이션 설정 관리 4.6 연습 문제 5장 볼륨, 마운트, 클레임을 이용한 데이터 퍼시스턴시 5.1 쿠버네티스에서 컨테이너 파일 시스템이 구축되는 과정 5.2 볼륨과 마운트로 노드에 데이터 저장하기 5.3 전체에서 접근 가능하도록 데이터 저장하기: 영구볼륨과 클레임 5.4 스토리지의 유형과 동적 볼륨 프로비저닝 5.5 스토리지를 선택할 때 고려할 점 5.6 연습 문제 6장 컨트롤러 리소스를 이용한 애플리케이션의 스케일링 6.1 쿠버네티스는 어떻게 애플리케이션을 스케일링하는가 6.2 디플로이먼트와 레플리카셋을 이용한 부하 스케일링 6.3 데몬셋을 이용한 스케일링으로 고가용성 확보하기 6.4 쿠버네티스의 객체 간 오너십 6.5 연습 문제 2부 쿠버네티스 실무에 활용하기 7장 멀티컨테이너 파드를 이용하여 애플리케이션 확장하기 7.1 파드와 컨테이너의 통신 7.2 초기화 컨테이너를 이용한 애플리케이션 시작 7.3 어댑터 컨테이너를 이용한 일관성 있는 애플리케이션 관리 7.4 외부와의 통신을 추상화하기: 앰배서더 컨테이너 7.5 파드 환경 이해하기 7.6 연습 문제 8장 데이터를 많이 다루는 애플리케이션 실행하기: 스테이트풀셋과 잡 8.1 스테이트풀셋을 이용한 안정성 모델링 8.2 스테이트풀셋에서 초기화 컨테이너 활용하기 8.3 볼륨 클레임 템플릿으로 스토리지 요청하기 8.4 잡과 크론잡을 이용한 유지 보수 작업 8.5 유상태 애플리케이션을 위한 플랫폼 선택하기 8.6 연습 문제 9장 롤아웃과 롤백을 이용한 애플리케이션 릴리스 관리 9.1 쿠버네티스의 롤링 업데이트 9.2 롤아웃과 롤백을 이용한 디플로이먼트 업데이트 9.3 디플로이먼트의 롤링 업데이트 설정 9.4 데몬셋과 스테이트풀셋의 롤링 업데이트 9.5 릴리스 전략 이해하기 9.6 연습 문제 10장 헬름을 이용한 애플리케이션 패키징 및 관리 10.1 헬름이 제공하는 기능 10.2 헬름으로 애플리케이션 패키징하기 10.3 차트 간 의존 관계 모델링하기 10.4 헬름으로 설치한 릴리스의 업그레이드와 롤백 10.5 헬름은 어떤 상황에 적합한가 10.6 연습 문제 11장 애플리케이션 개발: 개발 워크플로와 CI/CD 11.1 도커 개발 워크플로 11.2 쿠버네티스 개발 워크플로 11.3 컨텍스트와 네임스페이스를 이용하여 워크로드 분리하기 11.4 도커를 배제한 쿠버네티스의 지속적 전달 11.5 쿠버네티스 환경의 개발자 워크플로 평가하기 11.6 연습 문제 3부 운영 환경으로 가자 12장 자기수복형 애플리케이션 활용하기 12.1 정상 파드에만 트래픽 라우팅하기: 레디니스 프로브 12.2 고장을 일으킨 파드 재시작하기: 리브니스 프로브 12.3 헬름을 이용한 안전한 애플리케이션 업데이트 12.4 계산 리소스를 관리하여 애플리케이션 및 노드 보호하기 12.5 자기수복형 애플리케이션의 한계점 12.6 연습 문제 13장 플루언트디와 일래스틱서치를 이용한 중앙화된 로그 관리 13.1 쿠버네티스의 로그 관리 13.2 플루언트디를 이용한 로그 파일 수집 13.3 수집된 로그를 일래스틱서치에 저장하기 13.4 로그 파싱 및 필터링하기 13.5 쿠버네티스에 적용할 수 있는 그 외 로그 모델 13.6 연습 문제 14장 프로메테우스를 이용한 쿠버네티스 및 애플리케이션 모니터링 14.1 프로메테우스가 쿠버네티스 애플리케이션을 모니터링하는 과정 14.2 프로메테우스 클라이언트 라이브러리가 사용된 애플리케이션 모니터링하기 14.3 측정값 추출기를 이용한 모니터링 14.4 쿠버네티스 객체와 컨테이너 모니터링하기 14.5 모니터링을 위한 투자의 방향성 14.6 연습 문제 15장 인그레스를 이용한 인입 트래픽 관리 15.1 인그레스의 라우팅 과정 15.2 인그레스 규칙을 이용한 HTTP 트래픽 라우팅 15.3 인그레스 컨트롤러 비교하기 15.4 인그레스를 사용하여 HTTPS 적용하기 15.5 인그레스 및 인그레스 컨트롤러의 이해 15.6 연습 문제 16장 폴리시, 컨텍스트, API 접근 제어를 이용한 애플리케이션 보안 16.1 네트워크 폴리시를 이용하여 컨테이너 통신 제약하기 16.2 보안 컨텍스트를 이용하여 컨테이너 기능 제약하기 16.3 웹훅을 이용한 워크로드의 차단 또는 변경하기 16.4 오픈 폴리시 에이전트를 이용한 어드미션 컨트롤 16.5 쿠버네티스의 보안 그 깊은 곳 16.6 연습 문제 4부 고급 쿠버네티스 사용법 17장 역할 기반 접근 제어를 이용한 리소스 보안 17.1 쿠버네티스 리소스에 대한 접근 제어하기 17.2 클러스터 내부의 리소스 접근 제어하기 17.3 사용자나 서비스 계정 또는 그 그룹에 롤을 부여하기 17.4 서드파티 플러그인을 사용한 권한 부여 검증하기 17.5 RBAC 전략 구상하기 17.6 연습 문제 18장 쿠버네티스 배치하기: 다중 노드 혹은 다중 아키텍처 클러스터 18.1 쿠버네티스 클러스터의 구조 18.2 컨트롤플레인 초기화하기 18.3 노드를 추가하고 클러스터에서 애플리케이션 실행하기 18.4 윈도우 노드를 추가하고 하이브리드 애플리케이션 실행하기 18.5 쿠버네티스 클러스터를 확장할 때 고려할 것 18.6 연습 문제 19장 워크로드의 배치 조정과 자동 스케일링 19.1 쿠버네티스의 워크로드 배치 과정 19.2 어피니티 및 안티어피니티를 이용한 파드 배정 지정 19.3 자동 스케일링을 이용하여 처리 용량 제어 19.4 선점과 우선순위를 이용한 리소스 보호 19.5 워크로드 관리의 메커니즘 이해 19.6 연습 문제 20장 사용자 정의 리소스와 오퍼레이터를 이용하여 쿠버네티스 확장하기 20.1 사용자 정의 리소스를 이용한 쿠버네티스 확장하기 20.2 사용자 정의 컨트롤러를 이용한 워크플로 트리거 20.3 오퍼레이터를 이용한 서드파티 컴포넌트 관리하기 20.4 오퍼레이터 직접 작성하기 20.5 쿠버네티스의 기능 확장이 필요한 시점은 언제일까 20.6 연습 문제 21장 쿠버네티스에서 서버리스 펑션 실행하기 21.1 서버리스 플랫폼의 동작 원리 21.2 HTTP 요청을 통해 서버리스 펑션 호출하기 21.3 서버리스 펑션 호출하기: 이벤트 트리거와 스케줄 트리거 21.4 Serverless를 이용하여 서버리스 펑션 추상화하기 21.5 서버리스 펑션의 용도 이해하기 21.6 연습 문제 22장 끝없는 정진 22.1 장별 추가 학습 자료 22.2 어떤 쿠버네티스 플랫폼을 선택해야 할까 22.3 쿠버네티스의 개발 프로세스 22.4 커뮤니티 참여하기 부록은 무료 전자책으로 제공합니다. 온라인 서점 eBook 코너에서 ‘쿠버네티스 교과서’로 검색하면 찾을 수 있습니다. 부록 A. 애플리케이션 소스 코드에서 도커 이미지까지 부록 B. 컨테이너 모니터링으로 투명성 있는 애플리케이션 만들기 부록 C. 컨테이너의 애플리케이션 설정 관리 부록 D. 도커를 이용한 로그 생성 및 관리 |
저엘튼 스톤맨
역심효섭
필자는 이 책에서 여러분이 쿠버네티스를 진정으로 경험하기를 바란다. 이 책의 본문을 모두 읽고 연습 문제를 모두 풀어 보았다면 일반적인 쿠버네티스의 사용법을 모두 익힌 것이다. 이 책을 읽는 데 특별한 배경지식은 필요하지 않다. 하지만 컨테이너나 이미지 같은 핵심 개념은 이해하고 있어야 한다. 또한, 이 책은 실용서이므로 효과를 가장 크게 보려면 실습 예제와 연습 문제를 직접 풀어 보는 것이 좋다. 실습 예제와 연습 문제에 특별한 하드웨어는 필요하지 않다. 일반적인 노트북(macOS 또는 윈도우 혹은 리눅스)만 있으면 풀 수 있다.
각 장의 구성 쿠버네티스는 거대한 주제다. 하지만 필자는 다년간 온라인 및 대면 교육과 워크숍을 운영한 경험을 바탕으로 유효했던 학습 과정을 수립해 두었다. 핵심 개념에서 출발하여 점차 세부 사항으로 나아가며, 어렵고 복잡한 주제는 쿠버네티스 사용에 어느 정도 익숙해진 후 접하도록 배치했다. 먼저 2장부터 6장은 쿠버네티스에서 애플리케이션을 실행하는 방법을 다룬다. YAML 언어로 된 매니페스트 파일에 쿠버네티스에서 실행할 애플리케이션을 정의하는 방법을 배운다. 그리고 컨테이너 간 통신과 외부에서 애플리케이션 접근에 쓰일 네트워크 설정 방법을 알아본 후 쿠버네티스에서 애플리케이션 설정을 읽어 오는 방법, 쿠버네티스가 관리하는 스토리지에서 데이터를 읽고 쓰는 방법, 애플리케이션의 스케일링 방법을 배운다. 7장부터 11장은 쿠버네티스의 실제 운용과 관련된 주제의 기초를 다룬다. 먼저 환경을 공유하는 컨테이너를 실행하는 방법, 컨테이너를 이용한 배치 작업과 예약 작업을 배운다. 롤링 업데이트 기능으로 자동화된 무중단 업데이트를 수행하는 방법도 배운다. 또한 헬름(Helm)을 사용해서 설정으로 애플리케이션 배포를 정의하는 방법을 배운다. 마지막으로 다양한 개발 워크플로와 지속적 통합/지속적 전달 파이프라인으로 쿠버네티스를 이용한 애플리케이션 빌드의 유용함을 경험해 볼 것이다. 12장부터 16장은 단순히 쿠버네티스를 이용한 애플리케이션 실행을 넘어 실제 서비스 운영 환경 수준의 적용성과 관련된 주제를 다룬다. 특히 자기수복형(self-healing)이 가능한 애플리케이션을 구성하는 방법, 로그 수집 및 중앙화, 시스템 상태를 감시할 수 있는 모니터링 대시보드 구성 방법 등을 배운다. 보안도 빼놓을 수 없는 주제다. 애플리케이션 보안은 물론 애플리케이션을 안전하게 외부에 노출시키는 방법도 배운다. 17장부터 21장은 좀 더 전문적인 주제를 다룬다. 먼저 대규모 쿠버네티스 클러스터를 다루는 방법과 애플리케이션 자동 스케일링을 배운다. 그리고 역할 기반 접근 제어를 이용하여 쿠버네티스 리소스의 보안을 향상시키는 방법도 배운다. 마지막으로 서버리스 함수의 플랫폼으로 쿠버네티스를 활용하는 방법과 함께 리눅스, 윈도우, 인텔, Arm 등 다양한 아키텍처의 애플리케이션을 실행할 수 있는 다중 아키텍처 클러스터를 구성하는 방법을 다룬다. 이 책을 마치고 나면 일상 업무에서 무리 없이 쿠버네티스를 활용할 수 있을 것이다. 마지막 장은 향후 쿠버네티스에 활용할 수 있는 도움말과 각 장 주제의 심화 학습용 도서 추천, 쿠버네티스 플랫폼을 선택할 때 고려할 점 등을 다룬다. --- 본문 중에서 |
쿠버네티스를 시작하고 실행하는 데
필요한 모든 것을 한 권에 담았다! 기초 → 실무 → 운영으로 입문하기에 최적화된 구성으로 학습하자! 쿠버네티스는 지금도 변화 중이고 거대한 기능을 갖춘 강력한 플랫폼이다. 그만큼 학습하기에 쉽지 않은 대상이기도 하다. 저자는 다년간의 온라인 및 대면 교육과 워크숍을 운영한 경험을 바탕으로 가장 효과적인 학습 과정을 찾았으며, 이를 바탕으로 책을 구성했다. 핵심 개념에서 시작하여 세부 사항을 설명하고, 어렵고 복잡한 주제는 쿠버네티스 사용에 어느 정도 익숙해진 후에 접하도록 배치했다. 특히 기술적 지식을 너무 얕지 않게 전달하면서도 애플리케이션에서 쿠버네티스를 어떻게 사용할 수 있는지에 초점을 맞추고자 노력했다. 280여 개의 실습으로 다양한 경험을 하자! 직접 해보는 것만큼 기억에 남는 것은 없다. 이 책은 실용서이기 때문에 직접 실습 예제와 연습 문제를 해볼 수 있도록 구성했으며, 280여 개가 넘는 실습을 통해 쿠버네티스의 다양한 기능과 실무 프랙티스, 쿠버네티스 생태계를 구성하는 여러 도구의 사용법을 익힐 수 있다. 또한, 다양한 실습과 포괄적인 학습으로 실전 투입을 위한 준비로도 제격이다. 컨테이너 기초 지식은 무료 전자책으로 학습! 이 책을 읽는 데 쿠버네티스 사전 지식은 필요하지 않지만 도커와 같은 컨테이너 지식을 알고 있다고 가정한다. 학습에 필요한 컨테이너 지식이 필요한 독자들을 위해 『도커 교과서』의 일부 내용을 부록으로 묶어 무료 전자책으로 제공하므로 유용하게 활용할 수 있다. |