Memasang fitur berbagi file di klien Compute Engine

Halaman ini menunjukkan cara memasang fileshare Filestore di instance virtual machine (VM) Compute Engine yang berada dalam project Google Cloud dan jaringan VPC yang sama. Untuk mempelajari cara memasang fitur berbagi file di klien dalam jaringan jarak jauh, lihat Memasang fitur berbagi file di klien jarak jauh. Jika Anda ingin mengakses instance Filestore dari cluster Google Kubernetes Engine, baca Mengakses instance Filestore dengan driver CSI Filestore.

Sebelum memulai

Pastikan firewall jaringan dikonfigurasi dengan benar untuk digunakan dengan Filestore. Lihat Mengonfigurasi aturan firewall untuk mengetahui detailnya.

Memasang fitur berbagi file di instance VM Compute Engine

Gunakan salah satu prosedur berikut untuk memasang fitur berbagi file Filestore di VM Compute Engine. Sebaiknya pasang ke VM n1-standard-8 atau yang lebih besar untuk performa yang optimal.

Linux: mount

Untuk memasang fitur berbagi file ke VM klien Linux secara manual:

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman Instance VM

  2. Temukan VM Linux yang ingin Anda gunakan sebagai klien, lalu klik SSH untuk membuka terminal di VM tersebut.

  3. Opsional: Memasang fitur berbagi file di VM klien dengan beberapa antarmuka jaringan melalui jaringan sekunder.

    Detail (Klik untuk meluaskan)

    Jika ingin memasang berbagi file melalui jaringan sekunder, yaitu antarmuka selain nic0, Anda harus mengubah kebijakan perutean VM klien. Jalankan:

    sudo ip route \
        add filestore-reserved-address-range \
        via default-gateway-of-nic-to-filestore
    

    dengan:

    • filestore-reserved-address-range adalah rentang alamat IP yang dicadangkan untuk digunakan oleh instance Filestore.
    • default-gateway-of-nic-to-filestore adalah alamat IP gateway default dari NIC yang terhubung ke jaringan VPC yang digunakan bersama dengan instance Filestore.

    Untuk informasi selengkapnya tentang cara menggunakan instance Compute Engine dengan beberapa NIC, lihat Mengonfigurasi perutean untuk antarmuka jaringan tambahan.

  4. Instal NFS:

    Debian/Ubuntu

    Gunakan perintah berikut untuk menginstal NFS di Debian atau Ubuntu.

    sudo apt-get -y update &&
    sudo apt-get install nfs-common

    RHEL/CentOS

    Gunakan perintah berikut untuk menginstal NFS di Red Hat Enterprise Linux atau CentOS.

    sudo yum update &&
    sudo yum install nfs-utils

    SUSE

    Gunakan perintah berikut untuk menginstal NFS di SUSE.

    sudo zypper update &&
    sudo zypper -n install nfs-client
  5. Buat direktori lokal untuk dipetakan ke fileshare Filestore:

    sudo mkdir -p mount-point-directory
    

    dengan mount-point-directory adalah direktori yang akan dibuat, misalnya /mnt/filedir.

  6. Pasang berbagi file dari instance Filestore dengan menjalankan perintah mount. Anda dapat menggunakan opsi pemasangan NFS. Untuk performa terbaik, sebaiknya gunakan opsi mount NFS berikut:

    Opsi Deskripsi
    hard Klien NFS mencoba kembali permintaan NFS tanpa batas waktu. Untuk mengurangi kemungkinan gangguan I/O saat instance Filestore dimulai ulang, sebaiknya gunakan opsi pemasangan hard untuk klien Linux dan Windows.
    timeo=600 Klien NFS menunggu 600 desisekon (60 detik) sebelum mencoba ulang permintaan NFS.
    retrans=3 Klien NFS mencoba permintaan NFS tiga kali sebelum mengambil tindakan pemulihan lebih lanjut.
    rsize=262144 Klien NFS dapat menerima maksimum 262.144 byte dari server NFS per permintaan READ.
    Catatan: Untuk instance tingkat dasar, tetapkan nilai rsize ke 1048576.
    wsize=1048576 Klien NFS dapat menerima maksimum 1.048.576 byte dari server NFS per permintaan WRITE.
    resvport Klien NFS menggunakan port sumber dengan hak istimewa saat berkomunikasi dengan server NFS untuk titik pemasangan ini.
    async Klien NFS menunda pengiriman operasi tulis aplikasi ke server NFS hingga kondisi tertentu terpenuhi.
    Perhatian: Menggunakan opsi sync akan mengurangi performa secara signifikan.

    • Untuk mengurangi latensi pemasangan, tentukan opsi -o tcp.
    • Jika Anda memasang instance perusahaan atau zonal (sebelumnya SSD skala tinggi) ke VM klien yang menjalankan kernel Linux versi 5.3+, sebaiknya tentukan opsi pemasangan nconnect untuk meningkatkan performa NFS. Sebaiknya tentukan hingga 7 koneksi untuk tingkat zonal dan hingga 2 koneksi untuk tingkat regional dan perusahaan. Secara umum, semakin besar kapasitas berbagi file dan semakin sedikit VM klien yang terhubung, semakin banyak performa yang Anda dapatkan dengan menentukan koneksi tambahan dengan nconnect.

    Jalankan perintah mount dengan opsi pilihan Anda, mirip dengan berikut:

    sudo mount -o rw ip-address:/file-share mount-point-directory
    

    dengan:

    • ip-address adalah alamat IP untuk instance Filestore.
    • file-share adalah nama berbagi file di instance.
    • mount-point-directory adalah jalur tempat Anda ingin memetakan fileshare Filestore.

    Anda bisa mendapatkan alamat IP dan nama file yang dibagikan dari salah satu sumber berikut:

    Misalnya, dengan instance Filestore yang memiliki alamat IP 10.0.1.2 dan fitur berbagi file bernama share1, perintah berikut akan memasang fitur berbagi file ke direktori titik pemasangan lokal /mnt/render:

    sudo mount 10.0.1.2:/share1 /mnt/render
    
  7. Opsional: Jalankan chmod untuk menetapkan izin di direktori pemasangan sehingga orang selain pengguna root dapat menulis ke direktori tersebut. Untuk menetapkan izin direktori, jalankan perintah berikut:

    sudo chmod permissions mount-point-directory
    

    dengan:

    • permissions adalah kumpulan izin yang akan diberikan. Misalnya, chmod go+rw membuat direktori dapat dibaca dan ditulis oleh anggota dalam grup yang memiliki direktori dan semua pengguna lainnya. Untuk mengetahui informasi selengkapnya tentang cara menetapkan izin, lihat Mengonfigurasi akses di berbagi file.
    • mount-point-directory adalah jalur ke direktori tempat fileshare Filestore dipasang.
  8. Opsional: Pastikan berbagi file Filestore dipasang:

    df -h --type=nfs
    

    Output-nya akan berisi entri yang mirip dengan berikut ini:

    Filesystem        Size    Used  Avail  Use%  Mounted on
    10.0.1.2:/share1  1018G   76M   966G   1%    /mnt/render
    10.0.2.2:/vol3    1018G   76M   966G   1%    /mnt/filestore3
  9. Jika perlu menggunakan penguncian file NFS, Anda mungkin perlu menetapkan port yang digunakan oleh daemon statd dan nlockmgr serta mengonfigurasi aturan firewall untuk membuka port tersebut.

