2017-12-11 23 views
1

minikube 버전 ⏎ minikube 버전을 작동 할 수 없다. 나는이 동작 중 일부를 설명 할 수있는 기업 프록시를 사용하고 있습니다.는 Kubernetes은/minikube는 동일한 클러스터에 핑 포드,하지만 nslookup을은

내가 minikube가 --docker-ENV 시작 minikube 다음

사용을 시작 HTTP_PROXY = http://corporate-proxy.com:80 --docker-ENV하고 https_proxy = https://corporate-proxy:80 --docker-ENV NO_PROXY = 로컬 호스트, 127.0.0.0/8,192.0.0.0/8

그렇지 않으면 전혀 작동하지 않습니다.

sh-4.2# ping db    
PING db.default.svc.cluster.local (10.0.0.116) 56(84) bytes of data. 
From chicago11-rtr-3-v411.us.corporate.com (10.60.172.X) icmp_seq=1 Destination Host Unreachable 
^C 

로 : 나는 (SSH)이 '응용 프로그램'포드 내에서 'DB'를 ping 할 수 없어요

--- 
apiVersion: v1 
kind: Pod 
metadata: 
    name: app 
    labels: 
    name: app 
spec: 
    containers: 
    - name: app 
     image: image_app 
     ports: 
     - containerPort: 7777 
     volumeMounts: 
     - mountPath: /codeage 
      name: code-volume 
      readOnly: false 
     imagePullPolicy: IfNotPresent 
     tty: true 
    volumes: 
    - hostPath: 
     path: /codeage 
    name: code-volume 
--- 
apiVersion: v1 
kind: Pod 
metadata: 
    name: db 
    labels: 
    name: db 
spec: 
    containers: 
    - name: db 
     image: postgres 
     ports: 
     - containerPort: 5432 
     volumeMounts: 
     - mountPath: /var/lib/postgresql 
      name: db-data 
     imagePullPolicy: IfNotPresent 
     tty: true 
    volumes: 
    - hostPath: 
     path: /db-data 
    name: db-data 
--- 
apiVersion: v1 
kind: Service 
metadata: 
    name: db 
spec: 
    type: NodePort 
    ports: 
    - name: 'db-port' 
    port: 5432 
    targetPort: 5432 
    selector: 
    name: db 
--- 
apiVersion: v1 
kind: Service 
metadata: 
    name: app 
    labels: 
    name: app 
spec: 
    type: NodePort 
    ports: 
    - name: apport 
    port: 7777 
    targetPort: 7777 
    selector: 
    name: app 
--- 

: 고정 표시기에 일부 이미지를 구축 한 후 나는 두 가지 서비스와 두 개의 포드를 만들어 nslookup이 작동하고 올바른 clusterIP 10.0.0.116과 호스트 이름 'db.default.svn.cluster.local'을 제공했음을 알 수 있습니다.

노드 자체에 ping을 보낼 수 있습니다. 나는 kube-dns를 ping 할 수 없다 ...

누구든지 아이디어가 있습니까?

기본 제공되는 dns 서비스를 사용할 수 있습니까?

답변

1

서비스 IP 주소를 ping 할 수 없으면 서비스 IP가 지정된 서비스에 정의 된 5432 포트로 텔넷 할 수 있습니다.

1

@sfgroups 답변은 정확합니다! ping이 잘못된 도구였습니다. Telnet을 사용하거나 실제로 psql을 사용했습니다. 실제 문제는 내 서비스가 아무 것도 가리키고 있지 않다는 것입니다.

고유 한 이름을 갖도록 앱 포드를 업데이트 한 다음 서비스의 선택기를 업데이트했습니다.