cephfs创建pvc失败

搭了一个ceph集群,健康状态是health_warn

img

然后去k8s创建了cephfs-provisioner,ceph-secret和storageclass。创建pvc的时候一直pending,报错如下:
waiting for a volume to be created, either by external provisioner "ceph.com/cephfs" or manually created by system administrator

img

查看cephfs-provisioner的日志,报错如下:
failed to provision volume with StorageClass "cephfs": fork/exec /usr/local/bin/cephfs_provisioner: invalid argument

img

应该怎么解决呢?

参考一下ChatGPT的分析:

可能是cephfs-provisioner的配置有问题,应该检查一下配置,比如ceph的集群信息,username,secret等是否正确。另外,也可以尝试重新部署cephfs-provisioner来解决问题。

以下答案引用自GPT-3大模型,请合理使用:

,谢谢。

1、检查ceph集群的健康状态,并修复问题;
2、检查cephfs-provisioner pod日志,是否有相关错误存在;
3、确保 /usr/local/bin/cephfs_provisioner 这个程序有可执行权限;
4、确保当前cephfs-provisioner的容器可以连接ceph集群;
5、重新部署cephfs-provisioner,代码如下:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: cephfs-provisioner
  namespace: ceph
---
apiVersion: apps/v1 # apiVersion might be apps/v1 or apps/v1beta2 depending on K8s version
kind: Deployment
metadata:
  name: cephfs-provisioner
  namespace: ceph
spec:
  replicas: 1
  selector:
    matchLabels:
      app: cephfs-provisioner
  template:
    metadata:
      labels:
        app: cephfs-provisioner
    spec:
      serviceAccountName: cephfs-provisioner
      containers:
      - name: cephfs-provisioner
        image: quay.io/external_storage/cephfs-provisioner:latest
        env:
        - name: PROVISIONER_NAME
          value: ceph.com/cephfs
        - name: CEPH_MON
          value: 192.168.1.11,192.168.1.12,192.168.1.13   # 此处为ceph集群mon地址
        - name: CEPH_USER
          value: ceph
        - name: CEPH_SECRET_NAME
          value: ceph-secret
        - name: CEPH_FS_NAME
          value: cephfs   # 此处为cephfs的名称
        volumeMounts:
        - mountPath: /etc/ceph
          name: ceph-config
          readOnly: true
      volumes:
      - name: ceph-config
        secret:
          secretName: ceph-config-map

如果我的回答解决了您的问题,请采纳我的回答

问题解决了,是因为我配置文件连接的ceph集群里的主机ip写错了。不过这种报错真的模糊