Linux: /etc/fstab

Anda dapat membuat berbagi file otomatis dipasang ke VM klien selama booting dengan mengubah file /etc/fstab klien:

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman Instance VM

  2. Temukan VM Linux yang ingin Anda gunakan sebagai klien, lalu klik SSH untuk membuka terminal di VM tersebut.

  3. Opsional: Memasang fitur berbagi file di VM klien yang memiliki beberapa antarmuka jaringan melalui jaringan sekunder.

    Detail (Klik untuk meluaskan)

    Jika ingin memasang berbagi file melalui jaringan sekunder, yaitu antarmuka selain nic0, Anda harus mengubah kebijakan perutean VM klien:

    • Di /etc/default/instance_configs.cfg, tetapkan flag setup untuk NetworkInterfaces ke false:
      [NetworkInterfaces]
      dhclient_script = /sbin/google-dhclient-script
      dhcp_command =
      ip_forwarding = true
         setup = false
    • Di /etc/network/interfaces, tambahkan baris berikut:

      auto eth1
      iface eth1 inet dhcp
          up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
      

    dengan:

    • filestore-reserved-address-range adalah rentang alamat IP yang dicadangkan untuk digunakan oleh instance Filestore.
    • default-gateway-of-nic-to-filestore adalah alamat IP gateway default dari NIC yang terhubung ke jaringan VPC yang digunakan bersama dengan instance Filestore.

    Untuk informasi selengkapnya tentang cara menggunakan instance Compute Engine dengan beberapa NIC, lihat Mengonfigurasi perutean untuk antarmuka jaringan tambahan.

  4. Instal NFS:

    Debian/Ubuntu

    Gunakan perintah berikut untuk menginstal NFS di Debian atau Ubuntu.

    sudo apt-get -y update &&
    sudo apt-get install nfs-common

    RHEL/CentOS

    Gunakan perintah berikut untuk menginstal NFS di Red Hat Enterprise Linux atau CentOS.

    sudo yum update &&
    sudo yum install nfs-utils

    SUSE

    Gunakan perintah berikut untuk menginstal NFS di SUSE.

    sudo zypper update &&
    sudo zypper -n install nfs-client
  5. Buat direktori lokal untuk dipetakan ke fileshare Filestore:

    sudo mkdir -p mount-point-directory
    

    dengan mount-point-directory adalah direktori yang akan dibuat, misalnya /mnt/filedir.

  6. Buka file /etc/fstab:

    sudo vim /etc/fstab
    
  7. Tambahkan baris berikut di file /etc/fstab:

    ip-address:/file-share mount-point-directory nfs options,_netdev 0 0
    

    dengan:

    • ip-address adalah alamat IP untuk instance Filestore.
    • file-share adalah nama file share di instance.
    • mount-point-directory adalah jalur yang ingin Anda petakan ke berbagi file Filestore.
    • options adalah opsi pemasangan NFS. Sebaiknya pertahankan opsi pemasangan NFS default, dengan pengecualian berikut:
      • Untuk pemasangan otomatis, sebaiknya tentukan -o tcp untuk mengurangi latensi saat memasang dan melepas pemasangan.
      • Jika Anda memasang instance zonal (sebelumnya SSD skala tinggi) ke VM klien yang menjalankan kernel Linux versi 5.3+, sebaiknya tentukan opsi pemasangan nconnect untuk meningkatkan performa NFS. Sebaiknya tentukan hingga 7 koneksi untuk tingkat zonal dan hingga 2 koneksi untuk tingkat regional dan perusahaan. Secara umum, makin besar kapasitas berbagi file dan makin sedikit VM klien yang terhubung, makin banyak performa yang Anda dapatkan dengan menentukan koneksi tambahan dengan nconnect.

    Contoh: Baris berikut di /etc/fstab memasang fitur berbagi file vol1 dari instance Filestore dengan alamat IP 10.0.0.2 di direktori titik pemasangan /mnt dengan opsi pemasangan default:

    10.0.0.2:/vol1 /mnt nfs defaults,_netdev 0 0
    
  8. Pasang semuanya di /etc/fstab:

    sudo mount -a
    

    Berbagi file kini otomatis dipasang setiap kali VM klien di-booting.

