【问题标题】:How to pause and resume kubernetes pods with data?如何使用数据暂停和恢复 Kubernetes pod?
【发布时间】:2019-08-14 21:56:01
【问题描述】:

我的项目中有多个微服务。我想在不丢失数据的情况下动态暂停和恢复它们。

例如:我正在部署一个 theia ide 并且用户创建了一个文件夹。我想关闭此服务一段时间,然后再次使用数据恢复。

参考资料: https://github.com/theia-ide/theia

我已经尝试将副本减少到 0 和 1。它会删除数据。我希望数据是持久的。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: servicetest
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      run: servicetest
  template:
    metadata:
      labels:
        run: servicetest
    spec:
      containers:
      - image: gcr.io/YYYY-ZZZZ-249311/test
        imagePullPolicy: IfNotPresent
        name: servicetest
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
            - name: data
              mountPath: /data/
      volumes:
      - name: data
        persistentVolumeClaim:
          claimName: service-pv-claim
---
apiVersion: v1
kind: Service
metadata:
  labels:
    run: servicetest
  name: servicetest
spec:
  ports:
  - name: web
    port: 80
    protocol: TCP
    targetPort: 3000
  - name: deployport
    port: 8080
    protocol: TCP
    targetPort: 8080
  selector:
    run: servicetest
  type: LoadBalancer


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

【问题讨论】:

  • 添加您的 pvc 配置。
  • 线程已更新...
  • PersistentVolume 上正在使用什么类型的卷(emptyDir 或 hostPath)。?请分享您绑定到上述 PVC 的 PV 详细信息。
  • @SubramanianManickam 它是一个空目录。不用担心,现在我正在使用 statefulset。无论如何感谢您的评论

标签: kubernetes google-kubernetes-engine


【解决方案1】:

您的底层存储是否被删除取决于持久卷的reclaim policy。 如果您将策略设置为 Retain,它应该保留您的 pod 的 PV 以供以后使用,而不是删除其内容并清除卷。

如果您使用这种大小为 1 的部署,还值得研究 statefulset,因为部署是“至少 N”,而有状态集是“最多 N”个副本。 Statefulsets 还允许您拥有与每个副本关联的不同卷。

【讨论】:

  • Statefulset 在我的情况下就像一个魅力。感谢您的建议。
猜你喜欢
  • 2019-07-16
  • 2018-04-08
  • 2016-10-07
  • 1970-01-01
  • 2020-06-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多