En esta página, se describe cómo usar un archivo de configuración de Cloud Storage FUSE para configurar el comportamiento de Cloud Storage FUSE de forma persistente. Para usar el archivo de configuración, especifica la ruta al archivo de configuración en la marca --config-file
como parte de tu comando de activación.
El archivo de configuración es un archivo YAML que usa el formato y los campos siguientes. Algunos de los campos también se pueden especificar usando las opciones de la línea de comandos.
app-name: "APP_NAME" 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: enable-nonexistent-type-cache: ENABLE_NONEXISTENT_TYPE_CACHE negative-ttl-secs: ENABLE_NEGATIVE_TTL_SECS 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" only-dir: "ONLY_DIR" gcs-auth: anonymous-access: ANONYMOUS_ACCESS key-file: "KEY_FILE" reuse-token-from-url: REUSE_TOKEN_FROM_URL token-url: "TOKEN_URL" gcs-connection: billing-project: "BILLING_PROJECT" client-protocol: CLIENT_PROTOCOL custom-endpoint: "CUSTOM_ENDPOINT" http-client-timeout: HTTP_CLIENT_TIMEOUT limit-bytes-per-sec: "LIMIT_BYTES_PER_SEC" limit-ops-per-sec: "LIMIT_OPS_PER_SEC" max-conns-per-host: MAX_CONNS_PER_HOST max-idle-conns-per-host: MAX_IDLE_CONNS_PER_HOST sequential-read-size-mb: SEQUENTIAL_READ_SIZE implicit-dirs: IMPLICIT_DIRS file-system: kernel-list-cache-ttl-secs: KERNEL_LIST_CACHE_TTL_SECS ignore-interrupts: IGNORE_INTERRUPTS dir-mode: "DIR_MODE" file-mode: "FILE_MODE" fuse-options: FUSE_OPTIONS gid: GID rename-dir-limit: RENAME_DIR_LIMIT temp-dir: "TEMP_DIR" uid: UID foreground: FOREGROUND gcs-retries: max-retry-sleep: MAX_RETRY_SLEEP multiplier: "MULTIPLIER" metrics: cloud-metrics-export-interval-secs: CLOUD_METRICS_EXPORT_INTERVAL prometheus-port: PROMETHEUS_PORT debug: log-mutex: LOG_MUTEX exit-on-invariant-violation: EXIT_ON_INVARIANT_VIOLATION write: enable-streaming-writes: STREAMING_WRITES
Campos de configuración
En la siguiente tabla, se describen los campos que puedes especificar en tu archivo de configuración. Nota: A menos que se indique lo contrario, todos los campos son opcionales.
Campo | Descripción | Valor válido | Valor predeterminado |
---|---|---|---|
app-name |
El nombre de la aplicación de la activación. | Es un valor de cadena, por ejemplo: "my-bucket-mount" . |
"" |
file-path |
Es la ruta de acceso al archivo de registro en el que se escribirán los registros.
Si no se especifica este campo, los registros se enrutan a stdout cuando Cloud Storage FUSE se ejecuta en modo de primer plano y a syslogs cuando Cloud Storage FUSE se ejecuta en modo en segundo plano. |
Valor de cadena, por ejemplo: "/var/log" . |
"" |
format |
Especifica el formato del archivo de registro. |
|
json |
severity |
Es el nivel de gravedad para el que deseas que Cloud Storage FUSE genere registros. Los niveles de gravedad se ordenan desde la gravedad más baja a la más alta. Por ejemplo, cuando especificas |
|
info |
max-file-size-mb |
El tamaño máximo en megabytes (MB) que pueden alcanzar los archivos de registro antes de que se roten. | Número entero. El valor mínimo es 1 . |
512 |
backup-file-count |
Es la cantidad máxima de archivos de registro rotados que se conservarán, sin incluir el archivo activo en el que se escriben. |
|
10 |
compress |
Especifica si los archivos de registro rotados se comprimen con gzip . |
Valor booleano: true , false |
true |
max-size-mb |
El tamaño máximo en MiB que puede usar la caché de archivos. Si está presente, |
|
-1 |
cache-file-for-range-read |
Indica si el objeto completo debe descargarse de forma asíncrona y almacenarse en el directorio de caché de Cloud Storage FUSE cuando la primera lectura se realiza desde un desplazamiento distinto de cero. Esta opción debe configurarse como true si planeas realizar varias lecturas aleatorias o parciales.
Nota: Si realizas una lectura parcial a partir del desplazamiento |
Valor booleano: true , false |
false |
enable-parallel-downloads |
Acelera las lecturas de archivos grandes con el directorio de almacenamiento en caché de archivos como un búfer de carga previa con varios trabajadores para descargar archivos grandes en paralelo. Para obtener más información sobre las descargas en paralelo y configurar sus propiedades compatibles, consulta Cómo mejorar el rendimiento de lectura con descargas en paralelo. Para usar descargas paralelas, primero debes habilitar el almacenamiento en caché de archivos. |
Valor booleano: true , false |
false |
parallel-downloads-per-file |
Especifica la cantidad máxima de goroutines que se crearán por archivo para descargar el objeto de Cloud Storage en la caché de archivos. |
Número entero | 16 |
max-parallel-downloads |
Es la cantidad máxima de goroutines que se pueden crear en un momento determinado en todos los trabajos de descarga de archivos. |
|
El doble de la cantidad de núcleos de CPU de tu máquina o 16 , lo que sea mayor. |
download-chunk-size-mb |
Especifica el tamaño de cada solicitud de lectura en MiB que cada goroutine realiza en Cloud Storage cuando descarga el objeto en la caché de archivos. | Número entero | 50 |
enable-nonexistent-type-cache |
Crea una entrada de tipo caché con el tipo NonexistentType si no se encuentra un archivo en Cloud Storage. Si el archivo se crea en Cloud Storage, pero la entrada NonexistentType del archivo se almacena en caché, Cloud Storage FUSE no puede solicitar ese archivo hasta que la entrada NonexistentType se quite del tipo caché. |
Valor booleano: true , false |
false |
stat-cache-max-size-mb |
Es el tamaño máximo de memoria que puede usar la caché de estadísticas, en MiB. La caché de estadística siempre se mantiene por completo en la memoria. |
|
32 |
negative-ttl-secs |
Define el tiempo de actividad (TTL) en segundos de las entradas de la caché de estadísticas negativas, que almacenan resultados de archivos inexistentes en la caché. |
|
5 |
ttl-secs |
Define el tiempo de actividad (TTL), en segundos, de las entradas de metadatos almacenadas en caché. |
|
60 |
type-cache-max-size-mb |
El tamaño máximo en MiB por directorio que puede usar el tipo de caché. La caché de tipo siempre se mantiene por completo en la memoria. |
|
4 |
cache-dir |
Especifica el directorio para almacenar datos de caché de archivos. Para aprender a habilitar el almacenamiento en caché de archivos, consulta Cómo usar el almacenamiento en caché de archivos. |
Una ruta de acceso, por ejemplo: "/tmp/gcsfuse-cache-path" . |
|
only-dir |
Activa solo un directorio específico dentro de un bucket. | Una ruta de acceso, por ejemplo: "/etc/gcsfuse.yaml" . |
|
anonymous-access |
Inhabilita la autenticación para las solicitudes. Esta opción se debe configurar si usas un extremo personalizado que no admite la autenticación. Esta opción también se debe configurar si usas Cloud Storage FUSE con buckets públicos. | Valor booleano: true , false |
false |
key-file |
Especifica una ruta de acceso absoluta al archivo de claves JSON de las credenciales para autenticar solicitudes a Cloud Storage. De forma predeterminada, Cloud Storage FUSE usa credenciales predeterminadas de la aplicación para autenticar solicitudes. | Una URL. | Si no se establece esta opción, se usan las credenciales predeterminadas de la aplicación. |
reuse-token-from-url |
Especifica si se debe volver a usar el token adquirido de --token-url . |
Valor booleano: true , false |
true |
token-url |
Especifica una URL para obtener un token de acceso cuando --key-file está ausente. |
Una URL. | |
billing-project |
Especifica un proyecto para usarlo en la facturación cuando se accede al bucket activado. Esta opción a menudo es obligatoria cuando se activa un bucket habilitado con los pagos del solicitante. | Es un valor de cadena que representa un "ID de proyecto". | "" |
client-protocol |
Especifica el protocolo que se usa para comunicarse con el backend de Cloud Storage. |
|
http1 |
custom-endpoint |
Especifica un extremo personalizado alternativo para recuperar datos.
El extremo personalizado debe admitir los recursos y las operaciones equivalentes al extremo JSON de Cloud Storage, https://storage.googleapis.com/storage/v1 .
Si no se especifica un extremo personalizado, Cloud Storage FUSE usa el extremo global de la API de JSON de Cloud Storage, https://storage.googleapis.com/storage/v1 .
Si la autenticación no es compatible con el extremo personalizado que especificas, establece
la marca --anonymous-access en true para
omitir la autenticación. |
Un extremo, por ejemplo: "http://localhost:443/storage/v1" . |
|
http-client-timeout |
Especifica el tiempo que el cliente HTTP de Cloud Storage FUSE puede esperar para obtener una respuesta del servidor antes de que se agote el tiempo de espera. | Duración, por ejemplo: 1h10m10s para 1 hora, 10 minutos y 10 segundos 0s no especifica un tiempo de espera. |
0s , que no especifica un tiempo de espera |
limit-bytes-per-sec |
Especifica el límite de ancho de banda en el que Cloud Storage FUSE puede leer datos de Cloud Storage, medido en un período de 30 segundos. | "-1" , que no especifica ningún límite. |
|
limit-ops-per-sec |
Especifica un límite para las operaciones realizadas por segundo, medido en un período de 30 segundos. | Es un número de punto flotante. -1 no especifica ningún límite. |
"-1" |
max-conns-per-host |
Especifica la cantidad máxima de conexiones TCP permitidas por servidor.
Esto entra en vigor cuando --client-protocol se establece en http1 . |
0 |
|
max-idle-conns-per-host |
Especifica la cantidad máxima de conexiones inactivas permitidas por servidor.
Esto entra en vigor cuando --client-protocol se establece en http1 . |
Es un número entero entre 0 y 2147483647 .
0 no especifica un límite para las conexiones TCP. |
0 |
sequential-read-size-mb |
Especifica el tamaño de fragmento de los datos que se descargarán desde Cloud Storage, en megabytes (MB). | Es un número entero entre 1 y 1024 . |
200 |
implicit-dirs |
Incluye de manera implícita carpetas y carpetas administradas. Consulta la documentación de archivos y directorios en GitHub para obtener más información. | Valor booleano: true , false |
false |
kernel-list-cache-ttl-secs |
Habilita la caché de listas y define el tiempo de actividad (TTL) en segundos de las entradas de las listas almacenadas en caché. La caché de listas se mantiene en la memoria caché de la página, que el kernel controla según la memoria disponible. |
| 0 |
ignore-interrupts |
Indica a Cloud Storage FUSE que ignore las señales de interrupción del sistema, como SIGINT activada por Control+C . Esto evita que las señales finalicen las operaciones en tránsito. |
Valor booleano: true , false . |
true |
dir-mode |
Bits de permisos para directorios, en octal. | Es un número entero entre 000 y 777 inclusive. |
"755" |
file-mode |
Especifica los bits de permisos para los archivos, en octal. | Es un número entero entre 000 y 777 inclusive. |
"644" |
fuse-options |
Especifica opciones de activación adicionales específicas del sistema. | ||
gid |
Especifica el propietario del identificador de grupo (GID) de todos los inodos. |
|
-1 |
rename-dir-limit |
Permite cambiar el nombre de los directorios que contienen menos subordinados que el límite especificado. | Es un número entero entre 0 y 2147483647 . |
0 |
temp-dir |
Especifica una ruta de acceso al directorio temporal en el que las operaciones de escritura se publican en etapa de pruebas antes de subirse a Cloud Storage. | Una ruta de acceso de cadena, por ejemplo: "/mnt/ssd/example-user-gcsfuse-temp-dir" . |
"/tmp" |
uid |
Especifica el propietario del identificador de usuario (UID) de todos los inodos. |
|
-1 |
foreground |
Ejecuta el comando gcsfuse en primer plano. |
Valor booleano: true , false |
false |
max-retry-sleep |
Especifica la duración máxima que Cloud Storage FUSE puede suspender en un bucle de reintentos con retirada exponencial. Una vez que la duración de retirada excede la duración máxima especificada, el reintento continúa con la duración máxima especificada. | Duración, por ejemplo: 1h5m50s (1 hora, 5 minutos y 50 segundos) o 60s (60 segundos). |
30s |
multiplier |
Especifica el multiplicador para la retirada exponencial entre reintentos consecutivos. | Número de punto flotante | "2" |
cloud-metrics-export-interval-secs |
Exporta métricas a Cloud Monitoring con el intervalo especificado. Nota: El uso de esta marca requiere una configuración adicional. Para obtener más información, consulta Configura el exportador de Cloud Monitoring. |
Es un número entero que representa un valor en segundos, por ejemplo: 10 (10 segundos).
0 especifica que no se exportará. |
0 |
prometheus-port |
Expone el extremo de las métricas de Prometheus en el puerto y la ruta de acceso Nota: El uso de esta marca requiere una configuración adicional. Para obtener más información, consulta Cómo configurar el exportador de Prometheus. |
Es un número entero que representa el puerto que deseas especificar. | 0 |
log-mutex |
Imprime mensajes de depuración cuando una exclusión se mantiene por mucho tiempo. Si se especifica esta opción, el nivel de gravedad de los registros se establece de forma automática en trace , que incluye registros de seguimiento, registros de depuración, registros de información, registros de advertencia y registros de errores. |
Valor booleano: true , false . |
false |
exit-on-invariant-violation |
Sale del programa cuando se detectan incumplimientos de variantes internas. | Valor booleano: true , false . |
false |
enable-streaming-writes |
Controla el flujo de la ruta de escritura para que los datos se suban directamente a Cloud Storage a medida que se escriben, en lugar de preparar la escritura por completo de forma local y subirla a close() o fsync() .
Para obtener más información sobre las operaciones de escritura continuas, consulta la documentación de GitHub de Cloud Storage FUSE. |
Valor booleano: true , false . |
false |