개발/AWS
[EKS] 환경 구축하기4 - Istio 설치
피클s
2022. 1. 6. 13:55
Istio 설치는 선택사항입니다.
서비스 메시를 구현하는 대표적인 오픈소스 라이브러리 입니다.
이 글에서는 상세한 내용은 다루지 않겠습니다.
모든 명령어는 Bastion 인스턴스에서 이루어집니다.
1. istioctl 설치
https://istio.io/latest/docs/setup/getting-started/#download
$ curl -L https://istio.io/downloadIstio | sh -
$ cd istio-1.12.1 # 버전이 다를 수 있습니다.
$ export PATH=$PWD/bin:$PATH
$ istioctl install --set profile=demo -y # istio profile demo를 설치합니다. (istiod, ingress, egress)
$ kubectl label namespace default istio-injection=enabled # default 네임스페이스에 Pod를 생성할 경우 envoy proxy를 주입합니다.
2. bookinfo sample 실행
istio에서 제공하는 샘플앱이 있습니다.
$ kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
$ kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
istio-ingressgateway 의 EXTERNAL-IP 에 로드밸런서 접속주소가 있을 것입니다.
$ kubectl get svc -n istio-system
EC2 > 로드밸런서 의 DNS이름에서 확인할 수 있습니다.
<로드밸런서의 DNS이름>/productpage
로 접속할 수 있습니다.
3. Clean up
$ kubectl delete -f samples/bookinfo/platform/kube/bookinfo.yaml
$ kubectl delete -f samples/bookinfo/networking/bookinfo-gateway.yaml
$ istioctl manifest generate --set profile=demo | kubectl delete --ignore-not-found=true -f -
$ istioctl tag remove default
$ kubectl delete namespace istio-system
$ kubectl label namespace default istio-injection-