gpt4 book ai didi

kubernetes - 增加 kubernetes 上永久磁盘的大小

转载 作者:行者123 更新时间:2023-12-02 11:58:49 26 4
gpt4 key购买 nike

假设我有一个单节点数据库服务(PostgreSQL、MySQL,等等......),使用 10G 的 PersistentVolumeClaim 部署在 kubernetes 上,该服务将在 GKE 或 AWS 或 Azure 上运行(这并不重要)。磁盘扩容至20G的步骤是什么?例如,有没有办法将 PVC 绑定(bind)到现有磁盘(10G 磁盘的快照)或类似的东西?

我想要的是增加属于PVC的磁盘的存储大小并维护旧数据(该磁盘不一定是数据库,所以我不希望恢复数据库备份或类似的东西)。

我正在寻找类似的内容:拍摄旧磁盘的快照,从快照创建更大的磁盘,然后“让 PVC 使用新磁盘”。

谢谢

最佳答案

您有一个 PV 10G 的 PVC。你想增加它的大小。不幸的是,尚不支持调整大小。因此,您需要创建新的20G大小的PVC。

假设您现有的 10G PVC 称为older

请按照以下步骤操作:

第 1 步:创建 20G 的新 PVC,假设其名为latest

第 2 步:olderlatest 都安装在容器中。将数据从older复制到latest

第 3 步:删除 PVC older,我们不再需要 older。数据已复制到最新 PV。

第 4 步:提供最新的 PV。

$ kubectl get pvc latest
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
latest Bound pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 10Gi RWO standard 30s

编辑 PV pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 以将 permanentVolumeReclaimPolicy 设置为 Retain。这样删除PVC就不会删除PV。

现在,删除 PVC 最新

$ kubectl delete pvc latest

$ kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 10Gi RWO Retain Released default/latest standard 3m

查看状态,PV已发布。

现在,使这个最新 PV可供另一个PVC(我们的较旧)认领,因为我们想在此PVC 较旧下使用20G .

再次编辑 PV 以删除 ClaimRef

$ kubectl edit pv pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6

$ kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 10Gi RWO Retain Available standard 6m

现在PV的状态为Available。

第 5 步:通过 PVC 领取最新 PV

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: older
spec:
accessModes:
- ReadWriteOnce
volumeName: pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6
resources:
requests:
storage: 10Gi

使用volumeName pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6

$ kubectl get pvc,pv
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvc/older Bound pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 10Gi RWO standard 9s

NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv/pvc-8badc3c2-08c5-11e8-b07a-080027b3e1a6 10Gi RWO Retain Bound default/older standard 9m

最后:将 permanentVolumeReclaimPolicy 设置为 Delete

这就是,您的 PVC older 拥有 latest PV 为 20G。

关于kubernetes - 增加 kubernetes 上永久磁盘的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45594836/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com