Linux: autofs

Anda dapat mengonfigurasi autofs untuk otomatis memasang berbagi file hanya saat diakses dan tetap tidak dipasang saat tidak digunakan. Dibandingkan dengan memiliki file share yang dipasang secara statis di /etc/fstab, metode ini membantu menghemat resource VM klien dalam situasi saat klien perlu memetakan ke banyak titik pemasangan.

Menginstal NFS dan autofs di VM klien

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman Instance VM

  2. Temukan VM Linux yang ingin Anda gunakan sebagai klien, lalu klik SSH untuk membuka terminal di VM tersebut.

  3. Opsional: Memasang fitur berbagi file di VM klien dengan beberapa antarmuka jaringan melalui jaringan sekunder.

    Detail (Klik untuk meluaskan)

    Jika ingin memasang berbagi file melalui jaringan sekunder, yaitu antarmuka selain nic0, Anda harus mengubah kebijakan perutean VM klien:

    • Di /etc/default/instance_configs.cfg, tetapkan flag setup untuk NetworkInterfaces ke false:
      [NetworkInterfaces]
      dhclient_script = /sbin/google-dhclient-script
      dhcp_command =
      ip_forwarding = true
         setup = false
    • Di /etc/network/interfaces, tambahkan baris berikut:

      auto eth1
      iface eth1 inet dhcp
          up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
      

    dengan:

    • filestore-reserved-address-range adalah rentang alamat IP yang dicadangkan untuk digunakan oleh instance Filestore.
    • default-gateway-of-nic-to-filestore adalah alamat IP gateway default dari NIC yang terhubung ke jaringan VPC yang digunakan bersama dengan instance Filestore.

    Untuk informasi selengkapnya tentang cara menggunakan instance Compute Engine dengan beberapa NIC, lihat Mengonfigurasi perutean untuk antarmuka jaringan tambahan.

  4. Instal NFS dengan menjalankan perintah berikut:

    Debian/Ubuntu

    Gunakan perintah berikut untuk menginstal NFS di Debian atau Ubuntu.

    sudo apt-get -y update &&
    sudo apt-get install nfs-common

    RHEL/CentOS

    Gunakan perintah berikut untuk menginstal NFS di Red Hat Enterprise Linux atau CentOS.

    sudo yum update &&
    sudo yum install nfs-utils

    SUSE

    Gunakan perintah berikut untuk menginstal NFS di SUSE.

    sudo zypper update &&
    sudo zypper -n install nfs-client
  5. Dari jendela terminal VM klien, instal autofs:

    Debian/Ubuntu

    sudo apt-get install autofs
    

    RHEL/CentOS

    sudo yum install autofs
    

    SUSE

    sudo zypper -n install autofs
    

