코어 쿠버네티스 (견고하고 안정적인 시스템 구축을 위한 쿠버네티스의 내부 구조와 동작 원리)

코어 쿠버네티스 (견고하고 안정적인 시스템 구축을 위한 쿠버네티스의 내부 구조와 동작 원리)

$28.00
Description
쿠버네티스의 핵심 사항을 이해하려면 반드시 이 책을 읽어 보자!
현실에서 쿠버네티스의 배포는 힘든 작업입니다. 작은 구성 오류나 설계 문제도 시스템을 망칠 수 있습니다. 현실에서 신속하게 문제를 해결하고, 구성을 재설정하고, 다음 문제로 넘어가려면 각 컴포넌트의 동작 방법을 아는 것은 중요합니다. 이 독특한 책은 쿠버네티스 앱을 계속 운영하기 위한 세부사항과 힘들게 얻은 노하우, 전문가들의 팁을 포함하고 있습니다.

이 책은 iptables 관리부터 부하에 따라 동적으로 확장되는 클러스터 설정까지, 쿠버네티스의 내부를 살펴봅니다. 이 책의 모든 페이지는 쿠버네티스 설정과 관리, 불가피한 껄끄러운 상황을 다루기 위한 새로운 통찰력을 제공합니다. 《코어 쿠버네티스》는 운영 환경에서 쿠버네티스 배포를 관리하기 위한 포괄적인 참조 가이드입니다.

★ 이 책에서 다루는 내용 ★

◎ 쿠버네티스의 기본 컴포넌트
◎ 스토리지와 컨테이너 스토리지 인터페이스
◎ 쿠버네티스 보안
◎ 쿠버네티스 클러스터를 생성하는 다양한 방법
◎ 컨트롤 플레인, 네트워킹, 기타 핵심 컴포넌트에 대한 세부사항
저자

제이비아스,크리스러브

(JayVyas,PhD)
제이비아스는VMware의스태프엔지니어로서OpenShift,VMwareTanzu,BlackDuck의내부다각화쿠버네티스설치플랫폼을비롯해자신이운영하는컨설팅회사RocketRudolf,LLC의고객을위한맞춤형쿠버네티스설치를포함하는여러상용및오픈소스쿠버네티스배포판과플랫폼과관련된작업을해왔다.쿠버네티스가출시된이후에는다양한역량을발휘하며현재는SIG-Windows및SIG-network커뮤니티에서대부분의시간을보내고있다.

목차

▣01장:왜쿠버네티스인가?
1.1사전준비-몇가지핵심용어검토하기
1.2인프라드리프트문제와쿠버네티스
1.3컨테이너와이미지
1.4쿠버네티스의핵심기초
__1.4.1쿠버네티스에서모든인프라규칙은평범한YAML로관리된다
1.5쿠버네티스의기능
1.6쿠버네티스컴포넌트와아키텍처
__1.6.1쿠버네티스API
__1.6.2예제1:온라인소매업체
__1.6.3예제2:온라인기부솔루션
1.7쿠버네티스를사용하지말아야하는경우
요약

▣02장:왜파드인가?
2.1웹애플리케이션예제
__2.1.1웹애플리케이션인프라
__2.1.2운영요구사항
2.2파드란무엇인가?
__2.2.1다양한리눅스네임스페이스
__2.2.2쿠버네티스,인프라,파드
__2.2.3노드API객체
__2.2.4웹애플리케이션과컨트롤플레인
2.3kubectl로웹애플리케이션생성하기
__2.3.1쿠버네티스API서버:kube-apiserver
__2.3.2쿠버네티스스케줄러:kube-scheduler
__2.3.3인프라컨트롤러
2.4확장,고가용성애플리케이션,컨트롤플레인
__2.4.1자동확장
__2.4.2비용관리
요약

