CLI gcsfuse

Cette page décrit les commandes de la ligne de commande gcsfuse permettant d'interagir avec Cloud Storage FUSE. Si vous utilisez le pilote CSI Cloud Storage FUSE pour installer vos buckets sur votre système de fichiers local dans Google Kubernetes Engine, consultez la section Options d'installation pour le pilote CSI Cloud Storage FUSE.

Synopsis

gcsfuse GLOBAL_OPTIONS BUCKET_NAME MOUNT_POINT

Où :

  • GLOBAL_OPTIONS correspond aux options qui contrôlent la configuration de l'installation et le comportement de Cloud Storage FUSE.

  • BUCKET_NAME est le nom du bucket à installer. Par exemple, my-mount-bucket. Facultatif. Excluez un nom de bucket de cette commande pour effectuer un montage dynamique.

  • MOUNT_POINT correspond au répertoire local dans lequel le bucket sera installé. Par exemple, /path/to/mount/point.

Description

La CLI gcsfuse permet d'installer des buckets Cloud Storage en tant que systèmes de fichiers sur une machine locale.

Options globales

Option Description Valeur valide Valeur par défaut
--anonymous-access Désactive l'authentification pour les requêtes. Cette option doit être définie si vous utilisez un point de terminaison personnalisé qui n'est pas compatible avec l'authentification. Cette option doit également être définie si vous utilisez Cloud Storage FUSE avec des buckets publics. Valeur booléenne: true, false. false
--app-name Nom de l'application de l'installation. Valeur de chaîne, par exemple: my-bucket-mount. ""
--billing-project Spécifie un projet à utiliser pour la facturation lorsque le bucket installé est accessible. Cette option est souvent requise lors de l'installation d'un bucket activé à l'aide des Paiements par le demandeur. Valeur de chaîne représentant un ID de projet. ""
--cache-dir

Spécifie le répertoire où stocker les données du cache de fichiers.

Pour savoir comment activer la mise en cache de fichiers, consultez la page Utiliser la mise en cache de fichiers.

Un chemin d'accès, par exemple: /tmp/gcsfuse-cache-path. ""
--client-protocol Spécifie le protocole utilisé pour communiquer avec le backend Cloud Storage.
  • http1 pour HTTP/1.1
  • http2 pour HTTP/2
  • grpc pour gRPC
http1
--config-file Spécifie le chemin d'accès au fichier de configuration que vous souhaitez utiliser pour configurer les comportements de Cloud Storage FUSE. Un chemin d'accès, par exemple: /etc/gcsfuse.yaml. ""
--custom-endpoint Spécifie un autre point de terminaison personnalisé permettant d'extraire des données. Le point de terminaison personnalisé doit accepter les ressources et les opérations équivalentes au point de terminaison JSON Cloud Storage, https://storage.googleapis.com/storage/v1. Si aucun point de terminaison personnalisé n'est spécifié, Cloud Storage FUSE utilise le point de terminaison global de l'API JSON Cloud Storage, https://storage.googleapis.com/storage/v1. Si l'authentification n'est pas disponible sur le point de terminaison personnalisé que vous spécifiez, définissez l'option --anonymous-access sur true pour contourner l'authentification. Un point de terminaison, par exemple: http://localhost:443/storage/v1. ""
--debug_fuse (obsolète) Active la sortie de débogage liée à FUSE. Cette option a été remplacée par l'option --log-severity. Pour activer la sortie de débogage, définissez l'option --log-severity sur trace, qui inclut les journaux trace, de débogage, d'informations, d'avertissement et d'erreurs. Valeur booléenne: true, false. false
--debug_gcs (obsolète) Imprime des informations sur la requête et la chronologie Cloud Storage. Cette option a été remplacée par l'option --log-severity. Pour activer la sortie de débogage, définissez l'option --log-severity sur trace, qui inclut les journaux trace, de débogage, d'informations, d'avertissement et d'erreurs. Valeur booléenne: true, false. false
--debug_invariants Quitte le programme lorsque des infractions aux variantes internes sont détectées. Valeur booléenne: true, false. false
--debug_mutex Affiche des messages de débogage lorsqu'un mutex est conservé trop longtemps. Si cette option est spécifiée, le niveau de gravité des journaux est automatiquement défini sur trace, ce qui inclut les journaux trace, de débogage, d'informations, d'avertissement et d'erreurs. Valeur booléenne: true, false. false
--dir-mode Bits d'autorisation pour les répertoires, en octal. Entier compris entre 000 et 777 (inclus). 755
--enable-nonexistent-type-cache Crée une entrée de cache de types NonexistentType si un fichier est introuvable dans Cloud Storage. Si le fichier est créé dans Cloud Storage, mais que l'entrée NonexistentType du fichier est mise en cache, Cloud Storage FUSE ne peut pas demander ce fichier tant que l'entrée NonexistentType n'est pas supprimée du cache du type. Valeur booléenne: true, false. false
--file-cache-cache-file-for-range-read Indique si l'objet complet doit être téléchargé de manière asynchrone et stocké dans le répertoire de cache Cloud Storage FUSE lorsque la première lecture est effectuée à partir d'un décalage différent de zéro. Cette option doit être définie sur true si vous prévoyez d'effectuer plusieurs lectures aléatoires ou partielles.

