问题标签 [persistent-volumes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6852 浏览

kubernetes - 将 statefulset 绑定到本地持久卷 - 卷节点关联冲突错误

我有 3 节点 kubernetes,主机名为 host_1、host_2、host_3。

我定义了 3 个大小为 100M 的本地持久卷,映射到每个节点上的本地目录。我使用了以下描述符 3 次,其中<hostname>之一是:host_1、host_2、host_3:

应用三个这样的 yaml 后,我有以下内容:

现在,我有一个非常简单的容器来写入文件。该文件应位于本地持久卷上。我通过 statefulset 的 volumeClaimTemplates 将其部署为具有 1 个副本和映射卷的 statefulset:

卷声明似乎已经创建好并绑定到第一台主机上的 pv :

但是,Pod 挂在 Pending 状态:

如果我们描述,我们可以看到以下错误:

你能帮我找出问题所在吗?为什么它不能只创建 pod?

0 投票
1 回答
150 浏览

mongodb - 为什么删除 STS 应用程序不会自动删除 OpenEBS Jiva 卷 pvc?

我正在运行一个在 OpenEBS 0.6.0 Jiva 卷上使用的 Mongo DB STS 应用程序,我已经删除了这个应用程序。但它并没有删除相应的 PVC。如何清理我的系统?这是默认行为吗?

0 投票
2 回答
5081 浏览

kubernetes - Is it possible to have PVC's with the same name accross different namespace when using different PV's in Kubernetes?

I have 2 different namespace: prod-01 and prod-02, What I want to do is build a copy of my prod-01 into prod-02 namespace keeping the same names for its pvcs, so that I don't have to maintain 2 sets of charts for each different namespace.

Here's how it looks like:

As shown below, I have 2 pairs of pv's for each namespace:

Here's how pvc's for prod-01 are being displayed:

And here's what I'm trying to accomplish:

As shown above, the pvc's for prod-02 namespace are stuck forever with Pending status.

Them when I change the pvc names on prod-02 to anything different, they bond as expected.

Which leads me to think I can't use the same names on pvc's even when they are in different namespaces and pointing to different pv's ... However, when searching the documentation, I could not find any evidence to this issue, and was wondering if I could be missing something.

So to put it simple, can I have multiple pvc's with the same name accross different namespaces (considering that they are using different pv's)?


Update: result of kubectl describe pvc

Also here's the output of kubectl get pvc:

And here are some details about the pv too:


Thanks in advance for the help!

0 投票
4 回答
4730 浏览

kubernetes - Kubernetes 没有匹配的可配置卷插件

尝试为 Kubernetes 卷使用 NFS 存储但未能成功。

persistentvolumeclaim无法绑定到已经创建的persistentvolume,见下文

创建持久卷

创建持久卷声明

persistentvolumeclaim 的事件日志显示

任何想法可能会阻止 k8s 绑定两者?

0 投票
1 回答
714 浏览

kubernetes - Kubernetes 将 cinder 存储与 pod 关联起来

我有一个 K8 集群,需要将我的 pod 与 cinder 存储选项相关联。我尝试了两种选择,但都失败了。任何人都可以阐明正在发生的事情吗?

选项1: 在 OpenStack 中手动创建卷并将其集成到我的 yaml 文件中。Kubectl describe on pod 显示以下错误

YAML 文件:

Option2: 新建一个存储类,新建一个PV,PVC。这会在 OpenStack 中创建一个新卷,它也会出现在我的 K8 集群中。

将声明关联到 yaml 文件:

YAML 文件:


0 投票
3 回答
6301 浏览

performance - Kubernetes NFS 挂载选项

我最近开始为我的本地集群使用 NFS 卷。这对我来说是最简单和最好的解决方案,但是在实际安装选项方面似乎非常有限。

无论如何在volume.yml文件中的节点/集群上设置挂载选项?

  • NFSv3
  • NFSv4/4.1
  • 查找缓存
  • 不定时
  • rsize,wsize

我有需要特定版本的应用程序以及这些安装选项以提高性能。

无论如何要在这里添加挂载标志吗?

0 投票
1 回答
1125 浏览

kubernetes - 如何将 PV 和 PVC 用于*可靠的*持久卷?

我按照这篇文章中的说明进行操作: 如何将持久卷声明与 gcePersistentDisk 绑定?

当我应用它时,我的 PVC 没有绑定到 PV,而是在事件列表中出现了这个错误:

我发现了一个 github 帖子,其中提出了一些可以解决此问题的建议:

https://github.com/coreos/prometheus-operator/issues/323#issuecomment-299016953

但不幸的是,这并没有什么不同。

是否有一个通俗易懂的文档告诉我们如何使用 PV 和 PVC 来创建真正持久的卷?具体来说,您可以在哪里关闭 pv 和 pvc 并稍后恢复它们,然后取回所有内容?因为现在看来,如果您由于某种原因丢失了 PVC,您将失去与您的音量的连接,并且无法再次将其取回。

