2016-07-28 7 views
1

포드 당 하나의 네트워크에 대해 옥양목으로 kubernetes 클러스터를 설정 했으므로 최선의 방법은 서비스를 외부 세계에 노출하는 것입니다.칼리코를 사용하여 kubernetes에서 서비스를 노출하는 모범 사례

IMHO 내부 포드 IP (172 ...)를 에지 라우터/방화벽 (내 경우에는 vos)에 BGP로 연결하고 방화벽/라우터에서 SNAT를 수행합니다. 그러나 포드 당 공용 IP를 공개해야합니다.

프로 : 공용 IP 사용 빈도가 적습니다. 단점 : 변경된 방화벽 규칙은 업데이트 된 방화벽 규칙을 필요로합니까?!

또는 두 번째 : 제공되는 공용 네트워크를 가져와 포드에 사용할 IP 풀로 옥양목으로 넘깁니다. 단점 : 많은 공개 IP가 내부 서비스에 낭비되어 인터넷에 노출되지 않습니다.

누군가가 나를 밝히거나 올바른 방향으로 나를 가리켜 주길 바랍니다.

감사합니다.

답변

1

Calico는 Kubernetes에서 서비스를 노출하는 특별한 방법을 제공하지 않습니다. 표준 Kubernetes 서비스, 노드 포트 등을 사용하여 서비스를 노출해야합니다. 장래에, Calico가 kube-proxy가 현재 Kubernetes (예 : 서비스 IP 노출)에 대해 수행하는 기능 중 일부를 제공 할 가능성이 있지만, 현재 Calico는 저수준 네트워킹 API 계층에만 적합합니다. Kubernetes 통합에서의 Calico의 진정한 강점은 새로운 Kubernetes NetworkPolicy API를 사용하여 네트워크 보안 정책을 정의 할 수 있다는 것입니다.

출처 : Calico의 핵심 개발자 중 한 명입니다.

+0

안녕하세요, Fasaxc 님, 먼저 답변을 주셔서 감사 드리며 옥양목에 대한 작업에 대해 훌륭한 프로젝트라고 생각합니다. 제 질문은 CoreOS Fest의 비디오에서 보았던 것에서 비롯되었습니다. Spike Curtis는 Calico를 인프라에 직접 연결하여 데이터 센터 외부의 경로를 광고하여 사람들이 곧바로 연결할 수 있다고 말하면서 어떻게 생각하십니까? 올바르게 수행하십시오. [Video at 13:05] (https://www.youtube.com/watch?v=44wOK9ObAzk&feature=youtu.be&t=13m05s) –

+0

OpenStack이나 Raw Docker를 사용하고 있다면, 노출 될 IP 세트가 하나 있습니다. 차이점은 Kubernetes는 포드 IP 앞에 앉아있는 서비스 인프라를 갖추고 있다는 것입니다. 우리는 Kubernetes와 "Calico-ised"에서 그 기능을 (아직) "인수하지"않았지만 앞으로는 할 수 있습니다. 현재 서비스 IP 등으로 k8s 경험을 원한다면 Calico 앞에서 kube-proxy를 실행해야합니다. – Fasaxc

+0

@Fasaxc calico와 kubernetes 1.7을 사용할 때 ipBlock을 사용할 수없는 이유는 무엇입니까? –