2014-11-24 1 views
16

Kubernetes POD 을 생성하는 예제가 있는지 확인하려고합니다. 2-3 컨테이너를 시작하지만이 컨테이너는 서로 링크되어 있지만 찾을 수 없습니다.Kubernetes가 컨테이너를 링크하도록 설정합니다.

누구나 Kubernetes config를 사용하여 컨테이너를 연결하려 했습니까?

+0

내가보기에, 어떻게 http://blog.thestateofme.com/2014/01/13/multi-tier-apps-in-docker-io/와 같은 3 계층 응용 프로그램을 Kubernetes로 포팅 할 수 있습니까? 링크가 직접 지원되지 않으면 대체 무엇입니까? –

+0

http://kubernetes.io/docs/user-guide/services/#discovering-services –

+0

이 튜토리얼에서는 php 앱 (pod)을 만들고 minikube (kubernetes)의 postgres 데이터베이스 (pod)에 연결하는 방법을 설명합니다. https://lvthillo.com/get-started-with-your-local-kubernetes/ – DenCowboy

답변

4

Kubernetes 서비스 (프록시) https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/services.md#how-do-they-work을 사용해야합니다. https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/guestbook

는 구체적으로, 유사 도커 그것을 수행하는 방법에 "연결"의 개념이없는 : 그들은 togehter 작동하는 방법

은 보라. 모든 서비스 엔드 포인트는 완전한 도메인 이름이며 하나의 컨테이너에서 다른 컨테이너로 호출하기 만하면 서비스 엔드 포인트에서 선택할 수있는 컨테이너의 모든 레이블을 사용하여 네트워크 트래픽을 조정할 수 있습니다. 따라서 올바른 IP 주소를 얻으려면 ENV [ "$ FOO_BAR_BAZ"]를 할 필요가 없습니다. 바로 직접 전화하십시오 ( curl http://foo_bar_baz).

+1

@ 토니 던의 메시지에서 알 수 있듯이, 컨테이너를 동일한 창에 간단히 포함 시켜서 연결할 수 있습니다. 그들은 모두 동일한 네트워크 스택을 공유합니다. – WedTM

11

동일한 포드의 컨테이너는 로컬 호스트를 공유하므로 컨테이너를 연결할 필요가 없으므로 localhost : containerPort를 사용하십시오.

+2

이 질문에 대한 답변이 가장 좋습니다. joh.scheuer가 제안한 것과 동일한 pod를 공유하는 컨테이너에는 서비스가 필요하지 않습니다. (어쩌면 당신이 그랬을 때, 9 개월이 지나고 Kubernetes가 끊임없이 진화하고 있습니다.) –

+0

이것은 대답이지만 더 좋은 대답은 joh입니다. kubernetes에 컨테이너가 아닌 "연결"포드 여야합니다. – Srini

관련 문제