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" 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: enable-nonexistent-type-cache: ENABLE_NONEXISTENT_TYPE_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" 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
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 |
---|---|
app-name |
O nome do aplicativo da montagem. |
create-empty-file |
Um valor booleano que especifica se um arquivo de zero byte será criado no Cloud Storage quando você começar a gravar em um novo arquivo no bucket ativado. Se esse campo não for especificado, o valor padrão será
false . |
file-path |
O caminho para o arquivo de registros em que os registros serão gravados, especificado como uma string. Por exemplo, /var/log 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. |
format |
O formato em que os registros são gerados,
expresso como um tipo enumerado.
Os valores são text ou json . Se esse campo não for especificado, o valor padrão será json . |
severity |
A gravidade dos registros que você quer que o Cloud Storage FUSE gere, expressa como um tipo enumerado. Os níveis de gravidade são ordenados do menor para o maior:
Ao especificar um nível de gravidade, o Cloud Storage FUSE gera registros com gravidade igual
ou maior. Por exemplo, quando você especifica O nível de gravidade será definido automaticamente como
Se esse campo não for especificado, o valor padrão será
Observação:o uso dos níveis de gravidade |
max-file-size-mb |
O tamanho máximo em megabytes (MB) que os arquivos de registro podem alcançar antes de serem rotacionados. O valor mínimo é 1 . Se esse campo não for especificado,
o valor padrão será 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. Quando o valor é definido como 0 , todos os arquivos de registros rotacionados são mantidos. Se esse campo não for especificado, o valor
será 10 por padrão. |
compress |
Um valor booleano que especifica se os arquivos de registro rotacionados serão compactados usando gzip. Se esse campo não for especificado, o valor padrão será
true . |
max-size-mb |
O tamanho máximo em MiB que o cache de arquivos pode usar. Se presente,
Se esse campo não for especificado, o valor padrão será
|
cache-file-for-range-read |
Um valor booleano que determina se
o objeto completo será transferido por download de maneira assíncrona e armazenado no
diretório de cache do Cloud Storage FUSE quando a primeira leitura for feita de um deslocamento
diferente de zero. Defina como Se você fizer uma leitura parcial começando no deslocamento |
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. O valor padrão é Para usar downloads paralelos, ative o armazenamento em cache de arquivos. Para saber mais sobre downloads paralelos e configurar as propriedades de suporte, consulte Melhorar o desempenho de leitura usando downloads paralelos. |
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.
O valor padrão é |
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 padrão é
o dobro do número de núcleos de CPU na máquina. Para ignorar um limite, especifique
um valor de |
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.
O valor padrão é |
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.
O valor padrão é false . |
stat-cache-max-size-mb |
O tamanho máximo em MiB que o cache de estatísticas pode usar. O cache de estatísticas é sempre mantido por completo na memória.
Se esse campo não for especificado, o valor padrão será
|
ttl-secs |
Define o time to live (TTL) de entradas de metadados armazenadas em cache, expresso em segundos.
Se esse campo não for especificado, o valor padrão será
|
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.
Se esse campo não for especificado, o valor padrão será
|
cache-dir |
Especifica o diretório para armazenar dados de cache de arquivos. Esse campo precisa ser especificado para ativar o armazenamento em cache de arquivos. |
only-dir |
Ativa apenas um diretório específico em um bucket. |
anonymous-access |
Desativa a autenticação para solicitações. Defina esse campo se você estiver usando um endpoint personalizado que não oferece suporte à autenticação ou se estiver usando o Cloud Storage FUSE para montar buckets públicos. O valor padrão é 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. |
reuse-token-from-url |
Especifica que o token adquirido de token-url seja usado.
O valor padrão é true . |
token-url |
Especifica um URL para receber um token de acesso quando key-file estiver ausente. |
billing-project |
Especifica um projeto para usar no faturamento quando o bucket ativado é acessado. Essa sinalização é frequentemente necessária ao ativar um bucket ativado com pagamentos do solicitante. O projeto padrão é nenhum. |
client-protocol |
Especifica o protocolo usado para comunicação com o back-end do Cloud Storage. O valor pode ser http1 para HTTP/1.1 ou http2 para HTTP/2. O valor padrão é 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 flag de anonymous-access para true
para ignorar a autenticação.
|
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. O valor padrão é 0s , que não indica 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. O valor limite padrão é "-1" , que não especifica nenhum limite. |
limit-ops-per-sec |
Especifica um limite para operações executadas por segundo, medida em uma janela de 30 segundos. O valor limite padrão é "-1" , que não especifica nenhum limite. |
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 . O valor padrão é 0 , que especifica
que não há limite nas conexões TCP, com exceção das limitações definidas
especificações da máquina. |
max-idle-conns-per-host |
Especifica o número máximo de conexões inativas permitidas por servidor. O valor padrão é 100 . |
sequential-read-size-mb |
Especifica o tamanho do bloco dos dados a serem baixados do Cloud Storage, em megabytes (MB). O valor padrão é 200 . |
implicit-dirs |
Inclui pastas e pastas gerenciadas de maneira implícita. Consulte a documentação de arquivos e diretórios no GitHub (em inglês) para mais informações. |
kernel-list-cache-ttl-secs |
Ativa o
cache da lista e
define o time to live (TTL) em segundos de cache
nas entradas da lista.
A alocação de memória para o cache de lista é controlada pelo kernel com base na
memória disponível. O valor padrão é 0 ,
que desativa o armazenamento em cache da lista.
Para definir o campo kernel-list-cache-ttl-secs , especifique um
valor positivo em segundos para manter a resposta da lista de diretórios no
cache de páginas do kernel. Para ignorar a expiração da entrada e sempre retornar a lista
do cache quando disponível, especifique o valor
-1 : |
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. Os valores são true ou false . O valor padrão é true . |
dir-mode |
Bits de permissões para diretórios, em octal. O valor padrão é "755" . |
file-mode |
Especifica bits de permissões para arquivos, em octal. O valor padrão é "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.
O valor padrão do GID é -1 . |
rename-dir-limit |
Permite renomear os diretórios que contêm menos descendentes do que o limite especificado. O valor limite padrão é 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. O valor padrão é o padrão do
sistema, como "/tmp" . |
uid |
Especifica o proprietário do identificador de usuário (UID, na sigla em inglês) de todos os nós. O valor do UID padrão é -1 . |
foreground |
Executa o comando gcsfuse em primeiro plano. O valor padrão é 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. O valor limite padrão é 30s (30 segundos). |
multiplier |
Especifica a espera exponencial entre as tentativas, em que o valor é
o multiplicador do tempo de espera subsequente com base no tempo de espera
anterior. O valor padrão é "2" . |
stackdriver-export-interval |
Exporta métricas para o Cloud Monitoring com o intervalo especificado. O valor padrão é 0s
(0 segundos), que não especifica a exportação. |
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. O valor padrão é false . |
exit-on-invariant-violation |
Sai do programa quando violações de variantes internas são detectadas. O valor padrão é false . |