问题标签 [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.
kubernetes - 副本之间的 Kubernetes 部署的共享目录
我有一个带有 2 个副本的简单部署。
我希望每个副本都有相同的存储文件夹(共享应用程序上传文件夹)
我一直在玩索赔和数量,但还没有优势,所以寻求快速帮助/示例。
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!
kubernetes - Kubernetes 没有匹配的可配置卷插件
尝试为 Kubernetes 卷使用 NFS 存储但未能成功。
persistentvolumeclaim无法绑定到已经创建的persistentvolume,见下文
创建持久卷
创建持久卷声明
persistentvolumeclaim 的事件日志显示
任何想法可能会阻止 k8s 绑定两者?
kubernetes - 如何将 PV 和 PVC 用于*可靠的*持久卷?
我按照这篇文章中的说明进行操作: 如何将持久卷声明与 gcePersistentDisk 绑定?
当我应用它时,我的 PVC 没有绑定到 PV,而是在事件列表中出现了这个错误:
我发现了一个 github 帖子,其中提出了一些可以解决此问题的建议:
https://github.com/coreos/prometheus-operator/issues/323#issuecomment-299016953
但不幸的是,这并没有什么不同。
是否有一个通俗易懂的文档告诉我们如何使用 PV 和 PVC 来创建真正持久的卷?具体来说,您可以在哪里关闭 pv 和 pvc 并稍后恢复它们,然后取回所有内容?因为现在看来,如果您由于某种原因丢失了 PVC,您将失去与您的音量的连接,并且无法再次将其取回。
kubernetes - 是否可以使用 Kubernetes 部署和 PVC 引导 Artifactory-OSS Docker 映像?
我们要运行引导程序默认值artifactory.config.xml
和security.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
。这似乎也不起作用。
我注意到ENV
Artifactory PRO基础映像包含ARTIFACTORY_EXTRA_CONF=/artifactory_extra_conf
而Artifactory OSS不包含。
我还尝试了一些实验,将自定义映像中的配置文件复制到其他目录并使用 复制加载卷initContainers
,但到目前为止,我尝试过的任何尝试都无法让我引导 Arrtifactory OSS 并使用安装在/var/opt/jfrog/artifactory
.
我在 Artifactory 的 Dockerfile 中指出,/var/opt/jfrog/artifactory
子目录实际上链接到/opt/jfrog/artifactory
基础映像中的相应目录。
kubernetes - Kubernetes,如何将 PersistentVolume 链接到 volumeClaim
我是 Kubernetes 世界的新手,我试图弄清楚 StatefulSet 中定义的 volumeClaim 或 volumeClaimTemplates 如何链接到特定的 PersistentVolume。
我已经按照一些教程来理解和设置本地 PersistentVolume。如果我以 Elasticsearch 为例,当 StatefulSet 启动时,PersistantVolumeClaim 绑定到 PersistantVolume。
如您所知,对于本地 PersistentVolume,我们必须定义存储目的地的本地路径。
对于 Elasticsearch,我定义了类似这样的内容
但在实际项目中,存在不止一个持久卷。因此,我将在路径 /mnt/kube_data 中有多个文件夹。Kubernetes 如何为持久卷声明选择正确的持久卷?
我不希望 Kubernetes 将数据库数据放在为另一个服务创建的持久卷中。
这是 Elasticsearch 的配置:
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)
kubernetes - 如何识别持久卷声明中剩余的存储空间?
我在 Google Cloud Platform 上有一个 Kubernetes 集群。它具有容量为 1GB 的持久卷声明。持久卷声明绑定到许多部署。
我想确定持久卷声明中剩余的空间,以便了解 1GB 是否足以满足我的应用程序。
我使用了命令“kubectl get pv”,但这并没有显示剩余的存储空间。
kubernetes - 具有特定用户权限的 Azure 磁盘的持久卷声明
我正在尝试创建一个动态 Azure 磁盘卷以在具有特定权限要求的 pod 中使用。
该容器在用户 id 下运行472
,因此我需要找到一种方法来为该用户(至少)安装具有 rw 权限的卷。
StorageClass
定义如下
还有这个PVC
我可以在 pod 中运行以下命令:
吊舱将正确安装并启动,但kubectl logs <the-pod>
会显示
即当前目录被挂载root
为所有其他用户所有并且只读。
我已经尝试向 中添加一个mountOptions
部分StorageClass
,但是无论我尝试什么(uid=472
等user=472
),我都会在启动时遇到安装错误,例如
我也尝试从man mount获取一些信息,但我没有找到任何有效的方法。
如何配置此存储类、持久卷声明和卷挂载,以便运行容器进程的非 root 用户有权在挂载路径中写入(并创建子目录)?
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
我尝试通过提供端口并打开,但我得到一个可以达到的错误。
有人可以帮我吗???提前致谢。