Konfigurationsdatei für Cloud Storage FUSE

Auf dieser Seite wird beschrieben, wie Sie mit einer Cloud Storage FUSE-Konfigurationsdatei das Verhalten von Cloud Storage FUSE dauerhaft konfigurieren. Wenn Sie die Konfigurationsdatei verwenden möchten, geben Sie den Pfad zur Konfigurationsdatei im Flag --config-file als Teil Ihres Bereitstellungsbefehls an.

Die Konfigurationsdatei ist eine YAML-Datei im folgenden Format und in den folgenden Feldern. Einige Felder können auch mithilfe von Befehlszeilenoptionen angegeben werden.

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:
  ignore-interrupts: boolean

Felder für die Konfiguration

In der folgenden Tabelle werden die Felder beschrieben, die Sie in Ihrer Konfigurationsdatei angeben können. Wenn nicht anders angegeben, sind alle Felder optional.

Feld Beschreibung
create-empty-file Ein boolescher Wert, mit dem angegeben wird, ob beim Erstellen einer neuen Datei in dem bereitgestellten Bucket eine Null-Byte-Datei in Cloud Storage erstellt werden soll. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert false verwendet.
file-path Der Pfad zur Logdatei, in die Logs geschrieben werden. Diese werden als String angegeben. Beispiel: /var/log. Wenn dieses Feld nicht angegeben ist, werden die Logs an stdout weitergeleitet, wenn Cloud Storage FUSE im Vordergrundmodus ausgeführt wird, und an Syslogs, wenn Cloud Storage FUSE im Hintergrundmodus ausgeführt wird.
format Das Format, in dem Logs generiert werden, ausgedrückt als Enum. Mögliche Werte sind text und json. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert json verwendet.
severity

Der Schweregrad der Logs, die Cloud Storage FUSE generieren soll, ausgedrückt als Enum. Die Schweregrade werden vom niedrigsten zum höchsten Schweregrad sortiert:

  • trace
  • debug
  • info
  • warning
  • error

Wenn Sie einen Schweregrad angeben, generiert Cloud Storage FUSE Logs mit gleichem oder höherem Schweregrad. Wenn Sie beispielsweise warning angeben, generiert Cloud Storage FUSE Logs für Warnungen und Fehler. Sie können auch off angeben, um das gesamte Logging zu deaktivieren. Wenn eine der folgenden drei Optionen ebenfalls als Teil Ihres Befehls angegeben ist, wird die Wichtigkeitsstufe automatisch auf trace gesetzt:

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

Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert info verwendet.

max-file-size-mb Die maximale Größe in Megabyte (MB), die Logdateien erreichen können, bevor sie rotiert werden. Der Mindestwert beträgt 1. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert 512 verwendet.
backup-file-count Die maximale Anzahl der rotierten Logdateien, die beibehalten werden sollen, ausgenommen die aktive Datei, in die Logs geschrieben werden. Wenn der Wert auf 0 gesetzt ist, werden alle rotierten Logdateien beibehalten. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert 10 verwendet.
compress Ein boolescher Wert, mit dem angegeben wird, ob rotierte Logdateien mit gzip komprimiert werden. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert true verwendet.
max-size-mb

Die maximale Größe in MiB, die der Dateicache verwenden kann. Falls vorhanden, aktiviert max-size-mb das Datei-Caching in Cloud Storage FUSE. Dies ist nützlich, wenn Sie die Gesamtkapazität begrenzen möchten, die der Cloud Storage FUSE-Cache im bereitgestellten Verzeichnis verwenden kann.

  • Geben Sie -1 an, um die gesamte verfügbare Cachekapazität in dem Verzeichnis zu verwenden, das Sie für cache-dir angeben.
  • Geben Sie 0 an, um den Datei-Cache zu deaktivieren.

Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert -1 verwendet.

cache-file-for-range-read

