이스티오 첫걸음 [서비스 메시를 통한 연결, 보안, 제어 그리고 관찰]
- 원서명Istio: Up and Running: Using a Service Mesh to Connect, Secure, Control, and Observe (ISBN 9781492043782)
- 지은이리 칼코트(Lee Calcote), 잭 부처(Zack Butcher)
- 옮긴이이상근
- ISBN : 9791161754192
- 30,000원
- 2020년 05월 27일 펴냄
- 페이퍼백 | 340쪽 | 188*235mm
- 시리즈 : 클라우드 컴퓨팅
책 소개
소스 파일은 아래 깃허브 페이지에서 내려 받으실 수 있습니다.
(https://github.com/AcornPublishing/istio-up-and-running)
요약
사이드 프로젝트와 핵심 작업에 구별없이 서비스 메시는 클라우드 기본 인프라에 필요한 도구다. 이 책은 이스티오를 시작하려는 사람을 대상으로 하며, 이스티오와 서비스 메시를 다룬다.
이스티오를 시작하는 데 필요한 단계별 가이드를 제공하며, 각 개념은 이전에 다룬 개념을 바탕으로 논리적이고 체계적인 방식으로 설명한다. 이 책을 통해 이스티오의 주요 기능에 익숙해지고 자신 있게 이스티오를 배포할 수 있을 것이다.
추천의 글
"이 책은 커뮤니티에 엄청난 가치가 있을 것이다."
— 마일스 스테인하우져, 선임 클라우드 엔지니어
"서비스 메시가 클라우드 네이티브 단계에 들어오면서 이 탁월한 책은 현대적인 애플리케이션 관리의 여정에 많은 도움을 줄 것이다."
— Layer5의 서비스 메시 커뮤니티 관리자 기리쉬 랑가나단
이 책에서 다루는 내용
■ 이스티오가 다루는 관찰 가능성 문제 탐색
■ 요청 라우팅, 트래픽 전환, 결함 주입, 견고한 서비스 메시 실행에 필수적인 기타 기능
■ 원격 측정 정보 생성 및 수집
■ A/B, 블루/그린 및 카나리아를 포함한 다양한 배포 패턴
■ 이스티오 지원으로 실제 애플리케이션을 개발하고 배포하는 방법
이 책의 대상 독자
사이드 프로젝트든 핵심 작업이든 서비스 메시는 클라우드 기본 인프라에 필요한 도구다. 이 책은 이스티오를 시작하려는 독자를 위한 것이다. 독자가 도커나 쿠버네티스에 익숙할 것으로 기대하지만, 네트워킹 또는 리눅스에 관한 기본 지식이 있으면 이스티오를 배우기에 충분하다. Go나 다른 프로그래밍 언어 지식이 있으면 좋지만 꼭 필요하지는 않다.
프로메테우스(Prometheus), 예거(Jaeger), 그라파나(Grafana), 메셔리(Meshery), Envoy 및OpenTracing과 같은 다양한 클라우드 기본 도구와 주제를 다룬다. 이러한 도구와 주제에 익숙하다면 이상적이나 책 내용을 소화하는 데는 예비 지식만으로 충분하다.
목차
목차
- 1장. 서비스 메시 소개
- 서비스 메시란 무엇인가?
- 기초
- 서비스 메시로 항해하기
- 클라이언트 라이브러리: 첫 번째 서비스 메시?
- 왜 필요한가?
- 이미 컨테이너 플랫폼에 이런 것들을 갖고 있지 않은가?
- 지형과 생태계
- 지형
- 생태계
- 중요하며 오류 발생가능한 네트워크
- 서비스 메시의 가치
- 이스티오 서비스 메시
- 이스티오의 기원
- 이스티오의 현재 상태
- 빈도
- 릴리스
- 기능 현황
- 전망
- 이스티오가 아닌 것
- 단순한 마이크로서비스가 아니다
- 용어
- 서비스 메시란 무엇인가?
- 2장. 일관된 관찰 가능성에 대한 클라우드 네이티브 접근 방식
- 클라우드 네이티브는 무엇을 의미하나?
- 클라우드 네이티브로 가는 길
- 패키징과 배포
- 애플리케이션 아키텍처
- 개발과 운영 프로세스
- 클라우드 네이티브 인프라
- 관찰 가능성은 무엇인가?
- 원격 측정의 기둥들
- 로그
- 메트릭
- 추적
- 원격 측정 기둥 결합
- 분산 시스템에서 관찰 가능성이 왜 핵심인가?
- 서비스 메시를 통한 균일한 관찰 가능성
- 클라이언트 라이브러리
- 모니터링 시스템과 인터페이스
- 클라우드 네이티브는 무엇을 의미하나?
- 3장. 이스티오 한눈에 보기
- 서비스 메시 아키텍처
- 플레인
- 이스티오 컨트롤 플레인 구성 요소
- 서비스 프록시
- 이스티오 데이터 플레인 구성 요소
- 게이트웨이
- 확장성
- 사용자 정의 가능 사이드카
- 확장 가능 어댑터
- 규모와 성능
- 배포 모델
- 4장. 이스티오 배포
- 이스티오를 위한 환경 준비
- 설치 환경으로서 도커 데스크톱
- 도커 데스크톱 구성
- 이스티오 설치
- 이스티오 설치 옵션
- 이스티오의 사용자 정의 리소스 등록
- 이스티오 컨트롤 플레인 구성 요소 설치
- Bookinfo 샘플 애플리케이션 배포
- 자동 사이드카 주입으로 샘플 앱 배포
- 샘플 앱과 네트워킹
- 이스티오 제거
- Helm 기반 설치
- Helm 설치
- Helm 템플릿으로 설치
- Helm 기반 설치 확인
- Helm 기반 설치 제거
- 이스티오를 위한 환경 준비
- 5장. 서비스 프록시
- 서비스 프록시란 무엇인가?
- iptables 기초
- Envoy 프록시 개요
- 왜 Envoy인가?
- 이스티오의 Envoy
- 사이드카 주입
- 수동 사이드카 주입
- 애드혹 사이드카 주입
- 자동 사이드카 주입
- 쿠버네티스 초기화 컨테이너
- 사이드카 리소스 관리
- Envoy의 기능
- 핵심 구성 요소
- 인증서와 트래픽 보호
- 서비스 프록시란 무엇인가?
- 6장. 보안과 ID
- 접근 제어
- 인증
- 권한 부여
- ID
- SPIFFE
- 키 관리 아키텍처
- 시타델
- 노드 에이전트
- Envoy
- 파일럿
- mTLS
- 이스티오 인증 정책 구성
- 인증 정책: mTLS 구성
- 권한 부여 정책: 누가 누구와 대화할 수 있는지 구성
- 접근 제어
- 7장. 파일럿
- 파일럿 구성
- 메시 구성
- 네트워킹 구성
- 서비스 발견
- 구성 제공
- 파일럿 디버깅과 문제 해결
- istioctl
- 파일럿 문제 해결
- 추적 구성
- 리스너
- 라우트
- 클러스터
- 파일럿 구성
- 8장. 트래픽 관리
- 이스티오 트래픽 흐름 이해
- 이스티오 네트워킹 API 이해
- ServiceEntry
- DestinationRule
- VirtualService
- Gateway
- 트래픽 조정과 라우팅
- 복원성
- 로드 밸런싱 전략
- 이상치 탐지
- 재시도8
- 타임아웃
- 결함 주입
- 인그레스와 이그레스
- 인그레스
- 이그레스
- 9장. 메시의 믹서와 정책
- 아키텍처
- 정책 시행
- 믹서 정책 작동 방식의 이해
- 원격 측정 보고
- 속성
- 보고서 전송
- 캐시 확인
- 어댑터
- 프로세스 내 어댑터
- 프로세스 외부 어댑터
- 믹서 정책 작성과 어댑터 사용
- 믹서 구성
- OPA 어댑터
- 프로메테우스 어댑터
- 아키텍처
- 10장. 원격 측정
- 어댑터 모델
- 원격 측정 보고
- 메트릭
- 메트릭을 수집하도록 믹서 구성
- 메트릭 수집 설정과 메트릭 질의
- 추적
- 추적 비활성화
- 로그
- 메트릭
- 시각화
- 어댑터 모델
- 11장. 이스티오 디버깅
- 이스티오 구성 요소 검사
- 관리 플레인 문제 해결
- kubectl에 한 번 더 베팅하기
- 워크로드 준비
- 애플리케이션 구성
- 네트워크 트래픽 및 포트
- 서비스와 배포
- 파드
- 이스티오 설치와 업그레이드, 제거
- 설치
- 업그레이드
- 제거
- 믹서 문제 해결
- 파일럿 문제 해결
- 갤리 디버깅
- Envoy 디버깅
- Envoy 관리 콘솔
- 503 또는 404 요청
- 사이드카 주입
- 시타델 디버깅
- 버전 호환성
- 12장. 애플리케이션 배포를 위한 실제 고려 사항
- 컨트롤 플레인 고려 사항
- 갤리
- 파일럿
- 믹서
- 시타델
- 사례 연구: 카나리아 배포
- 클러스터 간 배포
- 클러스터 간 배포
- 컨트롤 플레인 고려 사항
- 13장. 고급 시나리오
- 고급 토폴로지 유형
- 단일 클러스터 메시
- 멀티 클러스터 메시
- 사례
- 토폴로지 선택
- 교차 클러스터 또는 멀티 클러스터?
- 교차 클러스터 구성
- DNS 구성과 BookInfo 배포
- 고급 토폴로지 유형
도서 오류 신고
정오표
정오표
[p. 72 아래에서 8행]
쿠버네트스
->
쿠버네티스