k8s: pod has unbound PersistentVolumeClaims问题解决
1. 背景
使用helm chart 部署redis-ha的时候 pod报错 pod has unbound PersistentVolumeClaims
2. 原因分析
查看了 redis-ha的 charts文件,发现value.yaml 中的storageClassName 取数为空,当storageClassName为空的时候如果没有指定 DefaultStorageClass ,那么是不会分配 pv给 claim的。
3. 说明一下DefaultStorageClass
PVC和PV的绑定是通过StorageClassName进行的。然而如果定义PVC时没有指定StorageClassName呢?这取决与admission插件是否开启了DefaultDefaultStorageClass功能:
如果DefaultDefaultStorageClass功能开启,那么此PVC的StorageClassName就会被指定为DefaultStorageClass。DefaultStorageClass从何处而来呢?原来在定义StorageClass时,可以在Annotation中添加一个键值对:storageclass.kubernetes.io/is-default-class: true,那么此StorageClass就变成默认的StorageClass了。
如果DefaultDefaultStorageClass功能没有开启,那么没有指定StorageClassName的PVC只能被绑定到同样没有指定StorageClassName的PV。
查看了我们环境中的storageclass 定义,发现没有开启DefaultDefaultStorageClass功能。
4. 解决办法
修改chart 文件中的pvc 取值, 让storageClass=现有的storageclass name
创建storageClass(依据class.yaml 和 deployment.yaml )
[kubeadm@server1 dpv]$ kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
managed-nfs-storage westos/nfs Delete Immediate false 42m
[kubeadm@server1 dpv]$
修改value.yaml
过一会儿再次查看pod状态 ,已经running
[kubeadm@server1 ~]$ kubectl get pod -n redis
NAME READY STATUS RESTARTS AGE
redis-ha-server-0 2/2 Running 0 22m
redis-ha-server-1 2/2 Running 0 8m48s
k8s: pod has unbound PersistentVolumeClaims问题解决相关推荐
- 【收藏】k8s: pod has unbound PersistentVolumeClaims问题解决
https://blog.csdn.net/yrx420909/article/details/106127489/
- k8s pod has unbound immediate PersistentVolumeClaims
pod 一直处于Pending 状态 pod has unbound immediate PersistentVolumeClaims kubectl logs nfs-client-provisio ...
- k8s :pod has unbound immediate PersistentVolumeClaims
今天测试pvc与pv绑定 代码如下: PersistentVolume如下: kind: PersistentVolume apiVersion: v1 metadata:name: pv-01nam ...
- K8S Pod该如何监控
背景 由于业务容器化的推进,对K8S上运行的业务,也必须做到向之前物理机/虚拟机上一样,要有完备的监控保障.但是,毕竟K8S不是物理机/虚拟机,由于技术实现方式不同,监控方面也是有一定差别的. Pod ...
- k8s pod基础概念
k8s pod基础概念 Pod基础概念: Pod是kubernetes中最小的资源管理组件,Pod也是最小化运行容器化应用的资源对象.一个Pod代表着集群中运行的一个进程.kubernetes中其他大 ...
- k8s每天报告服务器状态信息,[工作随笔] 配置 cron 检查 K8s Pod 存活状态以推送钉钉消息...
背景 前段时间接手了一份维护老系统的任务.该系统使用了早期的 Spring Cloud 全家桶,其中有一个微服务随着时间运行会出现大量 CLOSE_WAIT 状态的 socket 连接以至于堵塞网关, ...
- K8s Pod优雅关闭,没你想象的那么简单!
更新部署服务时,旧的 Pod 会终止,新 Pod 上位.如果在这个部署过程中老 Pod 有一个很长的操作,我们想在这个操作成功完成后杀死这个 pod(优雅关闭),如果无法做到的话,被杀死的 pod 可 ...
- 混沌工程之ChaosToolkit使用之一删除K8s POD
混沌工程之ChaosToolkit使用之一删除K8s POD 1.概述 今天我们来玩一下混沌工程的开源工具chaostoolkit . 它的目标是提供一个免费,开放,社区驱动的工具集以及api. 2. ...
- K8S POD无限重启问题
记录一次K8S POD无限重启 项目在K8S上无限重启 问题排查 发现问题 解决方案 最终成果 项目在K8S上无限重启 项目无限重启,不可用. 问题排查 首先查看k8s描述. kubectl desc ...
最新文章
- 概念化学习Django
- tuxedo相关概念
- 阿里云搭建git mac客户端 2个git账号
- 使用Drools 6.0进行部署
- 【2019浙江省赛 - B】Element Swapping(思维,数学)
- 神龙X-Dragon,这技术“范儿”如何?| 问底中国IT技术演进
- where in的sql语句按照指定ID进行排序的解决方法
- PHP如何获取文件行数
- c语言枪图形,6个变态的C语言Hello World程序[转载]
- .bash_profile和.bashrc的什么差别
- 获取Java项目根目录
- iview“官方“实现的右键菜单
- 一个必用的javascript框架:underscore.js - wine的思考 - ITeye技术网站
- 外卖红包小程序0基础搭建附教程+源码
- 海康威视-网络通讯库错误码
- 解决方法:未能加载文件或程序集“Microsoft.Office.Interop.Excel。。
- 地砖中间高四边低_客厅棚顶有黑镜在风水里讲怎么样 装修中橱柜里的白色色块用哪个做,怎么施工...
- 适用于WordPress网站的12个最佳计算器插件
- 红帽子linux lamp,RedHat Linux 9下Lamp配置过程
- html5游戏ztype源码,Ztype打字游戏!