- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
动态扩容PVC的时候报错(kubectl edit pvc pvcname):“error: persistentvolumeclaims "pvvolume" could not be patched: persistentvolumeclaims "pvvolume" is forbidden: only dynamically provisioned pvc can be resized and the storageclass that provisions the pvc must support resize” 。
配置一个10M大小的pvc, 关于PVC的详细内容,请查看博客 《Kubernetes(k8s)存储管理之数据卷volumes(四):持久卷Persistent Volume》 https://www.cnblogs.com/renshengdezheli/p/16972289.html 。
[student@vms20 ~]$ vim 13.yaml
[student@vms20 ~]$ cat 13.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvvolume
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 10Mi
storageClassName: csi-hostpath-sc
创建PVC 。
[student@vms20 ~]$ kubectl apply -f 13.yaml
persistentvolumeclaim/pvvolume created
[student@vms20 ~]$ kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvvolume Bound pvc-09b90084-aa96-4e10-a124-79c9af98ccc0 10Mi RWO csi-hostpath-sc 10s
[student@vms20 ~]$ kubectl get pvc -o wide
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE VOLUMEMODE
pvvolume Bound pvc-09b90084-aa96-4e10-a124-79c9af98ccc0 10Mi RWO csi-hostpath-sc 14s Filesystem
把PVC挂载到pod上,并创建pod 。
[student@vms20 ~]$ vim 13pod.yaml
[student@vms20 ~]$ cat 13pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: web-server
spec:
containers:
- name: myfrontend
image: nginx
imagePullPolicy: IfNotPresent
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: mypvc
volumes:
- name: mypvc
persistentVolumeClaim:
claimName: pvvolume
[student@vms20 ~]$ kubectl apply -f 13pod.yaml
pod/web-server created
[student@vms20 ~]$ kubectl get pod | grep web-server
web-server 1/1 Running 0 20s
修改pvc的容量为70Mi,PVC动态扩容报错如下:
[student@vms20 ~]$ kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvvolume Bound pvc-09b90084-aa96-4e10-a124-79c9af98ccc0 10Mi RWO csi-hostpath-sc 14m
#动态扩容PVC报错
[student@vms20 ~]$ kubectl edit pvc pvvolume --record
Flag --record has been deprecated, --record will be removed in the future
error: persistentvolumeclaims "pvvolume" could not be patched: persistentvolumeclaims "pvvolume" is forbidden: only dynamically provisioned pvc can be resized and the storageclass that provisions the pvc must support resize
You can run `kubectl replace -f /tmp/kubectl-edit-857302533.yaml` to try this update again.
解决方法 : 要支持动态扩容需要满足两个条件 :
可以看到storageclass此时ALLOWVOLUMEEXPANSION参数为false.
[student@vms20 ~]$ kubectl get storageclass
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
csi-hostpath-sc hostpath.csi.k8s.io Delete Immediate false 277d
编辑csi-hostpath-sc,把ALLOWVOLUMEEXPANSION修改为true 。
#添加参数allowVolumeExpansion: true
#######
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{},"name":"csi-hostpath-sc"},"parameters":{"archiveOnDelete":"false"},"provisioner":"hostpath.csi.k8s.io"}
creationTimestamp: "2021-11-04T10:54:48Z"
name: csi-hostpath-sc
resourceVersion: "177035"
uid: a594f8fd-9c3d-49d3-85a4-085c89a7bb1c
parameters:
archiveOnDelete: "false"
provisioner: hostpath.csi.k8s.io
reclaimPolicy: Delete
volumeBindingMode: Immediate
#######
[student@vms20 ~]$ kubectl edit storageclass csi-hostpath-sc
storageclass.storage.k8s.io/csi-hostpath-sc edited
#现在ALLOWVOLUMEEXPANSION变为true了
[student@vms20 ~]$ kubectl get storageclass
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
csi-hostpath-sc hostpath.csi.k8s.io Delete Immediate true 277d
再次PVC动态扩容 。
[student@vms20 ~]$ kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvvolume Bound pvc-09b90084-aa96-4e10-a124-79c9af98ccc0 10Mi RWO csi-hostpath-sc 25m
#现在pvc动态扩容:将所有位置的capacity:storage:10Mi修改为70Mi
[student@vms20 ~]$ kubectl edit pvc pvvolume --record
Flag --record has been deprecated, --record will be removed in the future
persistentvolumeclaim/pvvolume edited
#PVC动态扩容成功
[student@vms20 ~]$ kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvvolume Bound pvc-09b90084-aa96-4e10-a124-79c9af98ccc0 70Mi RWO csi-hostpath-sc 27m
自此,PVC动态扩容成功.
最后此篇关于troubleshoot:PVC动态扩容报错的文章就讲到这里了,如果你想了解更多关于troubleshoot:PVC动态扩容报错的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
目录 一.问题描述 二.解决方法 一.问题描述 动态扩容PVC的时候报错(kubectl edit pvc pvcname)
我有一个我认为是直截了当的查询,但我似乎无法让它发挥作用。感谢所有帮助! 表格: 涉及到两个表:gallery_meta和prm_album。 gallery_meta tbl 包含存储在文件结构中的
我正在尝试提取内存中已知大小和地址的一维 double 组。我当前的函数(包括在下面)返回一个适当大小的数组,但完全由零组成。显然,这不是我要寻找的数据数组。任何有关我如何解决此问题的想法(或至少一些
我有一个 php 脚本可以创建一个大型临时 mysql 表。 创建此表需要很长时间(超过 30 分钟!)。所以我决定解决它。我确定问题出在 Keys 的创建上。 我使用 MySQL WorkBench
我喜欢在 app-insight 中解决消息大小问题。最近我们发现数据摄入量大幅增加。 当我分析数据摄取时,我发现 */- 90% 的大小由“MESSAGE”占用 如何查看 MESSAGE 内容的一些
我喜欢在 app-insight 中解决消息大小问题。最近我们发现数据摄入量大幅增加。 当我分析数据摄取时,我发现 */- 90% 的大小由“MESSAGE”占用 如何查看 MESSAGE 内容的一些
我收到这个非常奇怪的错误 TypeError: undefined is not a function at h.$scope.getCoordDistance (http://run.pln
我受雇将一个在 PHP/PostgreSQL 后端上运行的网站从一台服务器迁移到另一台服务器。我从未使用过 PostgreSQL,并认为这将是一项非常简单的任务。我错了。 我成功地解决了一些已经与权限
Apollo 服务器已设置,并且在使用 graphiql 时正确响应查询。 具有服务器端渲染功能的现有react-redux应用程序需要开始使用graphql并进行此查询。 此应用程序的一个组件已设置
我正在开发一个基于eclipse的RCP项目。它一直工作得很好,但最近我想我应该升级它以使用新的 eclipse 版本(3.2 -> 3.5)。 经历了一些麻烦,它在新平台上运行了。然后我做了一些事情
我正在使用nodejs编写一个命令行工具。 Windows 报告错误。在 Linux 和 Mac OSX 系统上没有问题。 https://www.npmjs.com/package/idoc 全局安
我正在尝试对访问 WCF 自承载服务的 WCF 客户端上的“连接被远程主机强行关闭”错误进行故障排除。我在服务端机器上查看 System32\LogFiles\HTTPERR 中的 httperr 日
如果委托(delegate)方法没有被调用,那么需要检查所有的事情来确保在 viewController 中引用了委托(delegate)? 最佳答案 好吧,首先您必须遵守 header 中的协议(p
背景 将 Xdebug 与 PHP 和 Komodo IDE 以及 Eclipse PDT 结合使用。 Xdebug 已安装在服务器上并且工作正常。这是确认的,因为 Xdebug 代码命令在插入服务器
我刚刚创建了一个包 ( RTIO ) 和一个包存储库 ( Q:/Integrated Planning/R ),这是一个公司网络驱动器。 我已将我的包裹放入文件夹中: Q:/Integrated Pl
我当前正在开发的 Express Node.js 服务器应用程序有时会陷入空白并停止返回请求。我非常怀疑其中的某个地方我正在做的事情最终会跳过我需要做的 res.end 。 有人对如何最好地寻找我缺少
我们的应用程序允许用户录制视频并将其保存到他们的相机胶卷中。但是,即使保存的视频可以从相机胶卷中正常播放,我们似乎也无法在 AVPlayer 中播放视频。 由于某种原因,有效的视频文件报告有 0 个轨
我在 ASP.NET Core 应用程序和 Controller 操作中使用 Entity Framework Core,我没有对工作代码或数据库进行任何更改,但我无法判断 Entity Framew
我是 android studio 软件开发的新手,当我开始构建新软件时,会发生此错误。 error: '0+id/nav_home' is incompatible with attribute a
我正在尝试解决使用 JDBC 连接到 MySQL 数据库的 Java 应用程序的问题。表面上的问题是,当连接到一个有效的数据库时,DriverManager.getConnection 有时会返回 N
我是一名优秀的程序员,十分优秀!