如何将 vmware 存储连接到使用 rancher 2.8 构建的 kubernetes

how to connect vmware storage to kuberentes built using rancher 2.8

集群节点是本地vmware服务器,我们使用rancher只是为了构建k8s集群。

构建成功,当我们尝试托管使用 PVC 的应用程序时遇到问题,动态卷配置没有发生并且 PVC 卡在 'pending' 状态。

正在使用 VMWare 存储 class,我们从 vsphere 管理员那里得到确认,VM 对数据存储具有可见性,理想情况下它应该可以工作。

在配置集群时,我们根据 rancher 文档使用了云提供商凭据。

cloud_provider:
    name: vsphere
    vsphereCloudProvider:
      disk:
        scsicontrollertype: pvscsi
      global:
        datacenters: nxs
        insecure-flag: true
        port: '443'
        soap-roundtrip-count: 0
        user: k8s_volume_svc@vsphere.local 

存储classyaml

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: nxs01-k8s-0004
parameters:
  datastore: ds1_K8S_0004
  diskformat: zeroedthick
reclaimPolicy: Delete

PVC 纱布

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: arango
  namespace: arango
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 20Gi
  storageClassName: nxs01-k8s-0004

现在想知道为什么我的 PVC 卡在 pending 状态了?是否还有其他遗漏的步骤。

我在 rancher 文档中看到说存储策略必须作为输入给出 https://rancher.com/docs/rancher/v2.x/en/cluster-admin/volumes-and-storage/examples/vsphere/#creating-a-storageclass

在 vmware 文档中将其称为可选参数,并在顶部声明它不适用于使用 CSI(容器存储接口)的工具

https://vmware.github.io/vsphere-storage-for-kubernetes/documentation/storageclass.html

我发现 rancher 正在使用一个名为 rshared 的 CSI 驱动程序。

那么现在这个存储策略是强制性的吗?这是阻止我配置 VMDK 文件的原因吗?

我将创建存储策略的文档交给了 vsphere 管理员,他们说这是针对 VSAN 的,数据存储在 VMax 中。我无法理解其中的区别,也无法找到 VMax 的差异文档。

这将是一个很大的帮助!!如果固定 :)

整个事情只是为存储端定义的路径,在云配置yaml中PATH是错误的。 vpshere 管理员给了我们虚拟机所在的路径 相反,他们应该给出存储所在的路径。

纠正此问题后,PVC 进入绑定状态。