Métricas do FUSE do Cloud Storage

Este documento oferece uma vista geral das métricas do FUSE do Cloud Storage e como recolher, exportar e analisar dados de métricas.

O Cloud Storage fornece métricas detalhadas para o Cloud Storage FUSE quando usa o Cloud Storage FUSE para montar os seus contentores no Cloud Storage como sistemas de ficheiros. As métricas podem ajudar a monitorizar continuamente o desempenho, identificar potenciais gargalos que podem afetar o débito e a latência, e resolver problemas rapidamente à medida que ocorrem.

Para fins de diagnóstico, pode recolher métricas em segundo plano quando usa o Cloud Storage FUSE. O Cloud Storage oferece duas formas de recolher, exportar e analisar métricas:

  • Exportador do Cloud Monitoring: as métricas são recolhidas e exportadas diretamente do Cloud Storage FUSE para o Cloud Monitoring. As métricas exportadas podem ser vistas na Cloud de Confiance consola.

  • Porta do Prometheus: as métricas são exportadas no formato baseado em texto das métricas do Prometheus numa porta do Prometheus especificada, como http://Host:prometheus-port/metrics, usando o conjunto de ferramentas de monitorização e alertas de código aberto do Prometheus. As métricas podem ser vistas como um resultado através de um URL do cliente, como curl http://host:port/metrics

Preços

As métricas do Cloud Storage FUSE são cobradas com base na sua utilização. Para mais informações sobre os preços, consulte os preços do Google Cloud Observability.

Use o exportador do Cloud Monitoring

Para usar o exportador do Cloud Monitoring para exportar, recolher e analisar as suas métricas do Cloud Storage FUSE para o Cloud Monitoring, tem de concluir os passos descritos nas secções seguintes.

Obtenha as funções necessárias

Para receber as autorizações necessárias para usar o exportador do Cloud Monitoring, conceda a função do IAM Gravador de métricas de monitorização (roles/monitoring.metricWriter) no projeto para o qual quer recolher métricas.

Esta função predefinida contém as autorizações necessárias para usar o exportador do Cloud Monitoring. Para mais informações sobre a função de escritor de métricas do Monitoring, consulte a documentação do IAM sobre roles/monitoring.metricWriter.

Para obter instruções sobre como conceder funções para projetos, consulte o artigo Gerir o acesso a projetos.

Antes de começar

  1. Ative a Cloud Monitoring API.

  2. Ative a API Cloud Storage.

    Aceda à API Cloud Storage

Configure o exportador do Cloud Monitoring

Para configurar o exportador do Cloud Monitoring para recolher, exportar e analisar métricas do Cloud Storage FUSE, especifique um valor inteiro em segundos através do campo metrics:cloud-metrics-export-interval-secs com um ficheiro de configuração do Cloud Storage FUSE ou a opção --cloud-metrics-export-interval-secs com a CLI do Cloud Storage FUSE.

Veja métricas através da Cloud de Confiance consola

Para ver as métricas do FUSE do Cloud Storage através da Cloud de Confiance consola, siga as seguintes instruções:

  1. Na Cloud de Confiance consola, aceda à página Explorador de métricas.

    Aceder ao Explorador de métricas

  2. Selecione o projeto para o qual quer ver as métricas.

  3. No menu pendente Métrica, clique em Selecionar uma métrica.

  4. Selecione Instância de VM e, de seguida, clique em Personalizado e introduza o nome da métrica que quer ver. Para ver que métricas o Cloud Storage oferece para o Cloud Storage FUSE, consulte o artigo Métricas disponíveis.

Use o Prometheus para exportar, recolher e analisar métricas

As secções seguintes descrevem como configurar e usar o Prometheus para exportar, recolher e analisar métricas do FUSE do Cloud Storage.

Configure o Prometheus

Para configurar o Prometheus, siga as instruções em Configurar o Prometheus para o agente de operações.

