2017-09-21 20 views
1

Istio가 활성화 된 서비스 Ahttp이라는 포트 8080을 노출한다고 가정 해보십시오. Istio는 메쉬 내부에서 액세스 할 때 L7로드 밸런싱을 수행합니다.메쉬 외부의 서비스에서 Istio가 활성화 된 K8S 포드에 액세스

Istio 사이드카가없는 B 포드/서비스에서이 8080 포트에 액세스하는 방법이 있는지 알고 싶습니다. 이러한 경우 트래픽은 다음과 같습니다 B -> A Envoy -> A 또는 B -> A 이 방법은, 내가 이름이되지 않는 A의 포트에 액세스 할 수있어 http

(즉, 단지 L4로드 밸런싱은 장소에) 내 특정 유스 케이스는 Prometheus Operator가 메쉬에서 직접 실행되는 서비스를 긁어내는 Prometheus (메쉬에서 실행되지 않음)를 가지고 있다는 것입니다 (Istio Mixer는 관련이 없으며 서비스는 자체 비즈니스 로직 메트릭을 노출합니다). 해당 서비스가 해당 포트의 이름을 지정하지 않은 경우에만 나를 위해 작동합니다. http.

답변

0

인증 (mTLS)이 활성화되어있는 경우 Istio는 서비스 통신에 대한 모든 서비스를 보호하려고 시도하므로 의도적으로 작동하지 않습니다.

인증을 해제하고 Istio 0.2.4 릴리스 후보자 (또는이 내용을 읽는 시점의 최신 버전 인 https://github.com/istio/istio/releases 참조)로 시도해보고 문제가 지속되는지 확인하십시오 , 문제가 있다면 https://github.com/istio/issues/issues/new

0.3에서 (아마도 더 일찍) mTLS를 미세하게 제어 할 수있게되었습니다.