Mengonfigurasi volume NFS

Kf mendukung pemasangan volume NFS menggunakan kf marketplace.

Prasyarat

Selesaikan penyiapan platform NFS.

Membuat instance layanan NFS

Jalankan kf marketplace untuk melihat layanan yang tersedia. Layanan NFS bawaan muncul dalam daftar jika NFS diaktifkan di platform.

Broker           Name  Namespace  Description
nfsvolumebroker  nfs              mount nfs shares

Memasang sistem file eksternal

Membuat instance layanan

Untuk memasang ke layanan NFS yang ada:

kf create-service nfs existing SERVICE-INSTANCE-NAME -c '{"share":"SERVER/SHARE", "capacity":"CAPACITY"}'

Ganti variabel dengan nilai Anda.

  • SERVICE-INSTANCE-NAME adalah nama yang Anda inginkan untuk instance layanan volume NFS ini.
  • SERVER/SHARE adalah alamat NFS server Anda dan bagikan.
  • CAPACITY menggunakan format Kubernetes quantity.

Pastikan layanan volume NFS muncul di daftar layanan Anda. Anda dapat mengharapkan output yang mirip dengan contoh ini:

$ kf services
...
Listing services in Space: demo-space
Name                Type      ClassName         PlanName  Age    Ready  Reason
filestore-nfs       volume    nfs               existing  6s     True   <nil>
...

Mengikat instance layanan ke Aplikasi

Untuk mengikat instance layanan NFS ke Aplikasi, jalankan:

kf bind-service YOUR-APP-NAME SERVICE-NAME -c '{"uid":"2000","gid":"2000","mount":"MOUNT-PATH","readonly":true}'

Ganti variabel dengan nilai Anda.

  • YOUR-APP-NAME adalah nama Aplikasi tempat Anda ingin menggunakan layanan volume.

  • SERVICE-NAME adalah nama instance layanan volume yang Anda buat di langkah sebelumnya.

  • uid:UID dan gid:GID menentukan izin direktori berbagi pemasangan.

  • MOUNT-PATH adalah jalur tempat volume harus dipasang dalam Aplikasi Anda.

  • (Opsional) "readonly":true adalah string JSON opsional yang membuat pemasangan hanya baca. Secara default, Volume Services memasang sistem file baca-tulis.

Anda dapat menampilkan daftar semua binding dalam Ruang menggunakan perintah kf bindings. Anda akan melihat output yang mirip dengan contoh ini:

$ kf bindings
...
Listing bindings in Space: demo-space
Name                                     App           Service             Age  Ready
binding-spring-music-filestore-nfs       spring-music  filestore-nfs       71s  True
...

Mengakses layanan volume dari Aplikasi

Untuk mengakses layanan volume dari Aplikasi, Anda harus mengetahui jalur file mana yang akan digunakan dalam kode. Anda dapat melihat jalur file dalam detail binding layanan, yang dapat dilihat dalam variabel lingkungan untuk Aplikasi Anda.

Melihat variabel lingkungan untuk Aplikasi Anda:

kf vcap-services YOUR-APP-NAME

Ganti YOUR-APP-NAME dengan nama Aplikasi Anda.

Berikut adalah contoh output perintah kf vcap-services:

kf vcap-services *YOUR-APP-NAME*
{
  "nfs": [
    {
      "instance_name": "nfs-instance",
      "name": "nfs-instance",
      "label": "nfs",
      "tags": [],
      "plan": "existing",
      "credentials": {
        "capacity": "1Gi",
        "gid": 2000,
        "mount": "/test/mount",
        "share": "10.91.208.210/test",
        "uid": 2000
      },
      "volume_mounts": [
        {
          "container_dir": "/test/mount",
          "device_type": "shared",
          "mode": "rw"
        }
      ]
    }
  ]
}

Gunakan properti dalam volume_mounts untuk informasi apa pun yang diperlukan oleh Aplikasi Anda.

Properti Deskripsi
container_dir String yang berisi jalur ke volume terpasang yang Anda kaitkan ke Aplikasi.
device_type Rilis volume NFS. Fitur ini saat ini hanya mendukung perangkat bersama. Perangkat bersama mewakili sistem file terdistribusi yang dapat dipasang di semua instance Aplikasi secara bersamaan.
mode String yang memberitahukan jenis akses yang dimiliki Aplikasi Anda ke NFS, baik ro (hanya baca), atau rw (baca dan tulis).