0 投票
3 回答
1427 浏览

postgresql - 在 Google 云平台上的 Kubernetes 中创建持久卷

我正在尝试将 postgres 服务部署到具有持久卷和持久卷声明的谷歌云 kubernetes,以为我的应用程序提供存储。

当我部署时,吊舱卡在CrashLoopBackOff.

pod 的一个事件失败并显示以下消息:

Error: failed to start container "postgres": Error response from daemon: error while creating mount source path '/data/postgres-pv': mkdir /data: read-only file system

这是我尝试使用 kubectl 部署的 yaml:

没有什么部署失败,但是 pod 卡在了 CrashLoopBackOff 中。

谢谢您的帮助!

0 投票
1 回答
662 浏览

kubernetes - 无法将更改应用于与 gCloud Kubernetes 引擎中的 ReadWriteOnce PV 绑定的部署?

由于 GCE 磁盘不支持ReadWriteMany,我无法将更改应用到 Deployment,但被困在ContainerCreating with 中FailedAttachVolume

所以这是我的设置:

1.聚氯乙烯

2.服务

3. 部署

这些对于创建 PVC、svc 和部署都很好。Pod 和容器成功启动并按预期工作。


但是,当我尝试通过以下方式应用更改时: kubectl apply -f mysql_deployment.yaml

首先,豆荚被现有的豆荚吸住并没有终止,新的豆荚将永远创建。

其次,在 gCloud 控制台中,在尝试创建的 pod 内,我得到了两个重要的错误日志:

1 of 2 失败附加卷

2 之 2 失败安装

我能立即想到的是ReadWriteOncegCloud PV 的能力。因为 kubernetes 引擎会在终止现有的 Pod 之前创建一个新的 Pod。所以在 ReadWriteOnce 下它永远不能创建一个新的 pod 并声明现有的 pvc ......

有什么想法或者我应该使用其他方式来执行部署更新吗?感谢您的任何贡献和建议 =)

备注:我目前的解决方法是创建一个临时 NFS pod 使其像 ReadWriteMany pvc,这可行但听起来很愚蠢......需要额外的存储 i/o 开销来促进部署更新?.. =P

0 投票
1 回答
2527 浏览

mongodb - Kubernetes / Rancher 2,带有本地存储卷部署的 mongo-replicaset

我尝试,我尝试,但 Rancher 2.1 无法部署“ mongo-replicaset ”目录应用程序,并配置了本地持久卷

如何正确部署具有本地存储卷的 mongo-replicaset?由于我是 rancher 2 的新手,因此任何调试技术都值得赞赏。

我遵循下面的 4 个 ABCD 步骤,但第一个 pod 部署永远不会结束。它有什么问题?日志和结果屏幕在最后。详细配置可以在这里找到。

注意:没有本地持久卷的部署成功

注意:使用本地持久卷和“mongo”映像部署成功(没有副本集版本)。

注意:同时使用 mongo-replicaset 和本地持久卷的部署失败


步骤 A - 集群

创建一个牧场主实例,并且:

  1. 添加三个节点:一个worker,一个worker etcd,一个worker control plane
  2. 在每个节点上添加标签:节点 Affinity 的名称一、名称二和名称三

步骤 B - 存储类

使用以下参数创建存储类:

  1. volumeBindingMode : WaitForFirstConsumer在这里看到
  2. 名称:本地存储

步骤 C - 持久卷

添加 3 个持久卷,如下所示:

  1. 类型:本地节点路径
  2. 访问模式:单节点RW,12Gi
  3. 存储类:本地存储
  4. 节点亲和度:名称一(二为第二卷,三为第三卷)

步骤 D - Mongo-replicaset 部署

从目录中,选择 Mongo-replicaset 并像这样配置它:

  1. 副本集名称:rs0
  2. persistentVolume.enabled:真
  3. 持久卷大小:12Gi
  4. persistentVolume.storageClass:本地存储

结果

执行 ABCD 步骤后,新创建的 mongo-replicaset 应用程序无限保持在“Initializing”状态。

mongo 状态在初始化时停止

关联的 mongo 工作负载仅包含一个 pod,而不是三个。这个 pod 有两个“崩溃”的容器,bootstrap 和 mongo-replicaset。

只有一个 pod 的工作负载崩溃


日志

这是唯一运行的 pod 的 4 个容器的输出。没有错误,没有问题。

mongo容器中没有日志 复制配置容器中几乎没有日志 安装容器中几乎没有日志 来自引导容器的一些日志

我无法弄清楚这个配置有什么问题,也没有任何工具或技术来分析问题。详细配置可以在这里找到。请向我询问更多命令结果。

谢谢