问题标签 [persistent-volume-claims]

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 投票
1 回答
5369 浏览

kubernetes - 副本之间的 Kubernetes 部署的共享目录

我有一个带有 2 个副本的简单部署。

我希望每个副本都有相同的存储文件夹(共享应用程序上传文件夹)

我一直在玩索赔和数量,但还没有优势,所以寻求快速帮助/示例。



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 回答
1125 浏览

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

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

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

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

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

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

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

0 投票
2 回答
433 浏览

kubernetes - 是否可以使用 Kubernetes 部署和 PVC 引导 Artifactory-OSS Docker 映像?

我们要运行引导程序默认值artifactory.config.xmlsecurity.import.xml文件来预定义我们的用户和存储库。

我们还想使用持久存储,特别是 PVC,在容器重启之间持久保存工件。

根据他们的文档,您可以通过将配置文件放入其中来设置额外的配置,并将artifactory_extra_config它们复制到$ARTIFACTORY_HOME/etc容器启动时的目录中。但是,Artifactory OSS 似乎并非如此。

根据Helm 图表 Bootstrapping Artifactory IMPORTANT: Bootstrapping Artifactory needs license. Pass license as shown in above section.

文档还提到在目录中放置artifactory.config.import.xml和允许引导。security.import.xml$ARTIFACTORY_HOME/etc

我们从 Artifactory-oss:6.1.0 基础镜像构建了一个自定义 docker 镜像,并简单地将两个配置文件复制到该$ARTIFACTORY_HOME/etc目录,但附加 PVC/var/opt/jfrog/artifactory似乎会覆盖配置,导致引导失败。

我发现 Helm 图表将一个包含引导配置文件的 ConfigMap 挂载到一个/bootstrap/卷上,并将它们复制到/artifactory_extra_conf命令中lifecycle.postStart。这似乎也不起作用。

我注意到ENVArtifactory PRO基础映像包含ARTIFACTORY_EXTRA_CONF=/artifactory_extra_confArtifactory OSS不包含。

我还尝试了一些实验,将自定义映像中的配置文件复制到其他目录并使用 复制加载卷initContainers,但到目前为止,我尝试过的任何尝试都无法让我引导 Arrtifactory OSS 并使用安装在/var/opt/jfrog/artifactory.

我在 Artifactory 的 Dockerfile 中指出,/var/opt/jfrog/artifactory子目录实际上链接到/opt/jfrog/artifactory基础映像中的相应目录。

0 投票
1 回答
1088 浏览

kubernetes - Kubernetes,如何将 PersistentVolume 链接到 volumeClaim

我是 Kubernetes 世界的新手,我试图弄清楚 StatefulSet 中定义的 volumeClaim 或 volumeClaimTemplates 如何链接到特定的 PersistentVolume。

我已经按照一些教程来理解和设置本地 PersistentVolume。如果我以 Elasticsearch 为例,当 StatefulSet 启动时,PersistantVolumeClaim 绑定到 PersistantVolume。

如您所知,对于本地 PersistentVolume,我们必须定义存储目的地的本地路径。

对于 Elasticsearch,我定义了类似这样的内容

但在实际项目中,存在不止一个持久卷。因此,我将在路径 /mnt/kube_data 中有多个文件夹。Kubernetes 如何为持久卷声明选择正确的持久卷?

我不希望 Kubernetes 将数据库数据放在为另一个服务创建的持久卷中。

这是 Elasticsearch 的配置:

0 投票
2 回答
4624 浏览

kubernetes - Re-use PersistentVolume after re-installing a helm deployment

When I helm delete <deploymentname> a deployment its PVs and PVCs are deleted as well. How can I avoid the actual data in the PVs from being deleted and be able to reclaim those PVs when I helm install <deploymentname> again?

I am using helm upgrade regularly but it makes me very uncomfortable if all it takes to delete all data is a helm delete (even without --purge option it removes all PVs)

0 投票
5 回答
34596 浏览

kubernetes - 如何识别持久卷声明中剩余的存储空间?

我在 Google Cloud Platform 上有一个 Kubernetes 集群。它具有容量为 1GB 的持久卷声明。持久卷声明绑定到许多部署。

我想确定持久卷声明中剩余的空间,以便了解 1GB 是否足以满足我的应用程序。

我使用了命令“kubectl get pv”,但这并没有显示剩余的存储空间。

0 投票
1 回答
1981 浏览

kubernetes - 具有特定用户权限的 Azure 磁盘的持久卷声明

我正在尝试创建一个动态 Azure 磁盘卷以在具有特定权限要求的 pod 中使用。

该容器在用户 id 下运行472,因此我需要找到一种方法来为该用户(至少)安装具有 rw 权限的卷。

StorageClass定义如下

还有这个PVC

我可以在 pod 中运行以下命令:

吊舱将正确安装并启动,但kubectl logs <the-pod>会显示

即当前目录被挂载root为所有其他用户所有并且只读。

我已经尝试向 中添加一个mountOptions部分StorageClass,但是无论我尝试什么(uid=472user=472),我都会在启动时遇到安装错误,例如

我也尝试从man mount获取一些信息,但我没有找到任何有效的方法。

如何配置此存储类、持久卷声明和卷挂载,以便运行容器进程的非 root 用户有权在挂载路径中写入(并创建子目录)?

0 投票
1 回答
450 浏览

kubernetes - 部署的端口未在 nexus 的 kubernetes 中暴露


我正在通过 kubernetes 创建一个 nexus repo。通过浏览我发现了这个网站(https://blog.sonatype.com/kubernetes-recipe-sonatype-nexus-3-as-a-private-docker-registry)我能够创建一个服务和部署以及 pod 和一切都没有问题。但我无法打开它。

这是我的 nexus.yaml 文件

当我给
kubectl describe service nexus-service -n nexus

我尝试通过提供端口并打开,但我得到一个可以达到的错误。

有人可以帮我吗???提前致谢。