Use o Prometheus

  1. Especifique a porta HTTP para a qual quer exportar métricas através do campo prometheus-port num ficheiro de configuração do FUSE do Cloud Storage ou da opção --prometheus-port gcsfuse através da CLI gcsfuse.

  2. Valide o ponto final de métricas do Prometheus através do seguinte comando:

     curl https://localhost:8080/metrics

    Se for bem-sucedido, o comando devolve um resultado que contém texto semelhante ao seguinte:

     # HELP file_cache_read_bytes_count The cumulative number of bytes read from file cache along with read type - Sequential/Random
     # TYPE file_cache_read_bytes_count counter
     file_cache_read_bytes_count{read_type="Random"} 0
     file_cache_read_bytes_count{read_type="Sequential"} 80
     # HELP file_cache_read_count Specifies the number of read requests made via file cache along with type - Sequential/Random and cache hit - true/false
     # TYPE file_cache_read_count counter
     file_cache_read_count{cache_hit="false",read_type="Random"} 215
     file_cache_read_count{cache_hit="false",read_type="Sequential"} 5
     # HELP file_cache_read_latencies The cumulative distribution of the file cache read latencies along with cache hit - true/false
     # TYPE file_cache_read_latencies histogram
     file_cache_read_latencies_bucket{cache_hit="false",le="1"} 215
     file_cache_read_latencies_bucket{cache_hit="false",le="2"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="3"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="4"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="5"} 216
     ...
     file_cache_read_latencies_sum{cache_hit="false"} 483.62783500000023
     file_cache_read_latencies_count{cache_hit="false"} 220
     # HELP fs_ops_count The cumulative number of ops processed by the file system.
     # TYPE fs_ops_count counter
     fs_ops_count{fs_op="FlushFile"} 9
     fs_ops_count{fs_op="GetInodeAttributes"} 91
     fs_ops_count{fs_op="LookUpInode"} 584
     fs_ops_count{fs_op="OpenDir"} 122
     fs_ops_count{fs_op="OpenFile"} 9
     fs_ops_count{fs_op="ReadDir"} 184
     fs_ops_count{fs_op="ReadFile"} 220
     fs_ops_count{fs_op="ReleaseDirHandle"} 122
     fs_ops_count{fs_op="ReleaseFileHandle"} 9
     fs_ops_count{fs_op="StatFS"} 10
     # HELP fs_ops_error_count The cumulative number of errors generated by file system operations
     # TYPE fs_ops_error_count counter
     fs_ops_error_count{fs_error_category="NOT_IMPLEMENTED",fs_op="GetXattr"} 1
     fs_ops_error_count{fs_error_category="NOT_IMPLEMENTED",fs_op="ListXattr"} 1
     fs_ops_error_count{fs_error_category="INTERRUPT_ERROR",fs_op="LookUpInode"} 58
     fs_ops_error_count{fs_error_category="NO_FILE_OR_DIR",fs_op="LookUpInode"} 6
     # HELP fs_ops_latency The cumulative distribution of file system operation latencies
     # TYPE fs_ops_latency histogram
     fs_ops_latency_bucket{fs_op="FlushFile",le="1"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="2"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="3"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="4"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="5"} 9
     ...
     fs_ops_latency_sum{fs_op="FlushFile"} 0.28800000000000003
     fs_ops_latency_count{fs_op="FlushFile"} 9
     # HELP gcs_download_bytes_count The cumulative number of bytes downloaded from GCS along with type - Sequential/Random
     # TYPE gcs_download_bytes_count counter
     gcs_download_bytes_count{read_type="Sequential"} 2.0971528e+08
     # HELP gcs_read_count Specifies the number of gcs reads made along with type - Sequential/Random
     # TYPE gcs_read_count counter
     gcs_read_count{read_type="Sequential"} 5
     ```

Métricas disponíveis

O Cloud Storage FUSE fornece as seguintes métricas.

Métricas do sistema de ficheiros

As métricas do sistema de ficheiros fornecem estatísticas sobre as operações realizadas no contentor montado, como a latência e as taxas de erros.

Nome da métrica Descrição da métrica
fs/ops_count O número de operações processadas pelo sistema de ficheiros. Esta métrica permite o agrupamento por op_type para obter contagens de operações individuais.
fs/ops_error_count O número de erros gerados por operações do sistema de ficheiros. Pode agrupar esta métrica por op_type e error_category. Cada erro é mapeado para um error_category numa relação de muitos-para-um.
fs/ops_latency A distribuição cumulativa das latências de funcionamento do sistema de ficheiros. Esta métrica pode ser agrupada por op_type.

Métricas do Cloud Storage

As métricas do Cloud Storage fornecem estatísticas sobre as interações entre o Cloud Storage FUSE e o Cloud Storage.

Nome da métrica Descrição da métrica
gcs/download_bytes_count O número de bytes transferidos a partir do Cloud Storage juntamente com o tipo de leitura. O tipo de leitura especifica leituras sequenciais, aleatórias ou paralelas.
gcs/read_bytes_count O número de bytes lidos de objetos do Cloud Storage, que é diferente de download_bytes_count. Por exemplo, são obtidos mais dados do Cloud Storage do que os que são realmente usados pela aplicação.
gcs/read_count O número de leituras do Cloud Storage e o tipo de leitura, que pode ser sequencial, aleatório ou paralelo.
gcs/reader_count O número de leitores de objetos do Cloud Storage que são abertos ou fechados. Os dados desta métrica são agrupados pelo tipo de método de entrada/saída (E/S), como opened ou closed.
gcs/request_count O número de pedidos do Cloud Storage processados.
gcs/request_latencies A distribuição total das latências dos pedidos do Cloud Storage.
gcs/retry_count O número de pedidos de repetição feitos ao Cloud Storage. Esta métrica pode ser agrupada por retry_error_category que especifica a categoria do erro que acionou uma nova tentativa.

Métricas da cache de ficheiros

As métricas da cache de ficheiros fornecem estatísticas sobre o desempenho e o comportamento das operações de colocação em cache de ficheiros do Cloud Storage FUSE.

Nome da métrica Descrição da métrica
file_cache/read_bytes_count O número de bytes lidos da cache de ficheiros e o tipo de leitura, sequencial ou aleatório.
file_cache/read_latencies A distribuição total das latências de leitura da cache de ficheiros e o acerto da cache, verdadeiro ou falso.
file_cache/read_count O número de pedidos de leitura feitos através da cache de ficheiros, o tipo de pedido, como sequencial ou aleatório, e o acerto da cache, verdadeiro ou falso.

O que se segue?