Ein boolescher Wert, der bestimmt, ob das vollständige Objekt asynchron heruntergeladen und im Cache-Verzeichnis von Cloud Storage FUSE gespeichert werden soll, wenn der erste Lesevorgang aus einem Offset ungleich null ist. Dies sollte auf true gesetzt werden, wenn Sie mehrere zufällige oder partielle Lesevorgänge ausführen möchten. Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert false verwendet.

Wenn Sie einen partiellen Lesevorgang ab Offset 0 ausführen, lädt Cloud Storage FUSE immer das gesamte Objekt asynchron herunter und speichert es im Cache.

stat-cache-max-size-mb

Die maximale Größe in MiB, die der Statistik-Cache verwenden kann. Der Statistik-Cache verbleibt immer vollständig im Arbeitsspeicher.

  • Geben Sie 32 an,wenn Ihre Arbeitslast bis zu 20.000 Dateien umfasst. Wenn Ihre Arbeitslast mehr als 20.000 Dateien enthält, erhöhen Sie die Größe um 10er Werte pro weitere 6.000 Dateien, also durchschnittlich etwa 1.500 Byte pro Datei.
  • Geben Sie -1 an, damit der Statistik-Cache so viel Arbeitsspeicher wie nötig verwenden kann.
  • Geben Sie 0 an, um den Statistik-Cache zu deaktivieren.

Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert 32 verwendet.

ttl-secs

Definiert die Gültigkeitsdauer (TTL) der im Cache gespeicherten Metadateneinträge in Sekunden.

  • Geben Sie -1 an, um einen TTL-Ablauf zu umgehen und die Datei aus dem Cache bereitzustellen, wann immer sie verfügbar ist.
  • Geben Sie 0 an, damit die aktuellste Datei gelesen wird. Mit diesem Wert wird ein Get-Metadatenaufruf ausgegeben, um sicherzustellen, dass die Objektgenerierung für die Datei im Cache mit dem übereinstimmt, was in Cloud Storage gespeichert ist. Weitere Informationen finden Sie unter Cache-Entwertung konfigurieren.

Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert 60 verwendet.

type-cache-max-size-mb

Die maximale Größe in MiB pro Verzeichnis, die der Typ-Cache verwenden kann. Der Typcache wird immer vollständig im Arbeitsspeicher abgelegt.

  • Geben Sie 4 an, wenn die maximale Anzahl von Dateien in einem einzelnen Verzeichnis aus dem Bucket, den Sie bereitstellen, maximal 20.000 Dateien umfasst. Wenn die maximale Anzahl von Dateien in einem einzelnen Verzeichnis, das Sie bereitstellen, mehr als 20.000 Dateien enthält, erhöhen Sie den Wert um 1 pro 5.000 Dateien, durchschnittlich ca. 200 Byte pro Datei.
  • Geben Sie -1 an, damit der Typ-Cache so viel Arbeitsspeicher wie nötig verwenden kann.
  • Geben Sie 0 an, um den Typ-Cache zu deaktivieren.

Wenn dieses Feld nicht angegeben ist, wird standardmäßig der Wert 4 verwendet.

cache-dir Gibt das Verzeichnis zum Speichern von Datei-Cache-Daten an. Dieses Feld muss festgelegt werden, um Datei-Caching aktivieren.
anonymous-access Deaktiviert die Authentifizierung für Anfragen. Legen Sie dieses Feld fest, wenn Sie ein benutzerdefinierten Endpunkt nutzen, der keine Authentifizierung unterstützt, oder wenn Sie Cloud Storage FUSE zum Bereitstellen öffentlicher Buckets verwenden. Der Standardwert ist false.
ignore-interrupts Weist Cloud Storage FUSE an, Systemunterbrechungssignale wie SIGINT zu ignorieren, das von Control+C ausgelöst wird. Dadurch wird verhindert, dass Signale laufende Vorgänge beenden. Mögliche Werte sind true und false. Der Standardwert ist true.