第九章 數據管理
阿新 • • 發佈:2019-01-01
nts mount ntp args span lee pre bsp bus
9.1 Volume
Pod是短暫的,Pod在銷毀時,保存在容器內部的文件系統各種的數據會被清除。
為了持久化保存容器中的的數據,可以使用K8s Volume。
9.1.1 emptyDir
emptyDir: 最基礎的Volumne類型,是Host上的一個目錄。
emptyDIr Volume: 對於容器來說是持久的,對於Pod不是。當Pod從節點刪除時,Volume的內容也會被刪除。但是如果只是容器被銷毀而Pod存在,則volume不受影響。也就是說:emptyDir Volume的生命周期與Pod一致。
Pod中的所有容器都可以共享Volume,它們可以指定各自的mount路徑。
如下Pod有兩個容器: producer 和 consumer,它們共享一個Volume. Producer 寫, consumer 讀。
apiVersion: v1 kind: Pod metadata: name: producer-consumer spec: containers: - image: busybox name: producer volumeMounts: # 將shared-volume mount 到 producer_dir目錄 - mountPath: /producer_dir name: shared-volume args: # 將數據寫入到文件hello中 - /bin/sh - -c - echo "hello world" > /producer_dir/hello ; sleep 30000 - image: busybox name: consumer volumeMounts: # 將shared-volume mount 到 /consumer_dir - mountPath: /consumer_dir name: shared-volume args: - /bin/sh - -c - cat /consumer_dir/hello ; sleep 30000 # 通過cat從文件hello讀數據 volumes: # 定義了一個emptyDir類型的Volume,名字是shared-volume. - name: shared-volume emptyDir: {}
第九章 數據管理