Kubernetes 如何将helm包连接到PersistentStorage卷?
我经常遇到这个问题,但我还没有找到一个干净、通用的解决方案。我只是在学Kubernetes,所以也许我缺少一些基本的东西。但以下是我所做的:Kubernetes 如何将helm包连接到PersistentStorage卷?,kubernetes,redis,kubernetes-helm,persistent-storage,docker-desktop,Kubernetes,Redis,Kubernetes Helm,Persistent Storage,Docker Desktop,我经常遇到这个问题,但我还没有找到一个干净、通用的解决方案。我只是在学Kubernetes,所以也许我缺少一些基本的东西。但以下是我所做的: 使用kubernetes安装docker desktop 使用yaml文件手动创建持久存储卷(如下所示) 掌舵安装redis dandydev/redis ha 或者你可以使用任何其他掌舵图,比如elasticsearch,postgres,你可以说。我总是得到pod已解除立即PersistentVolumeClaims的绑定 同样在运行时:kubectl
掌舵安装redis dandydev/redis ha
pod已解除立即PersistentVolumeClaims的绑定
同样在运行时:kubectl get storageclasses.storage.k8s.io
我有(默认)存储空间:
谁能帮我用一种通用的方式解决这个问题?这样我就可以安装helm图表并让它们自动连接到一个持久性存储卷
My volume.yaml:
kind:PersistentVolume
版本:v1
元数据:
名称:redis卷
标签:
类型:本地
应用程序:redis
规格:
storageClassName:“
容量:
存储容量:5Gi
访问模式:
-读写
主机路径:
路径:“/mnt/redis”
好的,我在各种定制解决方案中进行了更多的在线搜索,其中一个确实有效:
此外,此答案还提供了有关如何在本地启用动态资源调配的更多详细信息:
基本上(除了上面创建的卷之外),我需要手动:
#storage-class.yaml
apiVersion:storage.k8s.io/v1
种类:StorageClass
元数据:
名称:数据存储
供应人:kubernetes.io/no-provisioner
volumeBindingMode:WaitForFirstConsumer
此外,一些本地运行的图表需要您在/charts/
下或通过--set=value
自定义其配置,因为大多数头盔图表希望您使用更多节点,而本地运行的图表可能只有一个节点
另一个选项是使用helm install--set replicas=1…
,一些图表可以很好地处理这个问题
希望这对其他人有所帮助。在redis helm图表代码中,您可以看到建议您阅读的代码。让我知道它是否解决了你的问题。
NAME PROVISIONER AGE
hostpath (default) docker.io/hostpath 3h8m