Mengonfigurasi autofs untuk memasang fitur berbagi file secara dinamis ke VM klien

  1. Aktifkan autofs:

    sudo systemctl enable --now autofs
    
  2. Buat direktori lokal untuk dipetakan ke fileshare Filestore:

    sudo mkdir -p mount-point-directory
    

    dengan mount-point-directory adalah direktori yang akan dibuat. Direktori ini tidak boleh berisi subdirektori apa pun. Dalam panduan ini, kita menggunakan /nfs sebagai direktori titik pemasangan.

  3. Buka file /etc/auto.master:

    sudo vim /etc/auto.master
    
  4. Tambahkan baris berikut di file /etc/auto.master:

    /nfs /etc/auto.nfs --timeout seconds
    

    dengan seconds adalah durasi dalam detik sebelum waktu tunggu pemasangan habis. Nilai defaultnya adalah 300. Menetapkan nilai ini ke 0 akan menonaktifkan pembongkaran oleh autofs.

  5. Buat file bernama /etc/auto.nfs:

    sudo vim /etc/auto.nfs
    
  6. Tambahkan baris berikut di file /etc/auto.nfs:

    mount-point-subdir options ip-address:/file-share
    

    dengan:

    • mount-point-subdir adalah subdirektori di /nfs yang ingin Anda petakan ke berbagi file Filestore. Subdirektori ini dibuat secara dinamis dan tidak boleh ada di VM klien.
    • options adalah opsi pemasangan NFS. Sebaiknya pertahankan opsi pemasangan NFS default, dengan pengecualian berikut:
      • Untuk pemasangan otomatis, sebaiknya tentukan -o tcp untuk mengurangi latensi saat memasang dan melepas pemasangan.
      • Jika Anda memasang instance zonal (sebelumnya SSD skala tinggi) ke VM klien yang menjalankan kernel Linux versi 5.3+, sebaiknya tentukan opsi pemasangan nconnect untuk meningkatkan performa NFS. Sebaiknya tentukan hingga 7 koneksi untuk tingkat zonal dan hingga 2 koneksi untuk tingkat regional dan perusahaan. Secara umum, makin besar kapasitas berbagi file dan makin sedikit VM klien yang terhubung, makin banyak performa yang Anda dapatkan dengan menentukan koneksi tambahan dengan nconnect.
      • ip-address adalah alamat IP untuk instance Filestore.
      • file-share adalah nama berbagi file di instance.

    Contoh: Baris berikut di /etc/auto.nfs memasang berbagi file vol1 dari instance Filestore dengan alamat IP 10.0.0.2 di subdirektori file-shares yang dibuat secara dinamis dengan akses read/write yang diberikan:

    file-shares -rw 10.0.0.2:/vol1
    

