Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 直接装载的NFS卷上的PersistentVolumeClaImpolicy-kubernetes 我已经直接挂载了mysql数据的NFS卷,需要实施存储策略以在pod删除过程中保留数据,并避免任何损坏。请推荐一些有用的。 我没有找到启用PersistentVolumeClaImpolicy的方法:在直接装入的卷中保留。我知道这可以通过PV/PVC创建完成,但是否可以通过statefulset卷。。。在理解特定对象的yaml选项时需要一些指导原则,从中可以获取对象可用的所有选项参数。目前,谷歌搜索每一个选项,并努力尝试。 我无法将configmap文件my.cnf装载到pod中的文件。它删除装载路径中的基础文件。想知道它通常是如何处理的,我们需要为每个配置文件提供单独的装载路径吗。_Docker_Kubernetes - Fatal编程技术网

Docker 直接装载的NFS卷上的PersistentVolumeClaImpolicy-kubernetes 我已经直接挂载了mysql数据的NFS卷,需要实施存储策略以在pod删除过程中保留数据,并避免任何损坏。请推荐一些有用的。 我没有找到启用PersistentVolumeClaImpolicy的方法:在直接装入的卷中保留。我知道这可以通过PV/PVC创建完成,但是否可以通过statefulset卷。。。在理解特定对象的yaml选项时需要一些指导原则,从中可以获取对象可用的所有选项参数。目前,谷歌搜索每一个选项,并努力尝试。 我无法将configmap文件my.cnf装载到pod中的文件。它删除装载路径中的基础文件。想知道它通常是如何处理的,我们需要为每个配置文件提供单独的装载路径吗。

Docker 直接装载的NFS卷上的PersistentVolumeClaImpolicy-kubernetes 我已经直接挂载了mysql数据的NFS卷,需要实施存储策略以在pod删除过程中保留数据,并避免任何损坏。请推荐一些有用的。 我没有找到启用PersistentVolumeClaImpolicy的方法:在直接装入的卷中保留。我知道这可以通过PV/PVC创建完成,但是否可以通过statefulset卷。。。在理解特定对象的yaml选项时需要一些指导原则,从中可以获取对象可用的所有选项参数。目前,谷歌搜索每一个选项,并努力尝试。 我无法将configmap文件my.cnf装载到pod中的文件。它删除装载路径中的基础文件。想知道它通常是如何处理的,我们需要为每个配置文件提供单独的装载路径吗。,docker,kubernetes,Docker,Kubernetes,代码块 apiVersion: v1 kind: Service metadata: name: mymariadb labels: app: mymariadb spec: ports: - port: 3306 name: mysql targetPort: mysql nodePort: 30003 type: NodePort selector: app: mymariadb --- apiVersion: apps/v

代码块

apiVersion: v1
kind: Service
metadata:
  name: mymariadb
  labels:
    app: mymariadb

spec:
  ports:
  - port: 3306
    name: mysql
    targetPort: mysql
    nodePort: 30003
  type: NodePort
  selector:
    app: mymariadb

---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: mymariadb
  labels:
    app: mymariadb
spec:
  serviceName: "mymariadb"
  selector:
    matchLabels:
      app: mymariadb
  template:
    metadata:
      labels:
        app: mymariadb
    spec:
      containers:
      - name: mariadb
        image: mariadb:10.3.7
        env:
        - name: MYSQL_ROOT_PASSWORD
          value: xxxx
        ports:
        - name: mysql
          containerPort: 3306
        volumeMounts:
        - name: data
          mountPath: /data
          subPath: mysql
        - name: conf
          mountPath: /etc/mysql  # /conf.d removing files
        resources:
          requests:
            cpu: 500m
            memory: 2Gi
      volumes:
      - name: data
        nfs:
          server: 10.12.32.41
          path: /data/mymariadb
        spec:
          persistentVolumeReclaimPolicy: Retain  # not taking
      - name: conf
        configMap:
          name: mycustconf
          items:
          - key: my.cnf
            path: my.cnf

首先,出于两个原因,我不建议在Kubernetes平台中安装nfs。从安全角度来看,另一个容器可以访问工作节点上的nfs装载。第二,从性能的角度来看,与其他解决方案相比,工作节点和存储之间的连接将更慢。正如您所知,性能对于db连接非常关键。我认为你应该对此进行评估

我建议您使用一种云本机存储。您可以在下面的链接中查看它们。Ceph和Gluster是受欢迎的产品

如果确实要继续使用nfs解决方案,可以检查两点:

1您是否检查了存储设备上的访问列表?您应该看到nfs装载的工作节点

2尝试在工作节点上装载nfs存储后,可以尝试在kubernetes群集上导入部署