Remarque : Si vous effectuez une lecture partielle commençant au décalage 0, Cloud Storage FUSE télécharge et met en cache l'objet complet de manière asynchrone.

Valeur booléenne: true, false. false
--file-cache-download-chunk-size-mb Spécifie la taille en Mio de chaque requête de lecture que chaque goroutine envoie à Cloud Storage lors du téléchargement de l'objet dans le cache de fichiers. Integer 50
--file-cache-enable-parallel-downloads

Accélère les lectures de fichiers volumineux en utilisant le répertoire de cache de fichiers comme tampon de préchargement utilisant plusieurs nœuds de calcul afin de télécharger des fichiers volumineux en parallèle. Pour en savoir plus sur les téléchargements parallèles et configurer les propriétés de compatibilité, consultez la page Améliorer les performances de lecture en utilisant les téléchargements parallèles.

Pour utiliser les téléchargements parallèles, vous devez d'abord activer la mise en cache de fichiers.

Valeur booléenne: true, false. false
--file-cache-max-parallel-downloads Nombre maximal de goroutines pouvant être lancées à un même moment pour tous les jobs de téléchargement de fichiers.
  • Integer
  • -1: spécifie des téléchargements parallèles illimités.
  • 0: désactive les téléchargements parallèles. Ne peut être utilisé que si --enable-parallel-downloads n'est pas transmis ou est transmis en tant que false.
  • >0: aucune limite supérieure n'est spécifiée. Cloud Storage FUSE limite en interne la valeur en fonction du nombre maximal de goroutines pouvant être créées, spécifié par la configuration de votre machine.
Double du nombre de cœurs de processeur de votre machine ou 16, selon la valeur la plus élevée.
--file-mode Spécifie les bits d'autorisation pour les fichiers, en octal. Entier compris entre 000 et 777 (inclus). 644
--foreground Il exécute la commande gcsfuse au premier plan. Valeur booléenne: true, false. false
--gid Spécifie le propriétaire de l'identifiant de groupe (GID) de tous les inodes.
  • Entier représentant un GID.
  • -1: l'ID de groupe de l'appelant est utilisé.
-1
--help Affiche de l'aide sur Cloud Storage FUSE. Aucun Aucun
--version Affiche la version de Cloud Storage FUSE que vous avez installée. Aucun Aucun
--http-client-timeout Spécifie la durée pendant laquelle le client HTTP Cloud Storage FUSE peut attendre d'obtenir une réponse du serveur avant d'expirer. Durée (par exemple, 1h10m10s pour 1 heure, 10 minutes et 10 secondes) 0s spécifie l'absence de délai d'expiration. 0s
--ignore-interrupts Indique à Cloud Storage FUSE d'ignorer les signaux d'interruption système, tels que les signaux SIGINT déclenchés par Control+C. Cela empêche les signaux d'arrêter les opérations en cours. Valeur booléenne: true, false. true
--implicit-dirs Inclut implicitement les dossiers et les dossiers gérés. Pour en savoir plus, consultez la documentation sur les fichiers et les répertoires dans GitHub. Valeur booléenne: true, false. false
--kernel-list-cache-ttl-secs Active le cache de liste et définit la valeur TTL (Time To Live) en secondes des entrées de liste mises en cache. Le cache de listes est conservé en mémoire dans le cache de pages, qui est contrôlé par le noyau en fonction de la mémoire disponible.
  • Entier représentant des secondes, par exemple: 10 (10 secondes).
  • 0: désactive la mise en cache de la liste.
  • -1: contourne l'expiration de l'entrée et renvoie toujours la réponse de la liste à partir du cache lorsqu'elle est disponible.