▣03장:파드생성하기
3.1kind로쿠버네티스기본요소살펴보기
3.2리눅스기본요소란무엇인가?
__3.2.1리눅스기본요소는리소스관리도구다
__3.2.2모든것은파일(또는파일디스크립터)이다
__3.2.3파일들은합성이가능하다
__3.2.4kind설정
3.3쿠버네티스에서리눅스기본요소사용하기
__3.3.1파드실행을위한전제조건
__3.3.2간단한파드실행하기
__3.3.3파드의리눅스의존성탐색하기
3.4처음부터파드만들기
__3.4.1chroot를사용해격리프로세스생성하기
__3.4.2마운트를사용해작업을위한프로세스데이터제공하기
__3.4.3unshare를통한프로세스보안
__3.4.4네트워크네임스페이스생성하기
__3.4.5프로세스상태확인하기
__3.4.6cgroup을통한CPU조정하기
__3.4.7리소스스탠자생성하기
3.5현실에서파드사용하기
__3.5.1네트워킹문제
__3.5.2iptables를활용하여kube-proxy의쿠버네티스서비스구현방법이해하기
__3.5.3kube-dns파드사용하기
__3.5.4기타문제고려하기
요약

▣04장:파드내프로세스에서cgroups사용하기
4.1파드는준비작업이완료될때까지유휴상태다
4.2리눅스의프로세스와스레드
__4.2.1sytemd와init프로세스
__4.2.2프로세스의cgroups
__4.2.3일반파드에대한cgroups구현
4.3cgroups테스트하기
4.4kubelet의cgroups관리방법
4.5kubelet의리소스관리방법자세히알아보기
__4.5.1왜OS는쿠버네티스에서스왑을사용할수없는가?
__4.5.2해킹:가난한자의우선순위조절방법
__4.5.3해킹:init컨테이너로HugePages편집하기
__4.5.4QoS클래스가중요한이유와동작방법
__4.5.5리소스설정을통한QoS클래스생성하기
4.6프로메테우스,cAdvisor,API서버로리눅스커널모니터링하기
__4.6.1메트릭은게시비용이저렴하며매우가치가높다
__4.6.2프로메테우스가필요한이유는무엇인가?
__4.6.3로컬프로메테우스모니터링서비스생성하기
__4.6.4프로메테우스에서시스템장애특성화하기
요약

▣05장:컨테이너네트워크인터페이스(CNI),그리고네트워크를통한파드제공
5.1쿠버네티스에SDN이필요한이유
5.2쿠버네티스SDN의서비스측면구현하기:kube-proxy
__5.2.1kube-proxy데이터플레인
__5.2.2NodePort서비스
5.3CNI공급자
5.4두개의CNI네트워킹플러그인살펴보기:Calico와Antrea
__5.4.1CNI플러그인의아키텍처
__5.4.2CNI를사용해보자
__5.4.3CalicoCNI공급자설치
__5.4.4OVS와Antrea를통한쿠버네티스네트워킹
__5.4.5다른OS상의CNI공급자와kube-proxy에대한참고사항
요약

▣06장:대규모네트워크오류해결하기
6.1Sonobuoy-클러스터기능확인을위한도구
__6.1.1실제클러스터에서파드의데이터경로추적하기
__6.1.2AntreaCNI공급자로클러스터설정하기
6.2arp와ip명령어를통한다양한공급자의CNI라우팅검사
__6.2.1IP터널이란무엇이며,왜CNI공급자들이IP터널을이용하는가?
__6.2.2CNI의네트워크인터페이스를통해얼마나많은패킷이흐르는가?
__6.2.3경로
__6.2.4CNI특화도구-OVS(OpenvSwitch)
__6.2.5tcpdump를이용한활성컨테이너의데이터경로추적
6.3kube-proxy와iptables
__6.3.1iptables-save와diff도구
__6.3.2네트워크정책이CNI규칙을수정하는방법살펴보기
__6.3.3이러한정책들은어떻게구현되는가?
6.4인그레스컨트롤러
6.4인그레스컨트롤러
__6.4.1인그레스컨트롤러를탐색하기위한Contour와kind설정
__6.4.2간단한웹서버파드설정하기
요약

▣07장:파드스토리지와CSI
7.1빠른우회방법:리눅스의가상파일시스템(VFS)
7.2세가지스토리지유형에대한쿠버네스트요구사항
7.3kind클러스터에PVC생성하기
7.4컨테이너스토리지인터페이스(CSI)
__7.4.1인트리공급자문제
__7.4.2쿠버네티스내부에서동작하는명세로서의CSI
__7.4.3CSI-스토리지드라이버작동방식
__7.4.4바인드마운팅
7.5몇가지실행중인CSI드라이버에대한간략한개요
__7.5.1컨트롤러
__7.5.2노드인터페이스
__7.5.3리눅스가아닌OS의CSI
요약

