All Products
Search
Document Center

Container Service for Kubernetes:Pulihkan file NAS yang dihapus dengan Keranjang Daur Ulang CNFS

Last Updated:Sep 05, 2026

Container Network File System (CNFS) mendukung fitur Keranjang Daur Ulang untuk memulihkan file yang tidak sengaja dihapus dari volume Penyimpanan File NAS, menyediakan perlindungan data yang sederhana dan efektif bagi data aplikasi. Tutorial ini menjelaskan langkah-langkah penerapan aplikasi NGINX pada volume NAS yang dikelola oleh CNFS, penghapusan file, serta pemulihannya dari Keranjang Daur Ulang.

Tagihan

Mengaktifkan Keranjang Daur Ulang gratis. Namun, file dalam Keranjang Daur Ulang mengonsumsi ruang penyimpanan dan ditagih sesuai laju jenis penyimpanan aslinya. Tetapkan periode retensi untuk membatasi biaya penyimpanan. Untuk detailnya, lihat Tagihan sistem file NAS tujuan umum dan Tagihan kelas penyimpanan IA.

Izin

Hanya pemilik sistem file atau pengguna Resource Access Management (RAM) yang berwenang yang dapat menggunakan Keranjang Daur Ulang. Untuk detailnya, lihat Lakukan kontrol akses berdasarkan kebijakan RAM.

Prasyarat

Langkah 1: Terapkan aplikasi NGINX dengan volume NAS yang dikelola CNFS

Buat klaim volume persisten (PVC), Penyebaran (Deployment), dan Layanan LoadBalancer. Kemudian tulis file index.html ke volume NAS dan verifikasi akses melalui browser.

Verifikasi status objek CNFS

  1. Tampilkan daftar objek CNFS di kluster Anda:

       kubectl get cnfs
       NAME                                      AGE
       default-cnfs-nas-7938cef-20210907193713   21h
  2. Periksa status objek CNFS. Objek CNFS harus berada dalam status Available sebelum Anda melanjutkan.

       kubectl get cnfs default-cnfs-nas-7938cef-20210907193713 -o yaml | grep Available
       status: Available

Buat PVC

Jalankan perintah berikut untuk membuat PVC bernama cnfs-nas-pvc yang mereferensikan StorageClass alibabacloud-cnfs-nas:

Penting

Field storageClassName harus mereferensikan StorageClass CNFS.

cat << EOF | kubectl apply -f -
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: cnfs-nas-pvc
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: alibabacloud-cnfs-nas
  resources:
    requests:
      storage: 30Gi
EOF

Buat Deployment

Jalankan perintah berikut untuk membuat Deployment bernama cnfs-nas-deployment. Deployment ini memasang PVC ke /app dan mengekspos port kontainer 8080 (bernama http):

Penting

Deployment ini mereferensikan PVC yang dibuat pada langkah sebelumnya.

cat << EOF | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
  name: cnfs-nas-deployment
  labels:
    app: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      securityContext:
        runAsUser: 0
      containers:
      - name: nginx
        image: docker.io/bitnami/nginx:1.16.1-debian-9-r56
        volumeMounts:
        - mountPath: "/app"
          name: cnfs-nas-pvc
        ports:
        - containerPort: 8080
          name: http
      volumes:
      - name: cnfs-nas-pvc
        persistentVolumeClaim:
          claimName: cnfs-nas-pvc
EOF

Buat Layanan LoadBalancer

Jalankan perintah berikut untuk membuat Layanan LoadBalancer bernama nginx-default. Instance Server Load Balancer (SLB) mengekspos Layanan melalui Alamat IP publik dan meneruskan permintaan HTTP ke Pod dengan label app: nginx:

cat << EOF | kubectl apply -f -
apiVersion: v1
kind: Service
metadata:
  name: nginx-default
  labels:
    app: nginx
spec:
  type: LoadBalancer
  externalTrafficPolicy: "Cluster"
  ports:
    - name: http
      port: 80
      targetPort: http
  selector:
    app: nginx
EOF

Tulis halaman selamat datang NGINX

  1. Dapatkan nama Pod.

       kubectl get pod
       NAME                                   READY   STATUS    RESTARTS   AGE
       cnfs-nas-deployment-597bc9fb45-cmkss   1/1     Running   0          3h23m
  2. Buka shell di dalam Pod dan navigasi ke /app:

     kubectl exec cnfs-nas-deployment-597bc9fb45-cmkss -ti -- sh
       cd /app
  3. Tulis file index.html:

       cat << EOF >> index.html
       <!DOCTYPE html>
       <html>
       <head>
       <title>Selamat datang di nginx!</title>
       <style>
       html { color-scheme: light dark; }
       body { width: 35em; margin: 0 auto;
       font-family: Tahoma, Verdana, Arial, sans-serif; }
       </style>
       </head>
       <body>
       <h1>Selamat datang di nginx!</h1>
       <p>Jika Anda melihat halaman ini, server web nginx berhasil diinstal dan
       berfungsi. Diperlukan konfigurasi lebih lanjut.</p>
    
       <p>Untuk dokumentasi dan dukungan online, silakan merujuk ke
       <a href="http://nginx.org/">nginx.org</a>.<br/>
       Dukungan komersial tersedia di
       <a href="http://nginx.com/">nginx.com</a>.</p>
    
       <p>Terima kasih telah menggunakan nginx.</p>
       </body>
       </html>
       EOF
  4. Keluar dari Pod:

       exit

Verifikasi akses ke halaman selamat datang NGINX

  1. Dapatkan Alamat IP publik instance SLB.

       kubectl get svc
       NAME            TYPE           CLUSTER-IP        EXTERNAL-IP      PORT(S)        AGE
       nginx-default   LoadBalancer   192.168.XX.XX     47.115.XX.XX     80:30989/TCP   20h
  2. Buka Alamat IP publik (misalnya, 47.115.XX.XX) di browser. Halaman selamat datang NGINX akan muncul.

Langkah 2: Hapus file dan pulihkan dari Keranjang Daur Ulang

Simulasikan kehilangan data dengan menghapus index.html, lalu pulihkan file tersebut melalui Keranjang Daur Ulang di Konsol ACK.

Hapus file

  1. Hapus file index.html dari Pod:

       kubectl exec cnfs-nas-deployment-597bc9fb45-cmkss -- rm -rf /app/index.html
  2. Segarkan browser. Halaman selamat datang NGINX tidak lagi dapat diakses dan mengembalikan error 403.

    403 Forbidden
    
    nginx/1.16.1

Pulihkan file dari Keranjang Daur Ulang

CNFS mengaktifkan Keranjang Daur Ulang secara default pada sistem file NAS yang dikelola.

  1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

  2. Di halaman Clusters, temukan kluster Anda dan klik namanya. Di panel sebelah kiri, pilih Volumes > Persistent Volumes.

  3. Di halaman Persistent Volumes, temukan volume persisten (PV) dan klik Recycle Bin di kolom Actions. Dalam contoh ini, nama PV adalah nas-ecaf6018-5250-4e19-b570-5d9e657d23bc.

  4. Di tab Recycle Bin halaman sistem file NAS, klik tab Deleted Files and Directories. Temukan file yang dihapus dan klik Restore di kolom Actions.

  5. Klik Restore to the original path, lalu klik OK.

  6. Segarkan browser. Halaman selamat datang NGINX muncul kembali, yang mengonfirmasi bahwa index.html telah dipulihkan.

Referensi

Untuk informasi lebih lanjut tentang fitur Keranjang Daur Ulang NAS, lihat Keranjang daur ulang.