0
--key-file Spécifie un chemin d'accès absolu au fichier de clé JSON des identifiants pour authentifier les requêtes à Cloud Storage. Par défaut, Cloud Storage FUSE utilise les Identifiants par défaut de l'application pour authentifier les requêtes. Un chemin d'accès, par exemple: /home/example_user/gcloud-key.json. Si cette option n'est pas définie, les identifiants par défaut de l'application sont utilisés.
--limit-bytes-per-sec Spécifie la limite de bande passante à laquelle Cloud Storage FUSE peut lire des données depuis Cloud Storage, mesurée sur une période de 30 secondes. Nombre à virgule flottante. -1 ne spécifie aucune limite. -1
--limit-ops-per-sec Spécifie une limite relative aux opérations effectuées par seconde, mesurée sur une période de 30 secondes. Nombre à virgule flottante. -1 ne spécifie aucune limite. -1
--log-file Spécifie le fichier destiné au stockage des journaux, pouvant être analysé par Fluentd. Un chemin d'accès, par exemple: /tmp/user-example-bucket-gcsfuse-logs.txt. stdout lorsque Cloud Storage FUSE est exécuté au premier plan ou syslog lorsque Cloud Storage FUSE est exécuté en arrière-plan
--log-format Spécifie le format du fichier journal.
  • text
  • json
json
--log-rotate-backup-file-count Nombre maximal de fichiers journaux à conserver, à l'exclusion du fichier actif dans lequel les journaux sont écrits.
  • Integer
  • 0: conserve tous les fichiers journaux rotatifs
10
--log-rotate-compress Indique si les fichiers journaux alternés sont compressés à l'aide de gzip. Valeur booléenne: true, false. true
--log-rotate-max-file-size-mb Taille maximale en mégaoctets (Mo) que les fichiers journaux peuvent atteindre avant d'être alternés. Entier. La valeur minimale est 1. 512
--log-severity

Niveau de gravité pour lequel Cloud Storage FUSE doit générer des journaux. Les niveaux de gravité sont classés du moins grave au plus grave. Par exemple, lorsque vous spécifiez warning, Cloud Storage FUSE génère des journaux pour les avertissements et les erreurs. En règle générale, nous vous recommandons d'utiliser le niveau de gravité info.

  • trace
  • debug
  • info
  • warning
  • error
  • off: désactive toute journalisation.
info
--max-conns-per-host Indique le nombre maximal de connexions TCP autorisées par serveur. Cela devient effectif lorsque --client-protocol est défini sur http1. Entier compris entre 0 et 2147483647. 0 ne spécifie aucune limite pour les connexions TCP. 0
--max-idle-conns-per-host Indique le nombre maximal de connexions inactives autorisées par serveur. Cela devient effectif lorsque --client-protocol est défini sur http1. Entier compris entre 0 et 2147483647. 0 ne spécifie aucune limite pour les connexions inactives. 0
--max-retry-sleep Spécifie la durée maximale pendant laquelle Cloud Storage FUSE est autorisé à se mettre en veille dans une boucle de nouvelle tentative avec un intervalle exponentiel entre les tentatives. Une fois que l'intervalle entre les tentatives dépasse la durée maximale spécifiée, la nouvelle tentative se poursuit avec la durée maximale spécifiée. Durée, par exemple: 1h5m50s (1 heure, 5 minutes et 50 secondes) ou 60s (60 secondes). 30s
--metadata-cache-negative-ttl-secs

Définit la valeur TTL (Time To Live) en secondes des entrées de cache de statistiques négatives, qui stockent les résultats des fichiers inexistants dans le cache.

  • Entier représentant des secondes, par exemple: 10 (10 secondes).
  • 0: désactive la mise en cache des statistiques négatives.
  • -1: permet une mise en cache des statistiques négatives illimitée et désactive l'expiration de la valeur TTL.
5
--metadata-cache-ttl-secs Définit la valeur TTL (Time To Live), en secondes, des entrées de métadonnées mises en cache.
  • Entier représentant les secondes, par exemple: 30 (30 secondes).
  • -1: contourne l'expiration TTL et diffuse les fichiers à partir du cache chaque fois qu'ils sont disponibles.
  • 0: utiliser le fichier le plus à jour. L'utilisation de cette valeur émet un appel de métadonnées Get pour s'assurer que la génération d'objets pour le fichier dans le cache correspond à ce qui est stocké dans Cloud Storage. Pour en savoir plus, consultez Configurer l'invalidation du cache.
