이스티오 스케일링다중 클러스터 서비스 메시지금까지는 단일 클러스터의 메시 내에서 활성화하는 이스티오의 여러 기능을 살펴봤다.그러나 서비스 메시는 단일 클러스터에 종속되지 않는다.서비스 메시는 여러 클러스터에 걸쳐 있을 수 있으며, 클러스터 모두에 동일한 기능을 제공할 수 있다.사실 메시의 가치는 워크로드가 많아질수록 증가한다. 중제목 [실습 환경 구성] k8s(1.23.17) 배포 : west k8s 클러스터 배포 , east k8s 클러스터 배포west k8s 클러스터 배포# kind create cluster --name west --image kindest/node:v1.23.17 --kubeconfig ./west-kubeconfig --config - east k8s 클러스터 배포# kind c..
데이터 플레인 트러블 슈팅잘못 설정한 워크로드 트러블슈팅하기 Troubleshooting a misconfigured workloadistioctl과 키알리로 잘못된 설정 감지 및 방지하기 Detecting and preventing misconfigurations using istioctl and Kialiistioctl을 사용해 서비스 프록시 설정 조사하기 Using istioctl to investigate the service proxy configuration엔보이 로그 이해하기 Making sense of Envoy logs텔레메트리를 사용해 앱에 대한 통찰력 얻기 Using telemetry to gain insights into apps [실습 환경 구성] k8s(1.23.17) 배포 : ..
애플리케이션 네트워크 보안의 필요성 최종 사용자 인증 및 인가 JSON 웹 토큰이란 무엇인가?JWT는 클라이언트를 서버에 인증하는 데 사용하는 간단한 클레임 표현헤더 : 유형 및 해싱 알고리듬으로 구성페이로드 : 사용자 클레임 포함서명 : JWT의 진위 여부를 파악하는 데 사용즉 헤더, 페이로드, 서명이 점(.)으로 구분되고 Base64 URL로 인코딩되기 때문에 JWT는 HTTP 요청으로 사용하기에 매우 적합#cat ./ch9/enduser/user.jwt# 디코딩 방법 1jwt decode $(cat ./ch9/enduser/user.jwt)# 디코딩 방법 2cat ./ch9/enduser/user.jwt | cut -d '.' -f1 | base64 --decode | sed 's/$/}/' |..
애플리케이션 네트워크 보안의 필요성 서비스 간 트래픽 인가하기인가란 인증된 주체가 리소스 접근, 편집, 삭제 같은 작업을 수행하도록 허용됐는지 정의하는 절차인가란 인증된 주체가 리소스 접근, 편집, 삭제 같은 작업을 수행하도록 허용됐는지 정의하는 절차이스티오에는 AuthorizationPolicy 리소스가 있는데, 이 리소스는 서비스 메시에 메시 범위, 네임스페이스 범위, 워크로드별 접근 정책을 정의하는 선언전 API 이스티오에서 인가 이해하기 : AuthorizationPolicy - selector, rules(from, to, when), action각 서비스와 함께 배포되는 서비스 프록시가 인가 또는 집행 enforcement 엔진서비스 프록시가 요청을 거절하거나 허용할지 여부를 판단하기 위한..
애플리케이션 네트워크 보안의 필요성 서비스 간 인증 Service-to-service authentication - SPIFFE 프레임워크최종 사용자 인증 End-user authentication - JWT 등 자격증명인가 Authorization - 작업 수행 승인/거부 [실습 환경 구성] k8s(1.23.17) 배포 : NodePort(30000 HTTP, 30005 HTTPS)#git clone https://github.com/AcornPublishing/istio-in-actioncd istio-in-action/book-source-code-masterpwd # 각자 자신의 pwd 경로code .# 아래 extramounts 생략 시, myk8s-control-plane 컨테이너 sh/ba..
관찰가능성 Observability : Visualizing network behavior with Grafana, Jaeger, and Kiali 이스티오의 데이터 플레인과 컨트롤 플레인 구성 요소가 아주 유용한 대량의 운영 메트릭을 어떻게 노출하는지, 이를 프로메테우스 같은 시계열 시스템에 어떻게 긁어올 수 있는지 등을 살펴봤다.지금부터는 그라파나와 키알리 같은 도구를 사용해 이런 메트릭들을 시각화해본다.이는 메시 그 자체와 더불어 메시 내 서비스들의 동작을 더 잘 이해하기 위해서다.또한 분산 트레이싱 도구를 사용해 네트워크 호출 그래프를 시각화하는 방법도 살펴본다.Using Grafana to visualize Istio service and control-plane metrics 그라파나로 이스티..
관찰가능성 Observability: Understanding the behavior of your services1. 배경클라우드 기반 인프라와 마이크로서비스 아키텍처의 도입으로 시스템의 복잡성이 급격히 증가함수십~수백 개의 서비스가 서로 통신하면서 장애 가능성과 성능 저하 지점이 많아짐2. 관찰 가능성의 필요성시스템이 커질수록 일부 구성 요소는 성능 저하 상태로 운영될 가능성이 높음따라서 애플리케이션의 안정성 및 복원력 강화뿐 아니라, 실행 중 실제로 무슨 일이 일어나는지 알 수 있는 도구와 계측 기법이 필수적임3. 관찰 가능성이 주는 효과실시간 이해도 향상: 서비스와 인프라 상태를 자신 있게 파악 가능.문제 감지 및 디버깅 속도 향상: 예상치 못한 상황을 빠르게 분석.MTTR 개선: 장애 발생 시 ..