▣08장:스토리지구현과모델링
8.1더넓은쿠버네티스생태계의축소판-동적스토리지
__8.1.1즉각적인스토리지관리-동적프로비저닝
__8.1.2로컬스토리지와emptyDir비교
__8.1.3PersistentVolume
__8.1.4컨테이너스토리지인터페이스(CSI)
8.2동적프로비저닝은CSI에서혜택을얻지만직교적이다
__8.2.1StorageClasses
__8.2.2데이터센터항목으로되돌아가기
8.3스토리지에대한쿠버네티스유스케이스
__8.3.1시크릿-임시적인파일공유
8.4동적스토리지공급자는일반적으로어떻게보이는가?
8.5시스템제어와/또는데이터액세스를위한hostPath
__8.5.1hostPath,CSI및CNI:표준유스케이스
__8.5.2카산드라:실제쿠버네티스애플리케이션스토리지의예
__8.5.3고급스토리지기능과쿠버네티스스토리지모델
8.6더읽을거리
요약

▣09장:파드실행:kubelet의동작방법
9.1kubelet과노드
9.2kubelet의핵심
__9.2.1컨테이너런타임:표준과규약
__9.2.2kubelet구성과API
9.3파드를생성하고실제동작살펴보기
__9.3.1kubelet바이너리시작하기
__9.3.2시작이후:노드수명주기
__9.3.3etcd의임대와잠금,그리고노드임대의진화
__9.3.4kubelet의파드수명주기관리
__9.3.5CRI,컨테이너,이미지:서로어떻게관련되어있는가
__9.3.6kubelet은컨테이너를실행하지않는다:그것은CRI의일이다
__9.3.7Pause컨테이너:깨달음의순간
9.4컨테이너런타임인터페이스(CRI)
__9.4.1컨테이너런타임의위치를쿠버네티스에알려주기
__9.4.2CRI루틴
__9.4.3CRI와관련된kubelet의추상화:GenericRuntimeManager
__9.4.4CRI는어떻게호출되는가?
9.5kubelet의인터페이스
__9.5.1Runtime내부인터페이스
__9.5.2kubelet이이미지를가져오는방법-ImageService인터페이스
__9.5.3kubelet에ImagePullSecrets제공하기
9.6더읽을거리
요약

▣10장:쿠버네티스의DNS
10.1DNS(그리고CoreDNS)의간략한소개
__10.1.1NXDOMAIN,레코드,CNAME레코드
__10.1.2파드는내부DNS를필요로한다
10.2왜디플로이먼트대신스테이트풀셋을사용하는가?
__10.2.1헤드리스서비스를갖는DNS
__10.2.2스테이트풀셋내의영구적인DNS레코드
__10.2.3파드의DNS속성탐색을위해폴리글랏디플로이먼트사용하기
10.3resolv.conf파일
__10.3.1간단한라우팅관련참고사항
__10.3.2CoreDNS:ClusterFirst파드DNS의업스트림해석기
__10.3.3CoreDNS플러그인구성해킹하기
요약

▣11장:컨트롤플레인의핵심
11.1컨트롤플레인살펴보기
11.2API서버세부사항
__11.2.1API객체와사용자정의API객체
__11.2.2사용자정의리소스정의(CRD)
__11.2.3스케줄러세부사항
__11.2.4스케줄링다시살펴보기
11.3컨트롤러매니저
__11.3.1스토리지
__11.3.2서비스계정과토큰
11.4쿠버네티스클라우드컨트롤러매니저(CCM)
11.5더읽을거리
요약

▣12장.etcd와컨트롤플레인
12.1참을성없는사람들을위한참고사항
__12.1.1프로메테우스를통한etcd성능의시각화
__12.1.2etcd튜닝시점파악하기
__12.1.3예제:etcd의빠른상태점검
__12.1.4etcdv3vs.v2
12.2데이터저장소로서의etcd
__12.2.1감시:다른데이터베이스에서쿠버네티스를실행할수있는가?
__12.2.2엄격한일관성
__12.2.3fsync오퍼레이션은etcd를일관성있게만든다
12.3쿠버네티스를위한etcd인터페이스살펴보기
12.4etcd는사실을정확