60
-o Spécifie des options d'installation supplémentaires spécifiques au système. La plupart des options d'installation génériques dans FUSE, telles que suid, sont compatibles avec Cloud Storage FUSE et peuvent être transmises avec l'option -o. Options d'installation dans FUSE, par exemple :
  • rw: installation en lecture/écriture.
  • ro: installation en lecture seule.
""
--only-dir Installe uniquement un répertoire spécifique dans un bucket. Un chemin d'accès, par exemple: /etc/gcsfuse.yaml. ""
--rename-dir-limit Permet de renommer des répertoires contenant moins de descendants que la limite spécifiée. Entier compris entre 0 et 2147483647. 0
--retry-multiplier Spécifie le multiplicateur pour l'intervalle exponentiel entre les nouvelles tentatives consécutives. Nombre à virgule flottante. 2
--reuse-token-from-url Indique si le jeton acquis à partir de --token-url doit être réutilisé. Valeur booléenne: true, false. true
--sequential-read-size-mb Spécifie la taille de segment des données à télécharger depuis Cloud Storage, en mégaoctets (Mo). Entier compris entre 1 et 1024. 200
--stackdriver-export-interval Exporte les métriques vers Stackdriver avec l'intervalle spécifié. Durée, par exemple: 1h5m50s (1 heure, 5 minutes et 50 secondes). 0s spécifie qu'aucune exportation n'est effectuée. 0s
--stat-cache-capacity (obsolète) Indique le nombre d'entrées que le cache de statistiques peut contenir. Cette option a été remplacée par l'option --stat-cache-max-size-mb. Integer 4096
--stat-cache-max-size-mb Taille maximale de mémoire que le cache de statistiques peut utiliser, en Mio. Le cache de statistiques est toujours entièrement conservé en mémoire.
  • Entier. Nous vous recommandons de suivre les conseils suivants :
    • 32 si votre charge de travail implique jusqu'à 20 000 fichiers.
    • Si votre charge de travail dépasse 20 000 fichiers, augmentez la taille par incréments de 10 pour chaque tranche supplémentaire de 6 000 fichiers, sachant que le cache d'état utilise en moyenne 1 500 Mio par fichier.
  • -1: ne définit aucune limite, ce qui permet au cache de statistiques d'utiliser autant de mémoire que nécessaire.
  • 0: désactive le cache de statistiques.
32
--stat-cache-ttl (obsolète) Spécifie la durée de mise en cache des résultats StatObject et des attributs d'inode. Cette option a été remplacée par l'option --metadata-cache-ttl-secs. Durée, par exemple: 20s (20 secondes). 60s
--temp-dir Spécifie un chemin d'accès au répertoire temporaire où les écritures sont stockées en préproduction avant leur importation dans Cloud Storage. Un chemin d'accès, par exemple: /mnt/ssd/example-user-gcsfuse-temp-dir. /tmp
--token-url Spécifie une URL permettant d'obtenir un jeton d'accès lorsque le fichier --key-file est absent. une URL ; ""
--type-cache-ttl (deprecated) Spécifie la durée de mise en cache du mappage entre les noms et les fichiers ou répertoires dans les inodes de répertoire (en secondes). Cette option a été remplacée par l'option --metadata-cache-ttl-secs. Durée en secondes (par exemple, 20s pour 20 secondes). 60s
--type-cache-max-size-mb Taille maximale en Mio par répertoire que le cache de types peut utiliser. Le cache de types est toujours entièrement conservé en mémoire.
  • Entier. Nous vous recommandons de suivre les conseils suivants :
    • 4 si le nombre maximal de fichiers dans un seul répertoire du bucket que vous installez contient 20 000 fichiers ou moins.
    • Si le nombre maximal de fichiers dans un même répertoire que vous installez contient plus de 20 000 fichiers, augmentez la valeur de 1 pour chaque tranche de 5 000 fichiers (soit une moyenne d'environ 200 octets par fichier).
  • -1: ne spécifie aucune limite et permet au cache de types d'utiliser autant de mémoire que nécessaire.
  • 0: désactive le cache de types.
4
--uid Spécifie le propriétaire de l'identifiant utilisateur (UID) de tous les inodes.
  • Entier représentant un UID.
  • -1: l'UID de l'appelant est utilisé.
-1