2017-12-16 29 views
2

헬멧을 통해 최신 stable을 사용하여 포스트그레스를 설치하려고하는데 지속적으로 영구 볼륨을 설치하지 않습니다. Minikube에 설치 중이며 어떤 이유로 호스트 마운트를 제대로 할 수없는 것으로 보입니다.헬멧을 사용하지 않는 Postgresql

오류 (배포, 포드 및 복제 세트에)

PersistentVolumeClaim is not bound: "postgres-postgresql" Error: lstat /tmp/hostpath-provisioner/pvc-c713429d-e2a3-11e7-9ca9-080027231d54: no such file or directory Error syncing pod

내가 영구 볼륨을 볼 때 제대로 실행되고 나타납니다. 경우는 여기에 도움이 내 지속적인 볼륨 YAML입니다 :

{ 
    "kind": "PersistentVolume", 
    "apiVersion": "v1", 
    "metadata": { 
    "name": "pvc-c713429d-e2a3-11e7-9ca9-080027231d54", 
    "selfLink": "/api/v1/persistentvolumes/pvc-c713429d-e2a3-11e7-9ca9-080027231d54", 
    "uid": "c71850e1-e2a3-11e7-9ca9-080027231d54", 
    "resourceVersion": "396568", 
    "creationTimestamp": "2017-12-16T20:57:50Z", 
    "annotations": { 
     "hostPathProvisionerIdentity": "8979806c-dfba-11e7-862f-080027231d54", 
     "pv.kubernetes.io/provisioned-by": "k8s.io/minikube-hostpath" 
    } 
    }, 
    "spec": { 
    "capacity": { 
     "storage": "8Gi" 
    }, 
    "hostPath": { 
     "path": "/tmp/hostpath-provisioner/pvc-c713429d-e2a3-11e7-9ca9-080027231d54", 
     "type": "" 
    }, 
    "accessModes": [ 
     "ReadWriteOnce" 
    ], 
    "claimRef": { 
     "kind": "PersistentVolumeClaim", 
     "namespace": "default", 
     "name": "postgres-postgresql", 
     "uid": "c713429d-e2a3-11e7-9ca9-080027231d54", 
     "apiVersion": "v1", 
     "resourceVersion": "396550" 
    }, 
    "persistentVolumeReclaimPolicy": "Delete", 
    "storageClassName": "standard" 
    }, 
    "status": { 
    "phase": "Bound" 
    } 
} 

영구 볼륨 청구 YAML : 어떤 도움을 주시면 감사하겠습니다

{ 
    "kind": "PersistentVolumeClaim", 
    "apiVersion": "v1", 
    "metadata": { 
    "name": "postgres-postgresql", 
    "namespace": "default", 
    "selfLink": "/api/v1/namespaces/default/persistentvolumeclaims/postgres-postgresql", 
    "uid": "c713429d-e2a3-11e7-9ca9-080027231d54", 
    "resourceVersion": "396588", 
    "creationTimestamp": "2017-12-16T20:57:50Z", 
    "labels": { 
     "app": "postgres-postgresql", 
     "chart": "postgresql-0.8.3", 
     "heritage": "Tiller", 
     "release": "postgres" 
    }, 
    "annotations": { 
     "control-plane.alpha.kubernetes.io/leader": "{\"holderIdentity\":\"897980a2-dfba-11e7-862f-080027231d54\",\"leaseDurationSeconds\":15,\"acquireTime\":\"2017-12-16T20:57:50Z\",\"renewTime\":\"2017-12-16T20:57:52Z\",\"leaderTransitions\":0}", 
     "pv.kubernetes.io/bind-completed": "yes", 
     "pv.kubernetes.io/bound-by-controller": "yes", 
     "volume.beta.kubernetes.io/storage-provisioner": "k8s.io/minikube-hostpath" 
    } 
    }, 
    "spec": { 
    "accessModes": [ 
     "ReadWriteOnce" 
    ], 
    "resources": { 
     "requests": { 
     "storage": "8Gi" 
     } 
    }, 
    "volumeName": "pvc-c713429d-e2a3-11e7-9ca9-080027231d54", 
    "storageClassName": "standard" 
    }, 
    "status": { 
    "phase": "Bound", 
    "accessModes": [ 
     "ReadWriteOnce" 
    ], 
    "capacity": { 
     "storage": "8Gi" 
    } 
    } 
} 

은.

+0

직면 한 문제는 무엇입니까? 실패한 포드의 'kubectl describe po'출력을 볼 수 있습니까? – whites11

+0

왜 여기에 downvoted있어 확실하지 않아요 - 이것은 진짜 문제이며 질문에 잘 설명합니다. 포스트그레스를 정상적으로 설치했을 때 재현 할 수있었습니다. –

답변

4
당신은 이러한 문제가 될 수 있습니다

: https://github.com/kubernetes/minikube/issues/2256

문제는 필드가있는 경우 '서브 패스'필드 (이벤트가 배포 리소스에 존재 할 때 오류를 검출했을 때에 hostpath 볼륨 제공자에 버그가있어입니다 빈 값).

여기에 나를 위해 일한 해결 방법입니다 - PostgreSQL의 차트를 풀고 deployment.yaml에 다음 줄을 주석 :
 # subPath: {{ .Values.persistence.subPath }} 

그런 다음 수정 된 차트를 다시 배포합니다. 'subPath'입력란에 의존한다면이 해결 방법이 도움이되지 않습니다.

참고 :이 문제는 Mac 용 Docker-Kuberbone에서도 발생합니다 (내가 만난 곳).

+2

이렇게하면 helm postgres의 문제가 해결되었습니다. –