-
Istio Automation InjectionK8S 2021. 6. 17. 14:32
istio 서비스 매쉬를 구성하기 위해서는 데이터 플레인 각 pod안에 proxy 컨테이너가 있어야 한다.
프록시 컨테이너를 만드는 방법은 여러가지가 있다.
직접 yaml에 프록시 컨테이너를 정의해주는 방법이 있지만
기존의 yaml을 건드려야 하기 때문에 좋은 방법이 아니다.
그래서 자동으로 프록시 컨테이너를 포드에 inject해주는 방법을 사용한다.
이를 sidecar injection이라 하며 생성을 원하는 네임 스페이스에 레이블을 달면 알아서 프록시를 생성해준다.
참고로 기존에는 istio-sidecar-injector라는 포드가 injection을 하는 역할이었는데
현재 이 기능은 control plane의 istiod 포드가 담당한다.
kubectl get pods -n istio-system
이제 sidecar injection을 위한 레이블을 지정해보자.
원하는 네임스페이스에 injection label을 지정해줌으로써 자동으로 프록시를 injection해준다.
kubectl label ns default istio-injection=enabled
default namespace를 inspect하면 다음과 같이 label을 설정되어 있음을 확인할 수 있다.
반응형'K8S' 카테고리의 다른 글
Istio kiali를 이용한 카나리 구성과 virtual service, destination rule 정리 (0) 2021.06.21 K8S Operating System Upgrade (0) 2021.06.17 K8S command와 args (0) 2021.06.15 Dockerfile CMD vs ENTRYPOINT (0) 2021.06.15 K8S Multiple Scheduler 생성하기 (0) 2021.06.14