File konfigurasi FUSE Cloud Storage

Halaman ini menjelaskan cara menggunakan file konfigurasi FUSE Cloud Storage untuk mengonfigurasi perilaku Cloud Storage FUSE secara persisten. Untuk menggunakan file konfigurasi, tentukan jalur ke file konfigurasi dalam flag --config-file sebagai bagian dari perintah mount Anda.

File konfigurasi adalah file YAML yang menggunakan format dan kolom berikut. Beberapa kolom juga dapat ditentukan menggunakan opsi command line.

write:
  create-empty-file: boolean
logging:
  file-path: "string"
  format: enum
  severity: enum
  log-rotate:
    max-file-size-mb: integer
    backup-file-count: integer
    compress: boolean
file-cache:
  max-size-mb: integer
  cache-file-for-range-read: boolean
metadata-cache:
  stat-cache-max-size-mb: integer
  ttl-secs: integer
  type-cache-max-size-mb: integer
cache-dir: integer
gcs-auth:
  anonymous-access: boolean
file-system:
  kernel-list-cache-ttl-secs: integer
  ignore-interrupts: boolean

Kolom konfigurasi

Tabel berikut menjelaskan kolom yang dapat Anda tentukan dalam file konfigurasi. Kecuali jika dinyatakan sebaliknya, semua kolom bersifat opsional.

Kolom Deskripsi
create-empty-file Nilai Boolean yang menentukan apakah akan membuat file nol byte di Cloud Storage atau tidak saat Anda mulai menulis ke file baru di bucket yang terpasang. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke false.
file-path Jalur ke file log tempat log akan ditulis, ditetapkan sebagai string. Misalnya, /var/log. Jika kolom ini tidak ditentukan, log akan dirutekan ke stdout saat Cloud Storage FUSE berjalan dalam mode latar depan, dan ke syslogs saat Cloud Storage FUSE berjalan dalam mode latar belakang.
format Format yang digunakan untuk membuat log, dinyatakan sebagai enum. Nilai berupa text atau json. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke json.
severity

Tingkat keparahan log yang Anda inginkan untuk dibuat oleh Cloud Storage FUSE, yang dinyatakan sebagai enum. Tingkat keparahan diurutkan dari tingkat keparahan terendah ke tingkat keparahan tertinggi:

  • trace
  • debug
  • info
  • warning
  • error

Saat Anda menentukan tingkat keparahan, Cloud Storage FUSE akan menghasilkan log dengan tingkat keparahan yang sama atau lebih tinggi. Misalnya, saat Anda menentukan warning, Cloud Storage FUSE akan menghasilkan log untuk peringatan dan error. Anda juga dapat menentukan off untuk menonaktifkan semua logging. Jika salah satu dari tiga opsi berikut juga ditentukan sebagai bagian dari perintah Anda, tingkat keparahannya akan otomatis ditetapkan ke trace:

  • --debug_fuse
  • --debug_gcs
  • --debug_mutex

Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke info.

max-file-size-mb Ukuran maksimum dalam megabyte (MB) yang dapat dicapai file log sebelum dirotasi. Nilai minimumnya adalah 1. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke 512.
backup-file-count Jumlah maksimum file log yang dirotasi yang akan dipertahankan, tidak termasuk file aktif yang lognya ditulis. Jika nilai ditetapkan ke 0, semua file log yang dirotasi akan dipertahankan. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke 10.
compress Nilai Boolean yang menentukan apakah file log yang dirotasi dikompresi menggunakan gzip. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke true.
max-size-mb

Ukuran maksimum dalam MiB yang dapat digunakan oleh cache file. Jika ada, max-size-mb akan mengaktifkan penyimpanan file di cache Cloud Storage FUSE dan berguna jika Anda ingin membatasi total kapasitas yang dapat digunakan oleh cache Cloud Storage FUSE dalam direktori yang terpasang.

  • Tentukan -1 untuk menggunakan seluruh kapasitas cache yang tersedia di direktori yang Anda tentukan untuk cache-dir.
  • Tentukan 0 untuk menonaktifkan cache file.

Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke -1.

cache-file-for-range-read

Nilai Boolean yang menentukan apakah objek lengkap harus didownload secara asinkron dan disimpan di direktori cache Cloud Storage FUSE saat pembacaan pertama dilakukan dari offset bukan nol. Nilai ini harus ditetapkan ke true jika Anda berencana melakukan beberapa pembacaan acak atau pembacaan parsial. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke false.

Perhatikan bahwa jika Anda melakukan pembacaan parsial yang dimulai pada offset 0, Cloud Storage FUSE akan selalu mendownload dan menyimpan cache objek lengkap secara asinkron.

stat-cache-max-size-mb

Ukuran maksimum dalam MiB yang dapat digunakan oleh cache statistik. Cache statistik selalu disimpan sepenuhnya dalam memori.

  • Tentukan 32 jika workload Anda melibatkan hingga 20.000 file. Jika beban kerja Anda lebih dari 20.000 file, tingkatkan ukurannya hingga 10 untuk setiap 6.000 file tambahan, dengan rata-rata ~1.500 byte per file.
  • Tentukan -1 untuk memungkinkan cache statistik menggunakan memori sebanyak yang dibutuhkan.
  • Tentukan 0 untuk menonaktifkan cache statistik.

Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke 32.

ttl-secs

Menentukan time to live (TTL) entri metadata yang di-cache, yang dinyatakan dalam detik.

  • Tentukan -1 untuk mengabaikan masa berlaku TTL dan menayangkan file dari cache setiap kali tersedia.
  • Tentukan 0 untuk memastikan bahwa file terbaru telah dibaca. Penggunaan nilai ini akan memunculkan panggilan Get metadata untuk memastikan bahwa pembuatan objek untuk file dalam cache cocok dengan yang tersimpan di Cloud Storage. Untuk mempelajari lebih lanjut, lihat Mengonfigurasi pembatalan validasi cache.

Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke 60.

type-cache-max-size-mb

Ukuran maksimum dalam MiB per direktori yang dapat digunakan cache jenis tersebut. Cache jenis selalu disimpan sepenuhnya dalam memori.

  • Tentukan 4 jika jumlah maksimum file dalam satu direktori dari bucket yang Anda pasang berisi maksimal 20.000 file. Jika jumlah maksimum file dalam satu direktori yang Anda pasang berisi lebih dari 20.000 file, tingkatkan nilai ini sebesar 1 untuk setiap 5.000 file, rata-rata sekitar ~200 byte per file.
  • Tentukan -1 agar cache jenis dapat menggunakan memori sebanyak yang diperlukan.
  • Tentukan 0 untuk menonaktifkan cache jenis.

Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke 4.

cache-dir Menentukan direktori untuk menyimpan data cache file. Kolom ini harus ditentukan untuk mengaktifkan penyimpanan file dalam cache.
anonymous-access Menonaktifkan autentikasi untuk permintaan. Tetapkan kolom ini jika Anda menggunakan endpoint kustom yang tidak mendukung autentikasi atau jika menggunakan Cloud Storage FUSE untuk memasang bucket publik. Nilai defaultnya adalah false.
kernel-list-cache-ttl-secs Mengaktifkan cache daftar dan menentukan time to live (TTL) dalam hitungan detik entri daftar yang di-cache. Alokasi memori untuk cache daftar dikontrol oleh kernel berdasarkan memori yang tersedia. Nilai defaultnya adalah 0, yang menentukan bahwa pembuatan cache daftar dinonaktifkan.

Untuk menetapkan kolom --kernel-list-cache-ttl-secs, tentukan nilai positif dalam detik untuk mempertahankan respons daftar direktori dalam cache halaman kernel. Untuk mengabaikan masa berlaku entri dan selalu menampilkan respons daftar dari cache jika tersedia, masukkan nilai -1.
ignore-interrupts Meminta Cloud Storage FUSE untuk mengabaikan sinyal interupsi sistem, seperti SIGINT yang dipicu oleh Control+C. Hal ini mencegah sinyal menghentikan operasi yang sedang berlangsung. Nilainya adalah true atau false. Nilai defaultnya adalah true.