1

我目前正在为 Gitlab CI 使用 Kubernetes Executor,因为:

https://docs.gitlab.com/runner/executors/kubernetes.html:“此时支持hostPath、PVC、configMap、secret卷类型”。

我想知道是否有可能在 Kubernetes 中拥有一个具有持久卷声明的弹性卷。

4

2 回答 2

1

是的。

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0001 
spec:
  capacity:
    storage: 1Gi 
  accessModes:
    - ReadWriteOnce
  flexVolume:
    driver: openshift.com/foo 
    fsType: "ext4" 
    secretRef: foo-secret 
    readOnly: true 
    options: 
      fooServer: 192.168.0.1:1234
      fooVolumeName: bar

参考:https ://docs.openshift.org/latest/install_config/persistent_storage/persistent_storage_flex_volume.html

于 2018-04-10T14:28:06.103 回答
1

任何类型的 PV 都可以支持 PVC。您需要手动创建 PV,然后指定.spec.volumeNamePVC 的名称(或.spec.selector与标签一起使用)。像这样:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: task-pv-claim
spec:
  volumeName: task-pv-volume
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 3Gi

作为参考,我使用了这个 PV(但 PV 的类型无关紧要):

kind: PersistentVolume
apiVersion: v1
metadata:
  name: task-pv-volume
spec:
  storageClassName: manual
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/tmp/data"

(或者,也可以使用您自己的存储类进行自动配置,但我想这不是您的用例。)

于 2017-10-24T09:51:51.757 回答