繁体   English   中英

pod 有未绑定的即时 PersistentVolumeClaims,我使用部署了 milvus 服务器

[英]pod has unbound immediate PersistentVolumeClaims, I deployed milvus server using

etcd:已启用:真名称:etcd replicaCount:3 pdb:创建:假图像:存储库:“milvusdb/etcd”标签:“3.5.0-r7”pullPolicy:IfNotPresent

服务:类型:ClusterIP 端口:2379 peerPort:2380

身份验证:rbac:已启用:假

持久性:启用:真存储类:访问模式:ReadWriteOnce 大小:10Gi

启用自动压缩

每 1000 次修订压缩一次

autoCompactionMode:修订版 autoCompactionRetention:“1000”

将默认配额增加到 4G

额外的环境变量:

  • 名称:ETCD_QUOTA_BACKEND_BYTES 值:“4294967296”
  • 名称:ETCD_HEARTBEAT_INTERVAL 值:“500”
  • 名称:ETCD_ELECTION_TIMEOUT enter code here值:“2500”

Pulsar 依赖项的配置值

参考: https ://github.com/apache/pulsar-helm-chart

在此处输入图像描述

我正在尝试在 ubuntu 服务器中使用 kubernete 运行 milvus 集群。 我使用了 helm menifest https://milvus-io.github.io/milvus-helm/

值.yaml https://raw.githubusercontent.com/milvus-io/milvus-helm/master/charts/milvus/values.yaml

我检查了 PersistentValumeClaim 他们是一个错误没有可用于此声明的持久卷并且没有设置存储类

出现此错误是因为您没有持久卷。 一个pvc需要一个至少和pvc容量一样的pv。

这可以手动完成或使用 Volume provvisioner 完成。

有人会说的最简单的方法是使用本地存储类,它使用实例化 pod 的节点的磁盘空间,添加 pod 亲和力,以便 pod 始终在同一节点上启动并可以使用该磁盘上的卷。 在您的情况下,您使用的是 3 个副本。 尽管可以在同一个节点上启动所有 3 个实例,但这很可能不是您想要使用 Kubernetes 实现的。 如果该节点中断,您将不会在另一个节点上运行任何其他实例。

您首先需要了解集群的基础设施。 卷的数据应该存储在哪里?

网络文件系统 nfs 可能是一个可行的解决方案。 在这种情况下,您的基础设施中某处有一个 nfs,所有节点都可以访问它。

因此,您可以创建一个可从所有节点访问的 PV。

要不总是手动分配 PV,您可以在集群中安装 Volumeprovisioner。

我在一些集群中使用了这个: https ://github.com/kubernetes-sigs/nfs-subdir-external-provisioner

正如我所说,您必须已经有一个 nfs 并使用路径配置 provvisioner.yaml。

它看起来像这样:

# patch_nfs_details.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: nfs-client-provisioner
  name: nfs-client-provisioner
spec:
  template:
    spec:
      containers:
        - name: nfs-client-provisioner
          env:
            - name: NFS_SERVER
              value: <YOUR_NFS_SERVER_IP>
            - name: NFS_PATH
              value: <YOUR_NFS_SERVER_SHARE>
      volumes:
        - name: nfs-client-root
          nfs:
            server: <YOUR_NFS_SERVER_IP>
            path: <YOUR_NFS_SERVER_SHARE>

如果您使用不带 provvisioner 的 nfs,则需要定义一个链接到您的 nfs 的 storageClass。

有很多解决方案来保存持久卷。

在这里您可以找到 StorageClasses 的列表:

https://kubernetes.io/docs/concepts/storage/storage-classes/

最后,如果您不是自己管理集群,它还取决于集群的配置位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM