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.

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

write:
  create-empty-file: CREATE_EMPTY_FILE
logging:
  file-path: "FILE_PATH"
  format: FORMAT
  severity: SEVERITY
  log-rotate:
    max-file-size-mb: MAX_FILE_SIZE
    backup-file-count: BACKUP_FILE_COUNT
    compress: COMPRESS
file-cache:
  max-size-mb: MAX_SIZE
  cache-file-for-range-read: CACHE_FILE_FOR_RANGE_READ
  enable-parallel-downloads: ENABLE_PARALLEL_DOWNLOADS
  parallel-downloads-per-file: PARALLEL_DOWNLOADS_PER_FILE
  max-parallel-downloads: MAX_PARALLEL_DOWNLOADS
  download-chunk-size-mb: DOWNLOAD_CHUNK_SIZE
metadata-cache:
  stat-cache-max-size-mb: STAT_CACHE_MAX_SIZE
  ttl-secs: TTL_SECS
  type-cache-max-size-mb: TYPE_CACHE_MAX_SIZE
cache-dir: "CACHE_DIR"
gcs-auth:
  anonymous-access: ANONYMOUS_ACCESS
file-system:
  kernel-list-cache-ttl-secs: KERNEL_LIST_CACHE_TTL_SECS
  ignore-interrupts: IGNORE_INTERRUPTS

Kolom konfigurasi

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

Kolom Deskripsi
create-empty-file Nilai Boolean yang menentukan apakah file nol-byte akan dibuat atau tidak di Cloud Storage saat Anda mulai menulis ke file baru di bucket yang telah 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 {i>string<i}. Misalnya, /var/log. Jika kolom ini tidak ditentukan, log 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 isian 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 sebuah enum. Tingkat keparahan akan diurutkan dari tingkat keparahan terendah ke tertinggi tingkat keparahan:

  • trace
  • debug
  • info
  • warning
  • error

Saat Anda menentukan tingkat keparahan, Cloud Storage FUSE akan menghasilkan log yang tingkat keparahan yang sama atau lebih tinggi. Misalnya, ketika Anda menentukan warning, Cloud Storage FUSE menghasilkan log untuk peringatan dan error. Anda juga dapat menentukan off untuk menonaktifkan semua logging. Jika salah satu dari ketiga opsi berikut juga ditetapkan sebagai bagian dari , 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, nilai defaultnya adalah 512.
backup-file-count Jumlah maksimum file log yang dirotasi yang akan dipertahankan, tidak termasuk file log aktif file tempat log ditulis. Jika nilai ditetapkan ke 0, semua file log yang dirotasi akan dipertahankan. Jika kolom ini tidak ditentukan, nilai nilai defaultnya adalah 10.
compress Nilai Boolean yang menentukan apakah file log yang dirotasi dikompresi atau tidak menggunakan gzip. Jika kolom ini tidak ditentukan, nilainya akan ditetapkan secara default ke true.
max-size-mb

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

  • Tetapkan -1 untuk menggunakan cache seluruh kapasitas yang tersedia di direktori yang Anda tentukan untuk cache-dir.
  • Tentukan 0 untuk menonaktifkan file {i>cache<i}.

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 FUSE Cloud Storage ketika pembacaan pertama dilakukan dari offset bukan nol. Ini harus diatur ke true jika Anda berencana melakukan beberapa pembacaan acak atau dibaca. 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 selalu mendownload dan menyimpan cache yang lengkap secara asinkron .

enable-parallel-downloads

Mempercepat pembacaan file besar dengan menggunakan direktori cache file sebagai buffer pengambilan data yang menggunakan beberapa pekerja untuk mengunduh file besar paralel. Nilai defaultnya adalah false.


Untuk menggunakan download paralel, Anda harus mengaktifkan penyimpanan file dalam cache. Untuk mempelajari lebih lanjut tentang download paralel dan mengonfigurasi properti pendukungnya, lihat Tingkatkan performa baca menggunakan download paralel.
parallel-downloads-per-file

Menentukan jumlah goroutine maksimum yang akan dimunculkan per file mendownload objek dari Cloud Storage ke dalam cache file. Nilai defaultnya adalah 16.

max-parallel-downloads

Jumlah maksimum goroutine yang dapat muncul pada semua waktu waktu pada semua tugas download file. Defaultnya adalah dua kali lipat jumlah inti CPU pada komputer itu. Untuk melewati batas, tentukan nilai -1

.
download-chunk-size-mb

Menentukan ukuran setiap permintaan baca dalam MiB yang ditentukan oleh setiap goroutine yang dilakukan ke Cloud Storage saat mendownload objek ke dalam cache file. Nilai defaultnya adalah 50.

stat-cache-max-size-mb

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

  • Tentukan 32 jika beban kerja Anda melibatkan hingga 20.000 file. Jika beban kerja Anda lebih dari 20.000 file, tingkatkan dengan nilai 10 untuk setiap 6.000 file tambahan, yang merupakan berukuran rata-rata ~1.500 byte per file.
  • Tentukan -1 agar cache statistik menggunakan memori sebanyak secara permanen sesuai kebutuhan.
  • 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 hitungan detik.

  • Tentukan -1 untuk mengabaikan masa berlaku TTL dan menayangkan dari cache kapan pun tersedia.
  • Tentukan 0 untuk memastikan bahwa file terbaru telah dibaca. Menggunakan nilai ini, melakukan panggilan Get metadata untuk memastikan bahwa objek pembuatan file dalam cache sesuai dengan yang tersimpan di yang sesuai di Cloud Storage. Untuk mempelajari lebih lanjut, lihat Mengonfigurasi pembatalan 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 file maksimum dalam satu file telah mencapai batas maksimum dari bucket yang Anda pasang berisi 20.000 file atau kurang. Jika jumlah file maksimum dalam satu direktori yang Anda berisi lebih dari 20.000 file, tingkatkan nilainya dengan 1 untuk setiap 5.000 file, yang berarti rata-rata ~200 byte per .
  • Tentukan -1 agar cache jenis dapat menggunakan memori sebanyak 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 bidang ini jika Anda menggunakan endpoint kustom yang tidak mendukung autentikasi, atau jika Anda menggunakan Cloud Storage FUSE untuk memasang bucket publik. Nilai defaultnya adalah {i>false<i}.
kernel-list-cache-ttl-secs Mengaktifkan daftar cache dan menentukan time to live (TTL) dalam detik entri daftar yang di-cache. Alokasi memori untuk cache daftar dikontrol oleh kernel berdasarkan memori yang tersedia. Nilai defaultnya adalah 0 yang menonaktifkan pembuatan cache daftar.

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