Istio in Action : 서비스 메시 표준, 이스티오 완벽 해부 - 에이콘 클라우드 컴퓨팅 시리즈
Description
분산형 서비스를 관리하는 강력한 도구인 이스티오 서비스 메시를 소개한다. 이 책은 단순한 기능적 소개를 넘어 서비스 메시의 필요성, 아키텍처를 소개하고 실용적이고 복잡한 사용사례까지도 다루고 있다. 형식 면에서는 실용적인 예제와 다이어그램을 통해 이해하기 쉽게 저술됐다. 이스티오 설치 및 구성, 트래픽 관리, 보안 구축, 가시성 확보 등의 주제를 포괄적으로 다루며, 개발자와 운영 엔지니어 모두에게 도움이 될 책이다.
저자

크리스티안포스타,라이너말로쿠

저자:크리스티안포스타(ChristianPosta)
Solo.io의글로벌필드CTO(GlobalFieldCTO)이자부사장이다.클라우드네이티브커뮤니티에서는저자,블로거(https://blog.christianposta.com),강연자이자서비스메시와클라우드네이티브생태계에속한다양한오픈소스프로젝트의기여자로잘알려져있다.엔터프라이즈와초대형IT기업에서경험을쌓았으며,현재는조직들이대규모(large-scale)의탄력적인클라우드네이티브분산아키텍처를구축하고배포하는데도움을주고있다.분산시스템개념,마이크로서비스,데브옵스,클라우드네이티브애플리케이션설계로팀을멘토링하고훈련시키면서성공으로이끄는것을즐긴다.

저자:라이너말로쿠(RinorMaloku)
Solo.io의엔지니어로,서비스메시와같은네트워킹솔루션을채택하는고객에게컨설팅을제공한다.이전에는레드햇에근무하면서서비스의고가용성을보장하기위한미들웨어소프트웨어를구축했으며,프리랜서로활동하면서클라우드컴퓨팅기술의잠재력을최대한활용하려고노력하는여러DAX30회원사에컨설팅을제공했다.

역자:연주영
고려대학교컴퓨터학과를졸업한후센드버드에서데브옵스엔지니어로재직중이다.데브옵스철학을실무에적극활용하며,AWS의전세계11개리전에서70개이상의쿠버네티스클러스터를구축하고운영하면서클라우드경험을쌓았다.최근에는인프라지식을바탕으로,가상머신기반애플리케이션을쿠버네티스로마이그레이션하면서운영도구를개발하는업무를담당하고있다.새로운기술을배우고효율적인시스템을구축하는것을좋아하며,계속성장하기위해노력중이다.

목차


1부이스티오이해하기
1장.서비스메시소개하기
1.1속도를높이며마주하는문제들
1.1.1클라우드인프라는신뢰할수없다
1.1.2서비스상호작용을복원력있게만들기
1.1.3일어나고있는일실시간으로이해하기
1.2이과제를애플리케이션라이브러리로해결해보기
1.2.1애플리케이션별라이브러리의단점
1.3이런관심사를인프라에전가하기
1.31애플리케이션인식서비스프록시
1.3.2엔보이프록시만나기
1.4서비스메시란무엇인가?
1.5이스티오서비스메시소개
1.5.1서비스메시와엔터프라이즈서비스버스의관계
1.5.2서비스메시와API게이트웨이의관계
1.5.3마이크로서비스가아닌아키텍처에도이스티오를사용할수있는가?
1.5.4이스티오가분산아키텍처에적합한경우
1.5.5서비스메시를사용할때의단점은무엇인가?
요약
2장.이스티오첫걸음
2.1쿠버네티스에이스티오배포하기
2.1.1예제에서도커데스크톱사용하기
2.1.2이스티오배포판받기
2.1.3쿠버네티스에이스티오구성요소설치하기
2.2이스티오컨트롤플레인알아보기
2.2.1istiod
2.2.2ingress및egress게이트웨이
2.3서비스메시에첫애플리케이션배포해보기
2.4복원력,관찰가능성,트래픽제어기능을갖춘이스티오의능력살펴보기
2.4.1이스티오관찰가능성
2.4.2복원력을위한이스티오
2.4.3트래픽라우팅을위한이스티오
요약
3장.이스티오의데이터플레인:엔보이프록시
3.1엔보이프록시란무엇인가?
3.1.1엔보이의핵심기능
3.1.2엔보이와다른프록시비교
3.2엔보이설정하기
3.2.1정적설정
3.2.2동적구성
3.3엔보이인액션
3.3.1엔보이의AdminAPI
3.3.2엔보이요청재시도
3.4엔보이는어떻게이스티오에맞는가?
요약
2부.서비스네트워크트래픽보안,관찰,제어하기
4장.이스티오게이트웨이:클러스터로트래픽들이기
4.1트래픽인그레스개념
4.1.1가상IP:서비스접근단순화
4.1.2가상호스팅:단일접근지점의여러서비스
4.2이스티오인그레스게이트웨이
4.2.1Gateway리소스지정하기
4.2.2VirtualService로Gateway라우팅하기
4.2.3전체적인트래픽흐름개요
4.2.4이스티오인그레스게이트웨이vs
4.2.5이스티오인그레스게이트웨이vs
4.3게이트웨이트래픽보안
4.3.1TLS를사용한HTTP트래픽
4.3.2HTTPS로HTTP리다이렉트
4.3.3상호TLS를사용한HTTP트래픽
4.3.4여러가상호스트를TLS로서빙하기
4.4TCP트래픽
4.4.1이스티오게이트웨이에서TCP포트노출하기
4.4.2SNI통과를사용한트래픽라우팅
4.5운영팁
4.5.1게이트웨이책임나누기
4.5.2게이트웨이주입
4.5.3인그레스게이트웨이액세스로그
4.5.4게이트웨이설정줄이기
요약
5장.트래픽제어:세밀한트래픽라우팅
5.1새로운코드배포의위험줄이기
5.1.1배포vs
5.2이스티오로요청라우팅하기
5.2.1작업공간청소
5.2.2catalog서비스v1배포하기
5.2.3catalog서비스v2배포하기
5.2.4모든트래픽을catalog서비스v1으로라우팅하기
5.2.5특정요청을v2로라우팅하기
5.2.6호출그래프내깊은위치에서라우팅
5.3트래픽전환
5.3.1Flagger로카나리릴리스하기
5.4위험을더욱줄이기:트래픽미러링
5.5이스티오의서비스디스커버리기능을사용해클러스터외부의서비스로라우팅하기
요약
6장.복원력:애플리케이션네트워킹문제해결하기
6.1애플리케이션에복원력구축하기
6.1.1애플리케이션라이브러리에복원력구축하기
6.1.2이스티오로이런문제해결하기
6.1.3분산형복원력구현
6.2클라이언트측로드밸런싱
6.2.1클라이언트측로드밸런싱시작하기
6.2.2시나리오설정하기
6.2.3다양한클라이언트측로드밸런싱전략테스트하기
6.2.4다양한로드밸런싱알고리듬이해하기
6.3지역인식로드밸런싱
6.3.1지역인식로드밸런싱실습
6.3.2가중치분포로지역인식로드밸런싱제어강화
6.4투명한타임아웃과재시도
6.4.1타임아웃
6.4.2재시도
6.4.3고급재시도
6.5이스티오를이용한서킷브레이킹
6.5.1커넥션풀제어로느린서비스에대응하기
6.5.2이상값감지로비정상서비스에대응하기
요약
7장.관찰가능성:서비스의동작이해하기
7.1관찰가능성이란무엇인가?
7.1.1관찰가능성vs
7.1.2이스티오는어떻게관찰가능성을돕는가?
7.2이스티오메트릭살펴보기
7.2.1데이터플레인의메트릭
7.2.2컨트롤플레인의메트릭
7.3프로메테우스로이스티오메트릭긁어오기
7.3.1프로메테우스와그라파나설정하기
7.3.2이스티오컨트롤플레인과워크로드를긁어가도록
프로메테우스오퍼레이터설정하기
7.4이스티오표준메트릭커스터마이징하기
7.4.1기존메트릭설정하기
7.4.2새로운메트릭만들기
7.4.3새속성으로호출그룹화하기
요약
8장.관찰가능성:그라파나,예거,키알리로네트워크동작시각화하기
8.1그라파나를사용해이스티오서비스와컨트롤플레인메트릭시각화하기
8.1.1이스티오의그라파나대시보드설정하기
8.1.2컨트롤플레인메트릭보기
8.1.3데이터플레인메트릭보기
8.2분산트레이싱
8.2.1분산트레이싱은어떻게작동하는가?
8.2.2분산트레이싱시스템설치하기
8.2.3분산트레이싱을수행하도록이스티오설정하기
8.2.4분산트레이싱데이터보기
8.2.5트레이스샘플링,강제트레이스,커스텀태그
8.3키알리를이용한시각화
8.3.1키알리설치하기
8.3.2결론
요약
9장.마이크로서비스통신보호하기
9.1애플리케이션네트워크보안의필요성
9.1.1서비스간인증
9.1.2최종사용자인증
9.1.3인가
9.1.4모놀리스와마이크로서비스의보안비교
9.1.5이스티오가SPIFFE를구현하는방법
9.1.6이스티오보안요약
9.2자동상호TLS
9.2.1환경설정하기
9.2.2이스티오의PeerAuthentication리소스이해하기
9.3서비스간트래픽인가하기
9.3.1이스티오에서인가이해하기
9.3.2작업공간설정하기
9.3.3워크로드에정책적용시동작변경
9.3.4전체정책으로기본적으로모든요청거부하기
9.3.5특정네임스페이스에서온요청허용하기
9.3.6미인증레거시워크로드에서온요청허용하기
9.3.7특정서비스어카운트에서온요청허용하기
9.3.8정책의조건부적용
9.3.9값비교표현식이해하기
9.3.10인가정책이평가되는순서이해하기
9.4최종사용자인증및인가
9.4.1JSON웹토큰이란무엇인가?
9.4.2인그레스게이트웨이에서의최종사용자인증및인가
9.4.3RequestAuthentication으로JWT검증하기
9.5커스텀외부인가서비스와통합하기
9.5.1외부인가실습
9.5.2이스티오에외부인가설정하기
9.5.3커스텀AuthorizationPolicy리소스사용하기
요약
3부.이스티오운영
10장.데이터플레인트러블슈팅하기
10.1가장흔한실수:잘못설정한데이터플레인
10.2데이터플레인문제식별하기
10.2.1데이터플레인이최신상태인지확인하는방법
10.2.2키알리로잘못된설정발견하기
10.2.3istioctl로잘못된설정발견하기
10.3엔보이설정에서수동으로잘못된설정발견하기
10.3.1엔보이관리인터페이스
10.3.2istioctl로프록시설정쿼리하기
10.3.3애플리케이션문제트러블슈팅하기
10.3.4ksniff로네트워크트래픽검사
10.4엔보이텔레메트리로자신의애플리케이션이해하기
10.4.1그라파나에서실패한요청비율찾기
10.4.2프로메테우스를사용해영향받는파드쿼리하기
요약
11장.컨트롤플레인성능튜닝하기
11.1컨트롤플레인의주요목표
11.1.1데이터플레인동기화단계이해하기
11.1.2성능을결정짓는요소
11.2컨트롤플레인모니터링하기
11.2.1컨트롤플레인의네가지황금신호
11.3성능튜닝하기
11.3.1워크스페이스준비하기
11.3.2최적화전성능측정하기
11.3.3이벤트무시하기:디스커버리셀렉터로디스커버리범위줄이기
11.3.4이벤트배치처리및푸시스로틀링속성
11.4성능튜닝가이드라인
요약
4부.조직에서의이스티오
12장.조직내에서이스티오스케일링하기
12.1다중클러스터서비스메시의이점
12.2다중클러스터서비스메시개요
12.2.1이스티오다중클러스터배포모델
12.2.2다중클러스터배포에서워크로드는어떻게찾는가?
12.2.3클러스터간워크로드연결
12.2.4클러스터간공통신뢰
12.3다중클러스터,다중네트워크,다중컨트롤플레인서비스메시개요
12.3.1다중클러스터배포모델선택하기
12.3.2클라우드인프라준비하기
12.3.3플러그인CA인증서설정하기
12.3.4각클러스터에컨트롤플레인설치하기
12.3.5클러스터간워크로드디스커버리활성화하기
12.3.6클러스터간연결설정하기
12.3.7클러스터간로드밸런싱
요약
13장.가상머신워크로드를메시에통합하기
13.1이스티오의가상머신지원
13.1.1가상머신에서의사이드카프록시설치및설정단순화하기
13.1.2가상머신고가용성
13.1.3메시내서비스의DNS해석
13.2인프라준비하기
13.2.1서비스메시준비하기
13.2.2가상머신프로비저닝
13.3가상머신까지메시확장
13.3.1istiod와클러스터서비스들을가상머신에노출하기
13.3.2WorkloadGroup으로워크로드그룹나타내기
13.3.3가상머신에istio-agent설치및설정하기
13.3.4클러스터서비스로트래픽라우팅하기
13.3.5트래픽을WorkloadEntry로라우팅하기
13.3.6컨트롤플레인이가상머신설정:상호인증강제
13.4DNS프록시이해하기
13.4.1

출판사 서평

이책에서다루는내용

이스티오리소스에대한포괄적인설명
서비스메시기능을시연하는실용적인예제
웹어셈블리를활용한이스티오확장
트래픽라우팅과관찰가능성
가상머신의메시통합

이책의대상독자

사용자대상웹애플리케이션,API,백엔드서비스같은분산서비스를운영중이거나운영할계획이있는개발자,아키텍트,서비스운영자를대상으로한다.최종사용자에게고가용성서비스를제공할때이책이도움이될것이다.혹은조직내많은개발팀에게인프라와로그관리,모니터링,컨테이너오케스트레이션등의지원요소를제공하는플랫폼엔지니어링팀의일원이라면,이책은앱을복원력있고안전하고관찰가능하게만들수있으면서새로운기능을출시하는데따르는위험을줄일수있는도구를사용자에게제공하는방법을보여준다.

이스티오를테스트또는스테이징환경에서사용하고있지만작동원리에대해많이알지못한다면,이책은이스티오의구성요소를명확히이해하는데도움이될것이다.특히후반부에서는조직에서서비스메시를어떻게확장하는지,동작이예상과다를때어떻게트러블슈팅하는지,어떻게회사의필요에맞게커스터마이징하는지를보여준다.

지난3년간현장에서쌓은경험을이책에녹여내기위해심혈을기울였기때문에이스티오전문가인독자도이책을유용하게활용할수있을것이다.컨테이너구축이처음이거나쿠버네티스
디플로이먼트(deployment),파드,서비스가무엇인지잘모른다면,이책이아직적합하지않을수있다.다행히처음시작하는데도움이되는자료가많이있다.여기서는마르코룩샤(MarkoLuksa)의『쿠버네티스인액션』(에이콘,2020)을강력히추천한다.이책은쿠버네티스에대한빈틈없는입문서일뿐아니라흥미로운내용을담고있다.쿠버네티스의기초와관련리소스,쿠버네티스컨트롤러의동작방식까지이해하고나면이책으로다시돌아와이스티오서비스메시를깊이파고들수있을것이다.

뿐만아니라네트워킹에대한기본적인이해도필요하다.여기서‘기본적인이해’란말그대로기초적인수준의지식을말한다.OSI모델의네트워크계층(3계층)과전송계층(4계층)에친숙하고이계층들이애플리케이션계층(7계층)과무엇이다른지잘알고있다면,이책을읽을준비가된것이다.

이책의구성

총4개부,14개장으로구성돼있다.1부는서비스메시의개념을소개하고,이스티오가서비스메시를어떻게구현하는지설명한다.1부에속하는3개장에서는이스티오의아키텍처를알아보고,엔보이가그안에서어떤역할을하고이스티오를사용했을때조직이어떤이점을얻을수있는지알아본다.

1장에서는이스티오의장점과서비스메시도입이조직에가져다줄수있는가치를소개한다.

2장은쿠버네티스클러스터에이스티오를설치하는실습튜토리얼을보여준다.첫번째애플리케이션을배포하고메시에통합한후,이를이스티오의커스텀리소스로설정해본다.또한데모애플리케이션을사용해이스티오의기본기능을개괄적으로설명하고트래픽관리,관찰가능성,보안을다룬다.

3장은엔보이를집중해살펴본다.엔보이가어떻게등장했는지,어떤문제를해결하는지,서비스메시아키텍처에서어떤역할을하는지등을설명한다.

2부에서는이스티오를깊이있게다룬다.실용적인예제로초점을맞춰‘클러스터로들어오는트래픽을보호하는방법은무엇인가?’,‘서비스를더복원력있게만드는방법은무엇인가?’,‘서비스프록시가생성하는텔레메트리를사용해시스템을관찰가능하게만드는방법은무엇인가?’등의주요운영관련질문에답해본다.2부는6개장으로구성돼있다.

4장은이스티오인그레스게이트웨이를사용해퍼블릭네트워크에서서비스로트래픽을안전하게라우팅하는방법을설명한다(일명north-south트래픽).

5장은트래픽을클러스터에허용한이후의과정을다루며,VirtualService와DestinationRule을사용해트래픽을세밀하게라우팅하는방법을보여준다.세밀한트래픽라우팅덕분에새소프트웨어를릴리스할때위험을줄여주는복잡한배포패턴을사용할수있다.

6장에서는애플리케이션팀에게이스티오가어떤이점이있는지살펴본다.재시도,회로차단,리전(region)간로드밸런싱,지역성인식로드밸런싱기능을서비스메시에서구현해서비스를견고하게만드는방법을설명한다.

7장에서는이스티오가메트릭,트레이싱,로그를생성해서비스를관찰가능하게만드는방법을설명한다.여기서는서비스프록시가생성하는메트릭,메트릭이기록하는정보,기록하는정보를커스터마이징하는방법을자세히살펴본다.

8장에서는수집된데이터를이해하는데도움이되는텔레메트리시각화도구의사용법을다룬다.이를위해메트릭을프로메테우스(Prometheus)로수집하고그라파나(Grafana)로시각화한다.또한서비스들을거치는요청의트레이스를예거(Jaeger)로연결하고,키알리(Kiali)가이정보들을어떻게결합해메시안의서비스문제해결을간편하게만드는지보여준다.

9장에서는이스티오가서비스간트래픽을어떻게보호하는지,서비스가어떻게자신의ID를부여받는지,그ID를어떻게사용해접근제어를구현하고잠재적인공격범위를줄이는지를자세히설명한다.

3부는서비스를운영하는단계에초점을맞췄다.따라서데이터플레인에서발생하는문제를해결하고컨트롤플레인의안정성과성능을유지하는방법을주로다룬다.이부분을마무리하면,이스티오의내부구조를충분히이해하게돼서문제를스스로발견하고해결하는능력을갖추게될것이다.

10장에서는Istioctl,키알리등의도구와수집돼시각화된텔레메트리를사용해데이터플레인의문제를해결하는방법을보여준다.

11장에서는이스티오의성능에영향을미치는요소들을다루며,이스티오를어떻게설정해야컨트롤플레인의성능을높일수있는지보여준다.이는견고한서비스메시의토대가된다.

마지막으로4부에서는이스티오를커스터마이징하는방법을소개한다.기업들은서로다른클러스터,서로다른네트워크또는클라우드네이티브워크로드와레거시워크로드의혼합과같이다양한환경에서서비스를운영하고있다.4부를마치고나면,워크로드를단일메시로통합하고웹어셈블리를활용해자신만의요구사항에맞게메시의동작을커스터마이징하는방법을알게될것이다.

12장은서로다른쿠버네티스클러스터에서실행중인워크로드를연결하는방법을보여준다.이를테면다른클라우드제공자,온프레미스(on-premise),또는하이브리드클라우드에서실행되는클러스터를연결하는방법이다.

13장에서는가상머신에서실행되는레거시워크로드를메시에통합하고메시의복원력과고가용성기능을해당워크로드에확장하는방법을보여준다.

14장에서는기존엔보이기능이나루아스크립트및웹어셈블리코드를사용해이스티오의기능을확장하고커스터마이징하는방법을설명한다.

지은이의말

소프트웨어개발은어렵다.네트워크를통해서로다른서비스를연결하는것은더욱까다롭다.네트워크로패킷,메시지,요청을보낼때는그결과를보장할수없다.요청이도착할까?얼마나걸릴까?통신이실패한다면누군가알아챌수있을까?

도커와쿠버네티스는마이크로서비스같은분산형서비스아키텍처를지원하는데많은역할을했지만,기존의통신문제를악화시키기도했다.서비스하나가문제를일으키면모든것이멈출수있다.

마이크로서비스를도입하려는전세계조직과함께일하면서,팀들이이런통신문제를지속적으로고민하고해결하는것이무척어려운일이라는사실을알게됐다.통신문제에는다음과같은많은질문거리가있다.서비스디스커버리는어떻게할까?타임아웃은?재시도는?회로차단은?트레이싱은?인증은?넷플릭스,트위터,구글과같은대형클라우드기업은초기의마이크로서비스아키텍처를성공적으로개척했다.이회사들은통신과관련된문제를해결하기위해많은개발자도구와인프라를직접만들어야했는데,다행히도상당부분을오픈소스로공개했다.다른조직에서도NetflixOSS스택이나트위터피네이글(Finagle)을사용할수있을까?물론사용할수있고,누군가는그렇게했다.하지만그후악몽같은운영문제가시작됐다.

예를들어NetflixOSS스택은주로자바개발자를위해작성됐다.그럼NodeJS,Go,파이썬개발팀은어떻게해야할까?이팀들은라이브러리를직접만들거나인터넷에서여러조각을그러모아기능을구현해야했으며,이‘네트워킹’코드를자신의비즈니스로직에섞어넣어야했다.이런접근법은전이적종속성을추가하고코드를어지럽히며,수정하기어렵게만들었다.이렇게애플리케이션네트워킹라이브러리가포함된서비스아키텍처를운영하고업그레이드하고패치하는것은,특히이를다양한프로그래밍언어에일관되게수행하는것은극히복잡하고오류가발생하기쉬운일이었다.

서비스메시는이런애플리케이션-네트워킹문제를더깔끔하게해결하는방법이다.서비스메시를이용하면애플리케이션-네트워킹로직을전용인프라로추상화해언어에상관없이모든서비스에적용할수있다.이스티오는확장성있고성숙하며강력한서비스메시구현체로,IBM과구글의프로젝트에서시작됐다.나는2017년1월에이스티오팀을소개받은이후아주초기부터프로젝트에참여했다.2018년말에는서비스메시기술에전념하고애플리케이션네트워킹의발전에힘쓰고자스타트업인Solo.io에글로벌필드CTO로합류했다.

스타트업을밑바닥부터성장시키는것,기술의경계를넓히는것과이주제에대해깊이있는책을저술하는작업을병행하는것은쉬운일이아니었다.그래서집필작업을진전시키는데도움을줄헌신적이고열정적인사람이필요했다.원고를절반가량집필했을무렵매닝출판사편집팀과나는라이너말로쿠를이책의공동저자로초대했다.우리는커뮤니티에서활동하고Solo.io에서고객(그중일부는전세계에서이스티오운영규모가가장크다)과함께일하면서많은시간을보냈기때문에,현실의경험을바탕으로이스티오에대한훌륭한자료를엮어낼수있었다.이책이여러분에게이스티오의가치와강력함을보여줄뿐아니라다른사례들처럼프로덕션에이스티오를채택하는과정에서편안함을느끼게해주길기대한다.

옮긴이의말

최근몇년간서비스메시에대한필요성이크게증가하고있습니다.마이크로서비스와클라우드네이티브애플리케이션시대가도래하면서분산시스템은더욱복잡해지고있으며,동시에급변하는고객의요구에빠르게대응하기위해애자일방법론의중요성도날로커지고있습니다.이러한두흐름이맞물리면서개발자의부담을줄이고효과적으로시스템을관리할수있는방법에대한요구가증가하고있으며,그해결책으로서서비스메시의중요성이대두됐습니다.

서비스메시란무엇이며,왜필요할까요?마이크로서비스아키텍처에서는수많은서비스가서로통신해야합니다.이과정에서보안,로드밸런싱,모니터링등의과제가생기게되는데,서비스메시는이러한과제를해결하는기술입니다.특히서비스메시를사용하면각서비스간의통신을일관되게관리하고제어할수있어시스템의복잡성을크게줄일수있습니다.

그렇다면왜여러서비스메시중에서이스티오를선택해야할까요?이스티오는서비스메시기술의사실상표준으로자리잡고있습니다.오픈소스기술을채택할때커뮤니티의생명력은매우중요한요소인데,커뮤니티의활동이멈추면오픈소스로서의강점을상실하기때문입니다.이스티오는커뮤니티가대단히활발하며,IT최전선에있는기업들,예를들어카카오,토스,크래프톤등이채택하고있어신뢰할만한기술임을증명하고있습니다.

이책의매력은무엇일까요?이스티오에대한정보의원천으로공식문서가있지만,대부분의문서가개별적인기능만을다루기때문에체계적인학습에는한계가있습니다.게다가이러한