Nesta página, descrevemos como usar o arquivo de configuração do Cloud Storage FUSE para definir o comportamento do Cloud Storage FUSE de maneira persistente. Para usar esse arquivo, especifique o caminho para ele na flag --config-file
como parte do comando de montagem.
O arquivo de configuração é um YAML que usa o formato e os campos a seguir. Alguns dos campos também podem ser especificados usando opções de linha de comando.
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: stackdriver-export-interval: STACKDRIVER_EXPORT_INTERVAL debug: log-mutex: LOG_MUTEX exit-on-invariant-violation: EXIT_ON_INVARIANT_VIOLATION write: enable-streaming-writes: STREAMING_WRITES
Campos de configuração
A tabela a seguir descreve os campos que você pode especificar no arquivo de configuração. A menos que seja indicado o contrário, todos os campos são opcionais.
Campo | Descrição | Valor válido | Valor padrão |
---|---|---|---|
app-name |
O nome do aplicativo da montagem. | Valor de string, por exemplo: "my-bucket-mount" . |
"" |
file-path |
O caminho para o arquivo de registro em que os registros serão gravados.
Se esse campo não for especificado, os registros serão roteados para stdout quando o Cloud Storage FUSE for executado em primeiro plano e para syslogs quando o Cloud Storage FUSE for executado em segundo plano. |
Valor de string, por exemplo: "/var/log" . |
"" |
format |
Especifica o formato do arquivo de registros. |
|
json |
severity |
O nível de gravidade para o Cloud Storage FUSE gerar registros. Os
níveis de gravidade são ordenados do menor para o maior. Por
exemplo, quando você especifica |
|
info |
max-file-size-mb |
O tamanho máximo em megabytes (MB) que os arquivos de registro podem alcançar antes de serem rotacionados. | Número inteiro. O valor mínimo é 1 . |
512 |
backup-file-count |
O número máximo de arquivos de registro rotacionados a serem mantidos, exceto o arquivo ativo em que os registros são gravados. |
|
10 |
compress |
Especifica se os arquivos de registro rotacionados serão compactados
usando gzip . |
Valor booleano: true , false |
true |
max-size-mb |
O tamanho máximo em MiB que o cache de arquivos pode usar. Se presente, |
|
-1 |
cache-file-for-range-read |
Determina se o download completo do objeto precisa ser feito de modo assíncrono
e armazenado no diretório de cache do Cloud Storage FUSE quando a primeira leitura for
feita de um deslocamento diferente de zero. Essa opção precisa
ser definida como true se você planeja executar várias leituras
aleatórias ou parciais.
Observação: se você realizar uma leitura parcial começando no deslocamento
|
Valor booleano: true , false |
false |
enable-parallel-downloads |
Acelera a leitura de arquivos grandes usando o diretório de cache de arquivos como um buffer de pré-busca usando vários workers para fazer o download de arquivos grandes em em paralelo. Para saber mais sobre downloads paralelos e configurar as propriedades de suporte, consulte Melhorar o desempenho de leitura usando downloads paralelos. Para usar downloads paralelos, primeiro ative o armazenamento em cache de arquivos. |
Valor booleano: true , false |
false |
parallel-downloads-per-file |
Especifica o número máximo de goroutines a serem geradas por arquivo para download do objeto do Cloud Storage para o cache de arquivos. |
Número inteiro | 16 |
max-parallel-downloads |
O número máximo de goroutines que podem ser gerados a qualquer momento em todos os jobs de download de arquivos. |
|
O dobro do número de núcleos de CPU na máquina ou 16 ,
o que for maior. |
download-chunk-size-mb |
Especifica o tamanho de cada solicitação de leitura em MiB que cada goroutine faz para o Cloud Storage ao fazer o download do objeto no cache de arquivos. | Número inteiro | 50 |
enable-nonexistent-type-cache |
Cria uma entrada de cache de tipo com o tipo NonexistentType
se um arquivo não for encontrado no Cloud Storage. Se o arquivo for criado no Cloud Storage, mas a entrada NonexistentType para o arquivo for armazenada em cache, o Cloud Storage FUSE não poderá solicitar esse arquivo até que a entrada NonexistentType seja removida do tipo cache. |
Valor booleano: true , false |
false |
stat-cache-max-size-mb |
O tamanho máximo de memória que o cache de estatísticas pode usar, em MiB. O cache de estatísticas é sempre mantido por completo na memória. |
|
32 |
negative-ttl-secs |
Define o time to live (TTL) em segundos de entradas de cache de estatísticas negativo, que armazenam resultados de arquivos inexistentes no cache. |
|
5 |
ttl-secs |
Define o time to live (TTL), em segundos, das entradas de metadados armazenadas em cache. |
|
60 |
type-cache-max-size-mb |
O tamanho máximo em MiB por diretório que o cache de tipos pode usar. O cache de tipos é sempre totalmente mantido na memória. |
|
4 |
cache-dir |
Especifica o diretório para armazenar dados de cache de arquivos. Para saber como ativar o armazenamento em cache de arquivos, consulte Usar o armazenamento em cache de arquivos. |
Um caminho, por exemplo: "/tmp/gcsfuse-cache-path" . |
|
only-dir |
Ativa apenas um diretório específico em um bucket. | Um caminho, por exemplo: "/etc/gcsfuse.yaml" . |
|
anonymous-access |
Desativa a autenticação para solicitações. Essa opção precisa ser definida se você estiver usando um endpoint personalizado que não é compatível com autenticação. Essa opção também precisa ser definida se você estiver usando o Cloud Storage FUSE com buckets públicos. | Valor booleano: true , false |
false |
key-file |
Especifica um caminho absoluto para o arquivo de chave JSON de credencial para autenticar solicitações para o Cloud Storage. Por padrão, o Cloud Storage FUSE usa Application Default Credentials para autenticar solicitações. | Um URL. | Quando essa opção não está definida, as credenciais padrão do aplicativo são usadas. |
reuse-token-from-url |
Especifica se o token adquirido de
--token-url será reutilizado. |
Valor booleano: true , false |
true |
token-url |
Especifica um URL para receber um token de acesso quando --key-file estiver ausente. |
Um URL. | |
billing-project |
Especifica um projeto para usar no faturamento quando o bucket ativado é acessado. Essa opção é frequentemente necessária ao ativar um bucket com pagamentos do solicitante. | Valor de string que representa um "ID do projeto". | "" |
client-protocol |
Especifica o protocolo usado para comunicação com o back-end do Cloud Storage. |
|
http1 |
custom-endpoint |
Especifica um endpoint personalizado alternativo para buscar dados.
O endpoint personalizado precisa ser compatível com os recursos e as operações
equivalentes ao endpoint JSON do Cloud
Storage, https://storage.googleapis.com/storage/v1 .
Se um endpoint personalizado não for especificado, o Cloud Storage FUSE usará o endpoint global
da API JSON do Cloud Storage,
https://storage.googleapis.com/storage/v1 .
Se a autenticação não tiver suporte no endpoint personalizado que você especificar, defina
a sinalização --anonymous-access como true para
ignorar a autenticação. |
Um endpoint, por exemplo: "http://localhost:443/storage/v1" . |
|
http-client-timeout |
Especifica quanto tempo o cliente HTTP do FUSE do Cloud Storage pode aguardar para receber uma resposta do servidor antes de expirar. | Duração, por exemplo: 1h10m10s para 1 hora, 10 minutos
e 10 segundos. 0s não especifica um tempo limite. |
0s , que especifica que não há tempo limite |
limit-bytes-per-sec |
Especifica o limite de largura de banda em que o Cloud Storage FUSE pode ler dados do Cloud Storage, medidos em uma janela de 30 segundos. | "-1" , que não especifica limite. |
|
limit-ops-per-sec |
Especifica um limite para operações executadas por segundo, medida em uma janela de 30 segundos. | Número de ponto flutuante. -1 não especifica nenhum limite. |
"-1" |
max-conns-per-host |
Especifica o número máximo de conexões TCP permitidas por servidor.
Isso entra em vigor quando --client-protocol é definido como
http1 . |
0 |
|
max-idle-conns-per-host |
Especifica o número máximo de conexões inativas permitidas por servidor.
Isso entra em vigor quando --client-protocol é definido como
http1 . |
Número inteiro entre 0 e 2147483647 .
0 não especifica um limite nas conexões TCP. |
0 |
sequential-read-size-mb |
Especifica o tamanho do bloco dos dados a serem baixados do Cloud Storage, em megabytes (MB). | Número inteiro entre 1 e 1024 . |
200 |
implicit-dirs |
Inclui pastas e pastas gerenciadas de maneira implícita. Consulte a documentação de arquivos e diretórios no GitHub para mais informações. | Valor booleano: true , false |
false |
kernel-list-cache-ttl-secs |
Ativa a cache da lista e define o time to live (TTL) em segundos de cache na lista de permissões. O cache da lista é mantido na memória do cache da página, que é controlados pelo kernel com base na memória disponível. |
| 0 |
ignore-interrupts |
Instrui o Cloud Storage FUSE a ignorar sinais de interrupção do sistema, como
SIGINT acionado por Control+C . Isso impede indicadores
de encerramento de operações em andamento. |
Valor booleano: true , false . |
true |
dir-mode |
Bits de permissões para diretórios, em octal. | Número inteiro entre 000 e 777 (inclusive). |
"755" |
file-mode |
Especifica bits de permissões para arquivos, em octal. | Número inteiro entre 000 e 777 (inclusive). |
"644" |
fuse-options |
Especifica outras opções de ativação específicas do sistema. | ||
gid |
Especifica o proprietário do Identificador de Grupo (GID) de todos os inodes. |
|
-1 |
rename-dir-limit |
Permite renomear os diretórios que contêm menos descendentes do que o limite especificado. | Número inteiro entre 0 e 2147483647 . |
0 |
temp-dir |
Especifica um caminho para o diretório temporário em que as gravações são testadas antes do upload para o Cloud Storage. | Um caminho de string, por exemplo: "/mnt/ssd/example-user-gcsfuse-temp-dir" . |
"/tmp" |
uid |
Especifica o proprietário do identificador de usuário (UID, na sigla em inglês) de todos os nós. |
|
-1 |
foreground |
Executa o comando gcsfuse em primeiro plano. |
Valor booleano: true , false |
false |
max-retry-sleep |
Especifica a duração máxima que o Cloud Storage FUSE pode ficar suspenso em um loop de nova tentativa com espera exponencial. Quando a duração de espera excede a duração máxima especificada, a nova tentativa continua com a duração máxima especificada. | Duração, por exemplo: 1h5m50s (1 hora, 5 minutos e
50 segundos) ou 60s (60 segundos). |
30s |
multiplier |
Especifica o multiplicador para a espera exponencial entre tentativas consecutivas. | Número de ponto flutuante | "2" |
stackdriver-export-interval |
Exporta métricas para o Stackdriver com o intervalo especificado. | Duração, por exemplo: 1h5m50s (1 hora, 5 minutos e
50 segundos). 0s não especifica a exportação. |
0s |
log-mutex |
Imprime mensagens de depuração quando uma mutex é mantida por muito tempo. Se essa opção for especificada, o nível de gravidade dos registros será definido automaticamente como trace , o que inclui registros de rastreamento, depuração, informações, aviso e erro. |
Valor booleano: true , false . |
false |
exit-on-invariant-violation |
Sai do programa quando violações de variantes internas são detectadas. | Valor booleano: true , false . |
false |
enable-streaming-writes |
Controla o fluxo do caminho de gravação para que os dados sejam enviados diretamente para o Cloud Storage conforme são gravados, em vez de preparar a gravação localmente e fazer o upload após close() ou fsync() .
Para mais informações sobre gravações em streaming, consulte a
documentação do FUSE do Cloud Storage no GitHub. |
Valor booleano: true , false . |
false |