Menguji konfigurasi

  1. Jika berbagi file di-mount, Anda harus melepasnya:

    sudo umount mount-point-directory
    

    dengan mount-point-directory adalah jalur tempat fileshare Filestore dipetakan.

    Jika ada entri /etc/fstab yang memasang berbagi file saat sistem di-booting, pastikan untuk menghapusnya.

  2. Muat ulang autofs:

    sudo service autofs reload
    
  3. Pastikan konfigurasi Anda berfungsi:

    ls mount-point-directory/mount-point-subdir
    

    dengan:

    • mount-point-directory adalah direktori titik pemasangan yang ditunjukkan dalam file /etc/auto.master.
    • mount-point-subdir adalah subdirektori titik pemasangan yang ditunjukkan dalam file /etc/auto.nfs.

    Dari contoh kita, perintahnya adalah:

    ls /nfs/file-shares
    

    Jika pemasangan otomatis dikonfigurasi dengan benar, sistem akan terlebih dahulu memasang share file, lalu menampilkan hasil perintah ls. Pembagian file akan otomatis dilepas setelah periode tidak aktif, yang ditentukan dalam nilai timeout yang ditentukan dalam file /etc/auto.master.

Windows

Menghubungkan ke VM Windows

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka halaman Instance VM

  2. Temukan VM Windows yang ingin Anda gunakan sebagai klien, lalu klik RDP untuk membuka koneksi desktop jarak jauh ke VM tersebut. Untuk mengetahui informasi selengkapnya, lihat Menghubungkan ke instance Windows.

Menginstal NFS di VM Windows

  1. Di VM Windows, buka PowerShell sebagai administrator.
  2. Di PowerShell, instal klien NFS:

    Install-WindowsFeature -Name NFS-Client
    
  3. Mulai ulang instance VM Windows seperti yang diminta, lalu buka koneksi desktop jarak jauh baru.

Mengonfigurasi User-ID yang digunakan oleh klien NFS

  1. Di PowerShell, jalankan perintah berikut untuk membuat dua entri registry baru, AnonymousUid dan AnonymousGid:

    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
        -Name "AnonymousUid" -Value "0" -PropertyType DWORD
    
    New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
        -Name "AnonymousGid" -Value "0" -PropertyType DWORD
    
  2. Mulai ulang layanan klien NFS:

    nfsadmin client stop
    
    nfsadmin client start
    

