首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Strimzi不能调整PV大小

Strimzi不能调整PV大小
EN

Stack Overflow用户
提问于 2021-10-10 21:18:17
回答 1查看 378关注 0票数 1

我跟随博客调整PV的大小。

我使用部署在Azure VM上的Openshift v3.11和PV作为Azure托管磁盘

我的Kafka集群存储配置

代码语言:javascript
运行
复制
..
    config:
      offsets.topic.replication.factor: 2
      transaction.state.log.replication.factor: 1
      transaction.state.log.min.isr: 1
      log.message.format.version: "2.6"
    storage:
      type: persistent-claim
      size: 256Gi
      deleteClaim: false
...

我直接编辑pvc并将资源请求更改为257 to。我等了几分钟,检查了PVC的状况。

代码语言:javascript
运行
复制
 oc get pvc data-0-xx-dev-kafka-0 -o yaml
apiVersion: v1
kind: PersistentVolumeClaim

...

spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 257Gi
  storageClassName: generic
  volumeName: pvc-xx-2849-xx-913f-xx
status:
  accessModes:
  - ReadWriteOnce
  capacity:
    storage: 256Gi
  conditions:
  - lastProbeTime: null
    lastTransitionTime: 2021-10-08T15:54:06Z
    status: "True"
    type: Resizing
  phase: Bound

在pvc的描述中,我看到下面

代码语言:javascript
运行
复制
Warning  VolumeResizeFailed     3s (x2 over 1m)  volume_expand                Error expanding volume "kafka/data-0-sirius-dev-kafka-0" of plugin kubernetes.io/azure-disk : compute.DisksClient#CreateOrUpdate: 
Failure sending request: StatusCode=409 -- Original Error: failed request: autorest/azure: 
Service returned an error. Status=<nil> Code="OperationNotAllowed" Message="Cannot resize disk kubernetes-dynamic-pvc-xx-2849-xx-913f-xx while it is 
attached to running VM /subscriptions/xxxx/resourceGroups/xxx-dev-openshift/providers/Microsoft.Compute/virtualMachines/ocp-node-dev-1. Resizing a disk of an Azure Virtual Machine requires the virtual machine to be deallocated. 
Please stop your VM and retry the operation."

我也尝试过,重新部署卡夫卡与jbod与单磁盘,调整大小和做滚动更新。与上述相同的结果

  • openshift v3.11.0+cbab8ee-94(K8s v1.11.0+d4cacc0)
  • 卡夫卡版本:2.6.0
  • 运营商:0.20.1

请注意,在我的集群中确实支持调整PV大小(以前我通过将副本缩小到零成功地调整了应用程序的PV大小)

更新

代码语言:javascript
运行
复制
$ oc describe storageclass generic
Name:                  generic
IsDefaultClass:        Yes
Annotations:           storageclass.beta.kubernetes.io/is-default-class=true
Provisioner:           kubernetes.io/azure-disk
Parameters:            kind=managed,location=${location},storageaccounttype=Premium_LRS
AllowVolumeExpansion:  True
MountOptions:
  discard
ReclaimPolicy:      Delete
VolumeBindingMode:  Immediate
Events:             <none>

我试图使用oc scale replicas=0 sts/XX-dev将reaplica缩小到0,但是由于复制因素,cluster-operator不允许使用。

EN

回答 1

Stack Overflow用户

发布于 2021-10-12 00:10:30

正常情况下 Azure磁盘支持对持久卷进行调整,但目前在遵从性和实现检查这里方面存在一些问题。

因此,在去其他地方之前,只需再检查一次以下几点

  • 如果将存储类定义设置为storageClassName: allowVolumeExpansion,则检查“allowVolumeExpansion: generic”的存储类定义。(可能您以前尝试过使用不同的存储类进行调整大小) You can only expand a PVC if its storage class's allowVolumeExpansion field is set to true.
  • 看起来,您需要先去分配指向该卷的所有内容(检查https://learn.microsoft.com/en-us/azure/aks/azure-disk-csi的警告),然后调整大小,最后再对Pods进行缩放。
  • 尝试用乘法进行增量检查从这里开始的大小(https://learn.microsoft.com/en-us/azure/virtual-machines/disks-types)
  • 可能达到每个VM的容量限制,Azure的违约为16,暂时,检查您现在在该节点中有多少卷

另一个问题是,如果底层容量不足以调整大小,则必须在新的资源组中重新定位和重新定位VM。是的,云不是无限的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69519063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档