使用 DNS 名称 (FQDN) 代替 GKE 的持久卷对象的 GCP 文件存储 IP

问题描述 投票:0回答:1

为了将 GCP 文件安装到 GKE Pod,下面是 PV 对象清单片段。这里 Pod securityContext 的 fsGroup 设置并未向已安装的 Filestore 所需的组授予所有权。

  nfs:
    server: my.filestore.com
    path: /data

这是 Pod 中使用的 securityContext,其中引用了上述 PV/PVC

  spec:
    securityContext:
      runAsGroup: 101
      runAsUser: 101
      fsGroup: 101 #mygrp
      fsGroupChangePolicy: "OnRootMismatch"

这是具有上述清单的挂载目录的权限,请参阅组。

drwxrwsr-x 9 root root  4096 Aug 10 10:26 data

搜索互联网后,我找到了以下解决方案,但在这里我被迫使用 IP 而不是 GKE 中文件存储的 PV 对象中的 GCP 文件存储的 DNS 名称。以下是我的 pv 的 CSI 部分片段。

  csi:
    driver: filestore.csi.storage.gke.io
    volumeHandle: my-pv-volume-handle
    volumeAttributes:
      ip: 1.2.3.4
      volume: /data

这是具有上述清单的挂载目录的权限,请参阅组。

drwxrwsr-x 9 root mygrp  4096 Aug 10 10:26 data

我想两者兼得,即。使用 DNS 名称并为已安装的文件夹获取正确的组。

kubernetes google-kubernetes-engine google-cloud-filestore csi
1个回答
0
投票

因此,两种挂载共享 Filestore 到 GKE 的方法的区别在于,一种使用直接 nfs,第二种使用 csi 驱动程序。

我们推荐 CSI 驱动程序,因为它能够实现您为 pod 设置的 securityContext,但它不支持 FQDN。在 IP 地址上。我建议在这里打开一个错误https://github.com/kubernetes-sigs/gcp-filestore-csi-driver/issues并询问原因以及他们是否计划实施它!

© www.soinside.com 2019 - 2024. All rights reserved.