GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengonfigurasi Volume Persisten berbasis NFS di Kubernetes

Direkomendasikan untuk menempatkan data pod ke dalam beberapa volume persisten sehingga data akan tersedia bahkan setelah penghentian pod. Di Kubernetes (k8s), volume persisten berbasis NFS dapat digunakan di dalam pod. Dalam artikel ini kita akan mempelajari cara mengkonfigurasi volume persisten dan klaim volume persisten dan kemudian kita akan membahas, bagaimana kita dapat menggunakan volume persisten melalui nama klaimnya di pod k8s.

Saya berasumsi kita memiliki cluster k8s fungsional dan Server NFS. Berikut adalah detail untuk penyiapan lab,

  • IP Server NFS =192.168.1.40
  • Bagian NFS =/opt/k8s-pods/data
  • Kluster K8 =Satu master dan dua node pekerja

Catatan: Pastikan server NFS dapat dijangkau dari node pekerja dan coba pasang nfs share pada setiap pekerja sekali untuk pengujian.

Buat file di dalam nfs share karena kita akan memasang share ini di nginx pod nanti di artikel.

[[email protected] ~]$ echo "Halo, NFS Storage NGINX"> /opt/k8s-pods/data/index.html

Konfigurasikan PV berbasis NFS (Volume Persisten)

Untuk membuat volume persisten berbasis NFS di K8, buat file yaml di master node dengan konten berikut,

[[email protected] ~]$ vim nfs-pv.yamlapiVersion:v1kind:PersistentVolumemetadata:  name:nfs-pvspec:  capacity:    storage:10Gi  volumeMode:Filesystem  accessModes:    - ReadWriteMany  persistentVolumeReclaim Name :RecycleOptions storage - nfsvers=4.1  nfs:    jalur:/opt/k8s-pods/data    server:192.168.1.40

Simpan dan keluar dari file

Sekarang buat volume persisten menggunakan file yaml yang dibuat di atas, jalankan

[[email protected] ~]$ kubectl create -f nfs-pv.yamlpersistentvolume/nfs-pv created[[email protected] ~]$

Jalankan perintah kubectl berikut untuk memverifikasi status volume persisten

 [[Dilindungi Email] ~] $ KUBECTL Mode Akses Kapasitas Pvname Reclaim Kebijakan Status Klaim StorageClass Alasan Agenfs-PV 10 Gi RWX Tersedia NFS 20S [[PRE>] $ 
~]

Keluaran di atas mengonfirmasi bahwa PV telah berhasil dibuat dan tersedia.

Konfigurasikan Klaim Volume Persisten

Untuk memasang volume persisten di dalam pod, kita harus menentukan klaim volume persistennya. Jadi, mari buat klaim volume persisten menggunakan file yaml berikut

[[email protected] ~]$ vi nfs-pvc.yamlapiVersion:v1kind:PersistentVolumeClaimmetadata:  name:nfs-pvcspec:  storageClassName:nfs  accessModes:    - ReadWriteMany  resource:    request:   
penyimpanan

Simpan dan keluar dari file.

Jalankan perintah kubectl di bawah untuk membuat pvc menggunakan file yaml di atas,

[[email protected] ~]$ kubectl create -f nfs-pvc.yamlpersistentvolumeclaim/nfs-pvc created[[email protected] ~]$

Setelah eksekusi di atas, control plane akan mencari volume persisten yang memenuhi persyaratan klaim dengan nama kelas penyimpanan yang sama dan kemudian akan mengikat klaim ke volume persisten, contoh di bawah ini:

 [[Dilindungi Email] ~] $ KUBECTL Dapatkan PVC NFS-PVCName Status Kapasitas Akses Kapasitas Akses StorageClass Agenfs-PVC Bound NFS-PV 10GI RWX NFS 3M54S [[email terlindung] ~] $ [[EMACTLEK] ~] KUBECTL Dapatkan PV NFS-Pvname Mode Akses Kapasitas Reclaim Kebijakan Status Klaim StorageClass Alasan Agenfs-PV 10 Gi RWX Recycle Bound Default / NFS-PVC NFS 18m [[email terlindungi] ~] $ 
~]

Keluaran di atas menegaskan bahwa klaim (nfs-pvc) terikat dengan volume persisten (nfs-pv).

Sekarang kita siap untuk menggunakan volume persisten berbasis nfs di samping pod.

Gunakan Volume Persisten berbasis NFS di dalam Pod

Buat pod nginx menggunakan file yaml di bawah, itu akan memasang klaim volume persisten di '/usr/share/nginx/html'

[[email protected] ~]$ vi nfs-pv-podapiVersion:v1kind:Podmetadata:  name:nginx-pv-podspec:  volumes:    - name:nginx-pv-storage      persistentVolumeClaim:     -  claimName: pv-nfs name:nginx      image:nginx      port:       - containerPort:80        name:"nginx-server"      volumeMounts:       - mountPath:"/usr/share/nginx/html"   >  x  nama 

Simpan dan tutup file.

Sekarang buat pod menggunakan file yaml di atas, jalankan

[[email protected] ~]$ kubectl create -f nfs-pv-pod.yamlpod/nginx-pv-pod created[[email protected] ~]$[[email protected] ~]$ kubectl get pod nginx- PV-POD -O Widename Ready Status Restart Usia IP Node Node Kisah Node GatesnginX-PV-POD 1/1 LIHAT 0 66S 172.16.1640.28 K8S-Pekerja-2  $  

Catatan: Untuk mengetahui lebih detail tentang pod, kubectl mendeskripsikan pod

Output perintah di atas mengkonfirmasi bahwa pod telah berhasil dibuat. Sekarang coba akses halaman nginx menggunakan perintah curl

[[email protected] ~]$ curl http://172.16.140.28Halo, NFS Storage NGINX[[email protected] ~]$

Sempurna, output perintah curl di atas mengonfirmasi bahwa volume persisten dipasang dengan benar di dalam pod saat kita mendapatkan konten file index.html yang ada di NFS share.

Ini menyimpulkan artikel, saya yakin kalian punya beberapa ide dasar tentang cara mengonfigurasi dan menggunakan volume persisten berbasis NFS di dalam pod Kubernetes.

Baca Juga :Cara Setup Cluster Kubernetes(k8s) di HA dengan Kubeadm

Baca Juga :Cara Memasang dan Menggunakan Helm di Kubernetes


Linux
  1. Cara mengkonfigurasi NFS di Debian 9 Stretch Linux

  2. Cara Menghapus Layanan di Kubernetes

  3. CentOS / RHEL :Cara membuat partisi swap berbasis LVM baru

  1. Volume Docker NFS:Cara Membuat dan Menggunakan

  2. Cara Memulai Ulang Pod Kubernetes

  3. Cara mengonfigurasi xhost agar persisten di seluruh reboot di Linux

  1. Cara Mengonfigurasi Kubernetes untuk Pembaruan Bergulir

  2. Cara Menginstal dan Mengonfigurasi Server NFS di Ubuntu 20.04

  3. Cara Menginstal dan Mengonfigurasi Server NFS di Ubuntu 18.04