Memetakan berbagi file ke VM Windows

  1. Keluar dari PowerShell:

    exit
    
  2. Opsional: Memasang fitur berbagi file di VM klien dengan beberapa antarmuka jaringan melalui jaringan sekunder.

    Detail (Klik untuk meluaskan)

    Jika ingin memasang berbagi file melalui jaringan sekunder, yaitu antarmuka selain nic0, Anda harus mengubah kebijakan perutean VM klien. Jalankan:

    route -p ^
        add filestore-reserved-address-range ^
        mask address-range-subnet-mask ^
        default-gateway-of-nic-to-filestore
    

    dengan:

    • filestore-reserved-address-range adalah rentang alamat IP yang dicadangkan untuk digunakan oleh instance Filestore.
    • address-range-subnet-mask adalah mask subnet filestore-reserved-address-range. Misalnya, rentang alamat yang dicadangkan /29 akan menggunakan subnet mask 255.255.255.248.
    • default-gateway-of-nic-to-filestore adalah alamat IP gateway default dari NIC yang terhubung ke jaringan VPC yang digunakan bersama dengan instance Filestore.

    Contoh:

    route -p add 10.65.21.176 mask 255.255.255.248 10.128.0.1
    

    Untuk informasi selengkapnya tentang cara menggunakan instance Compute Engine dengan beberapa NIC, lihat Mengonfigurasi perutean untuk antarmuka jaringan tambahan.

  3. Dari Command Prompt, petakan berbagi file ke huruf drive:

    net use drive-letter: \\filestore-ip\file-share-name
    

    dengan:

    • filestore-ip adalah alamat IP instance Filestore.
    • file-share-name adalah nama file share di instance Filestore.
    • drive-letter adalah huruf drive yang ingin Anda tetapkan untuk pemetaan.

    Contoh

    Perintah berikut memetakan fitur berbagi file vol1 di instance Filestore dengan alamat IP 10.0.0.2 ke drive z: di VM Windows klien:

    net use Z: \\10.0.0.2\vol1
    
  4. Opsional: Untuk menggunakan penguncian file NFS, verifikasi hal berikut:

    1. Pastikan aturan firewall dikonfigurasi untuk semua port NFS yang diperlukan, termasuk statd dan nlockmgr.

    2. Pastikan klien NFS Windows dikonfigurasi dengan port yang dicadangkan menggunakan perintah yang mirip dengan berikut di PowerShell:

      nfsadmin client config protocol=tcp UseReservedPorts=yes
      nfsadmin client stop
      nfsadmin client start
      

Membuat dan memasang subdirektori di berbagi file

Setelah file share dipasang di VM klien, Anda dapat membuat subdirektori di file share, yang kemudian dapat dipasang langsung oleh klien, bukan memasang seluruh file share:

  1. Untuk membuat subdirektori di berbagi file yang terpasang, jalankan:

    sudo mkdir -p mount-point-directory/file-share-sub-dir
    

    dengan:

    • mount-point-directory adalah jalur tempat Anda memetakan berbagi file.
    • file-share-sub-dir adalah jalur subdirektori dalam berbagi file yang ingin Anda buat.

    Perintah ini membuat subdirektori di VM klien dan berbagi file. Misalnya, jika Anda memasang file share 10.0.0.2:/vol1 ke direktori /mnt di VM klien, perintah sudo mkdir -p /mnt/nfs akan membuat 10.0.0.2:/vol1/nfs di file share dan /mnt/nfs di VM klien.

  2. Opsional: Jika ingin memasang subdirektori berbagi file ke direktori di VM klien tempat berbagi file dipasang, Anda harus melepas pemasangan berbagi file terlebih dahulu:

    sudo umount mount-point-directory
    

    dengan mount-point-directory adalah direktori tempat berbagi file dipetakan.

  3. Pasang subdirektori:

    sudo mount ip-address:/file-share/file-share-sub-dir mount-point-directory
    

    dengan:

    • ip-address adalah alamat IP untuk instance Filestore.
    • file-share adalah nama berbagi file di instance.
    • file-share-sub-dir adalah jalur subdirektori di berbagi file yang akan dipasang.
    • mount-point-directory adalah jalur tempat Anda ingin memetakan fileshare Filestore.

    Contoh: Dalam perintah berikut:

    sudo mount 10.0.0.2:/vol1/nfs /mnt/nfs
    
    • 10.0.0.2 adalah alamat IP instance Filestore.
    • vol1 adalah nama file share.
    • nfs adalah subdirektori berbagi file.
    • /mnt/nfs adalah direktori di VM klien tempat subdirectory fileshare nfs dipetakan.

Langkah selanjutnya