我正在将堆栈转换为K8S。数据库需要持久存储。
我使用了kubectl create-f pv.yaml
pv.yaml(根据@Whites11的回答进行了编辑):
kind: PersistentVolume
apiVersion: v1
metadata:
name: pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/nfs"
claimRef:
kind: PersistentVolumeClaim
namespace: default
name: mongo-persisted-storage
我进入GUI上的PVC页面,并手动向索赔添加了一个卷(基于@Whites11的反馈)。我可以看到PVC已经更新了体积,但它仍然悬而未决。
意识到自从进行@Whites11建议的更改后,pod中的原始错误消息已经更改。现在是“persistentvolume”pvvolume“not found(重复2次)”,我想我只需要找出我在哪里写了pvvolume,而不是pv-volume。(也可能是-
在某个地方被自动解析了?
您需要通过向PV规范添加适当的claimref
部分来手动将PV绑定到PVC。
在实践中,使用您喜欢的方法编辑您的PV,并添加一个类似于以下内容的部分:
claimRef:
name: mongo-persisted-storag
namespace: <your PVC namespace>
但是,您需要编辑PVC以绑定正确的卷,方法是在其规范
部分添加以下内容:
volumeName: "<your volume name>"
下面是对此过程如何工作的解释:https://docs.openshift.org/latest/dev_guide/persistent_volumes.html#persistent-volumes-volumes-and-claim-prebinding
问题内容: 简而言之,是否有一些适合高使用率和服务器的产品,还是我需要坚持不懈地改进?如果是这样,为什么他们将其删除? 问题答案: PHP 5.3中引入了对此的支持。对于此之前的版本,PDO和–上帝禁止– mysql扩展是唯一的选择。 引用手册: 与mysql扩展不同,mysqli不提供单独的功能来打开持久连接。要打开持久连接,连接时必须在主机名前加p:。
“持久连接”特性允许利用一个单独的网络连接来运行本来需要多个连接的多个命令。 6.8.1.Open (打开连接) 原型:function Open () 打开到服务器的持久连接。 6.8.2.Close (关闭连接) 原型:function Close () 关闭先前打开的持久连接。
我有一个Kubernetes pod(让我们称之为POD-A),我希望它使用某个配置文件来使用k8s API执行一些操作。配置文件将是一个YAML或JSON,由POD中的应用程序解析。 配置文件由云上的应用服务器托管,它的最新版本可以根据触发器提取。配置文件包含k8s集群中所有部署的配置细节,并将用于使用POD-A中的k8s API更新部署。 现在我想的是将这个配置文件保存在配置映射中,每次拉出一
问题内容: 我有一个使用JDBC连接到MySQL的应用程序。在某些情况下,JDBC连接空闲数小时(甚至几天),并且失去与MySQL的连接,然后尝试执行查询时除外。最好的解决方案是什么? 问题答案: 保持连接打开时间不足是一个坏习惯。当数据库打开时间过长时,它将强制关闭。您应该编写JDBC代码,以便它总是在您获取它们的同一块块中关闭连接(以及语句和结果集),以防止这样的资源泄漏。 但是,获取每个连接
我使用的是Pecl mongo 1.4. x驱动程序(http://pecl.php.net/package/mongo/1.4.1),设置在标题中提到的中等流量服务(5K-每分钟10K请求)。 我发现,在mongoDB中,Auth命令占用大量流量,连接请求速率大约为每秒30-50次。 这会严重影响性能(锁定率高,内存管理不好) 如果我在一个盒子里做netstat(我总共有5-8个盒子),我看到每
我找到的最接近的答案是这样的。 但我想知道的是,Dockerfile卷命令会被Kubernetes完全忽略吗?或者数据将被持久化到两个地方?一个用于docker卷(在主机中哪个豆荚运行),另一个是Kubernetes的PV? 之所以这样问,是因为我从docker hub部署了一些容器,其中包含VOLUME命令。同时,我也把PVC贴在我的豆荚上。我在考虑是否会在节点中创建本地卷(docker卷,而不