相关疑难解决方法(0)

Kubernetes:如何设置VolumeMount用户组和文件权限

我正在使用kops在AWS上运行Kubernetes集群.我已经将一个EBS卷安装到一个容器上,它可以从我的应用程序中看到,但它是只读的,因为我的应用程序不是以root身份运行的.如何PersistentVolumeClaim以root用户身份登录?在VolumeMount似乎不具有任何选项来控制所安装的路径的用户,组或文件权限.

这是我的部署yaml文件:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: notebook-1
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: notebook-1
    spec:
      volumes:
      - name: notebook-1
        persistentVolumeClaim:
          claimName: notebook-1
      containers:
      - name: notebook-1
        image: jupyter/base-notebook
        ports:
        - containerPort: 8888
        volumeMounts:
        - mountPath: "/home/jovyan/work"
          name: notebook-1
Run Code Online (Sandbox Code Playgroud)

amazon-web-services docker kubernetes persistent-volume-claims

31
推荐指数
5
解决办法
2万
查看次数

Kubernetes 持久卷覆盖 pod/容器中的现有数据

我们正在尝试使用与 pod/container 目录映射的 kubernetes 持久卷作为备份。容器目录 (/home) 已经具有来自 dockerimage 的数据,但是当我们使用容器目录 (/home) 挂载 kubernetes 持久卷时,容器数据会被覆盖或消失。

如何使kubernetes持久卷不覆盖容器的数据而只用预先存在的数据修改任何数据?

猫PV.yml

 apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: task-pv-volume
      labels:
        type: local
    spec:
      storageClassName: manual
      capacity:
        storage: 10Gi
      accessModes:
        - ReadWriteOnce
      hostPath:
        path: "/home/xyz/dock/main/kube/storage"
Run Code Online (Sandbox Code Playgroud)

猫 pvclaim.yml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: task-pv-claim
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 3Gi
Run Code Online (Sandbox Code Playgroud)

下面是使用持久卷部署 pod 的主要清单文件

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  volumes:
    - name: task-pv-storage
      persistentVolumeClaim:
        claimName: task-pv-claim
    - name: cgroup
      hostPath:
        path: /sys/fs/cgroup …
Run Code Online (Sandbox Code Playgroud)

kubernetes persistent-volumes

6
推荐指数
1
解决办法
2690
查看次数