config/stats
을 OS 파티션 (예 :/config /)의 디렉토리 중 하나에 저장하는 기존 애플리케이션이 있으며 Kubernetes 클러스터의 상태 컨테이너로 실행하려고합니다.Kubernetes의 컨테이너 바인드 마운트
컨테이너로 실행할 수 있지만 컨테이너의 본질적인 일시적인 특성으로 인해 컨테이너가 OS 파티션 디렉토리/config /에 쓰여지고있는 모든 데이터가 컨테이너가 다운/삭제 될 때 손실됩니다.
Kubernetes 배포 파일은 동일한 호스트 또는 다른 호스트에서 새 인스턴스로 존재하지만 컨테이너를 다시 사용할 수 있도록 작성되었지만이 새 컨테이너에는 다음과 같이 작성된 데이터에 액세스 할 수 없습니다. 컨테이너의 이전 인스턴스
도커 컨테이너 인 경우 바인드 마운트를 사용하여이 작업을 수행 할 수 있으므로 컨테이너가 OS 파티션 디렉토리에 쓰는 데이터가 호스트 디렉토리에 저장되므로 새 인스턴스가 데이터에 액세스 할 수 있습니다 이전 인스턴스에 의해 작성되었습니다.
그러나 Kubernetes에서이 대안을 찾을 수 없습니다.
호스트 경로 프로비저닝을 사용할 수 있지만 호스트 경로 프로비저닝은 이제 단일 노드 kubernetes 클러스터에서만 작동합니다.
다중 노드 Kubernetes 클러스터에서이 작업을 수행 할 수있는 방법이 있습니까? 호스트 경로 프로비저닝 이외의 다른 옵션은 무엇입니까? 컨테이너가 서로 이야기하고 노드간에 데이터를 동기화 할 수 있지만 호스트 디렉토리를 컨테이너에 바인드 마운트하는 방법은 무엇입니까?
미리 도움을 주셔서 감사합니다.
영구 볼륨을 사용해 보았습니까? – iamnat
데이터를 유지하려면 Persistent Volume (PV)에 연결될 PVC (Persistent Volume Claim)를 사용해야합니다. 이제 전개 매니페스트를 작성할 때 해당 PVC를 요구해야합니다. –
예, PV에 대해 알고 있고 PV를 컨테이너에 바인딩하는 POD 정의에서 PVC를 사용하고 있지만이 점에 대해 바인더 마운트를 사용할 수 있었기 때문에 이것이 유스 케이스의 과도기라고 생각했습니다. 생각은 Kubernetes에도 간단한 해결책이 될 수 있습니다. – msbl3004