Se você revisou sua ingestão de dados e deseja enviar menos dados e reduzir os dados ingeridos, temos estas soluções para você:
- Definir
global.lowDataMode
- Alterar o intervalo de raspagem
- Filtrar namespace
Vamos explicar cada opção.
Reduza os dados ingeridos configurando global.lowDataMode
Se quiser reduzir custos, você pode modificar o valor do parâmetro global.lowDataMode
. This will cut down on the number of metrics you send. A modificação deste parâmetro dependerá do método usado para instalar o Kubernetes:
- Instalação guiada (New Relic CLI, Helm, manifesto). O comando de instalação inclui
lowDataMode
por padrão porque possui estes parâmetros:NRI_CLI_LOW_DATA_MODE
,NRI_CLI_PROMETHEUS_AGENT_LOW_DATA_MODE
eNRI_CLI_LOGGING_LOW_DATA_MODE
. - Helm. Defina o parâmetro
global.lowDataMode
no gráficonri-bundle
como verdadeiro. - Manifest.
LowDataMode
é apenas para gráficos do Helm, e os gráficos do Helms são modelos aplicados a manifestos. Quando alguém aplicaLowDataMode
no gráfico do Helm, ele faz algumas pequenas alterações no manifesto final. As alterações nos manifestos referem-se a configurações específicas, mas não a um parâmetro chamadoLowDataMode
.
O parâmetro lowDataMode
afeta estes componentes específicos do gráfico nri-bundle
:
Reduza os dados ingeridos alterando o intervalo de raspagem
A integração do New Relic Kubernetes permite alterar o intervalo de raspagem quando as métricas são coletadas do cluster. Isso permite que você escolha o equilíbrio certo entre resolução e uso de dados. Sugerimos escolher um intervalo de raspagem entre 15 e 30 segundos para obter a melhor experiência.
Dica
O parâmetro lowDataMode
já define o intervalo de raspagem para 30 segundos.
A maneira como você modifica o intervalo de raspagem depende do método usado para instalar o Kubernetes:
- Instalação guiada (New Relic CLI, Helm, manifest): Você não pode modificar esse valor seguindo nosso fluxo de instalação guiada.
- Helm: defina o intervalo de raspagem no gráfico
nri-bundle
com o valor desejado. - Manifest: defina o intervalo de raspagem no arquivo YAML de configuração do manifesto para o valor desejado. Se você seguiu nossas instruções de instalação, o arquivo foi chamado
newrelic-manifest.yaml
.
Se você estiver usando o Helm ou o manifesto e quiser alterar o intervalo de raspagem, basta adicionar o valor do intervalo na seção newrelic-infrastructure
. Dê uma olhada neste exemplo do arquivo values-newrelic.yaml
para ver como ele fica no Helm:
global: licenseKey: _YOUR_NEW_RELIC_LICENSE_KEY_ cluster: _K8S_CLUSTER_NAME_
# ... Other settings
# Configuration for newrelic-infrastructurenewrelic-infrastructure: # ... Other settings common: config: interval: 25s
Importante
Observe que se você estiver usando o cluster explorer em vez do navegador Kubernetes, não será permitido definir interval
com valores maiores que 40s
.
Reduza os dados ingeridos filtrando o namespace
Você pode rotular o namespace para filtrar quais deles a integração Kubernetes elimina. Todos os namespaces são raspados por padrão.
Usamos namespaceSelector
da mesma forma que o Kubernetes. Para incluir apenas o namespace que corresponde a um rótulo, basta alterar o namespaceSelector
. Adicione o seguinte ao seu arquivo values-newrelic.yaml
, na seção newrelic-infrastructure
:
common: config: namespaceSelector: matchLabels: key1 : "value1"
Exemplos com namespace
Você pode ver uma lista completa de configurações que podem ser modificadas no arquivo README do gráfico.
Como posso descobrir quais namespaces estão excluídos?
A amostra K8sNamespace
mostra todo o namespace dentro do cluster. O atributo nrFiltered
determina se iremos extrair os dados relacionados ao namespace. Esta consulta mostra quais namespaces estão sendo monitorados:
FROM K8sNamespaceSample SELECT displayName, nrFiltered WHERE clusterName = <clusterName> SINCE 2 MINUTES AGO
Quais dados estão sendo descartados do namespace excluído?
Estas amostras não estarão disponíveis para o namespace excluído:
K8sContainerSample
K8sDaemonsetSample
K8sDeploymentSample
K8sEndpointSample
K8sHpaSample
K8sPodSample
K8sReplicasetSample
K8sServiceSample
K8sStatefulsetSample
K8sVolumeSample