K8s PersistentVolume - умный способ просмотра данных - PullRequest
1 голос
/ 19 февраля 2020

Использование движка Google Cloud & Kubernetes:

Существует ли умный способ просмотра или подключения PersistentVolume (физического хранилища, в случае Google PD) к локальному диску / удаленному компьютеру / macos или чему-либо еще? возможность просматривать данные на томе - иметь возможность создавать резервные копии или просто просматривать файлы.

Возможно, использовать что-то вроде FUSE и в моем случае osxfuse.

Очевидно, я могу смонтировать контейнер и выполнить exe c, но, может быть, есть другие способы?

Пробовал s sh в узел и cd на /home/kubernetes/containerized_mounter/rootfs/var/lib/kubelet

Но я получаю cd: pods: Permission denied

1 Ответ

1 голос
/ 25 февраля 2020

Относительно обмена PersistnetDisk между другими VM's это обсуждалось здесь . Если вы хотите использовать один и тот же PD на многих узлах, он будет работать только в режиме read-only.

Самый простой способ проверить, что внутри PD, - это S SH к узлу (как вы упомянули), но для этого потребуются права суперпользователя (sudo). - S SH на узел

$ sudo su
$ cd /home/kubernetes/containerized_mounter/rootfs/var/lib/kubelet/plugins/kubernetes.io/gce-pd/mounts
$ ls 

Теперь вы получите несколько записей, в зависимости от того, сколько у вас PV C. Имя папки совпадает с именем, которое вы получаете от kubectl get pv.

$ kubectl get pv
NAME                                       CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS      CLAIM                  STORAGECLASS   REASON   AGE
pvc-53091548-57af-11ea-a629-42010a840131   1Gi        RWO            Delete           Bound       default/pvc-postgres   standard                42m

Войдите в него, используя cd

$ cd <pvc_name>

в моем случае:

$ cd gke-gke-metrics-d24588-pvc-53091548-57af-11ea-a629-42010a840131

теперь вы можете перечислить все файлы внутри этого PersistentDisk

...gke-gke-metrics-d24588-pvc-53091548-57af-11ea-a629-42010a840131 # ls
lost+found  text.txt
$ cat text.txt 
This is test
It's not empty

Существует учебник по Github , где пользователь использовал sshfs, но на MacOS.

===

Альтернативный способ монтирования PD на локальный компьютер - использование NFS . Тем не менее, вам нужно будет настроить его. Позже вы можете указать mount в вашей Deployment и вашей локальной машине. Более подробную информацию можно найти здесь .

===

Для создания резервной копии вы можете рассмотреть Постоянные снимки диска .

...