• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Observabilidade de custos Kubernetes com Kubecost

Visualização

Este recurso está atualmente em versão prévia.

Com New Relic e Kubecost, você pode entender os custos associados a cada um dos seus recursos do Kubernetes.

Insights acionáveis:

  • Quais são os principais fatores de custo no meu cluster (CPU, armazenamento, saída, etc.)?
  • Quais nós estão gerando aumentos recentes de custos em meu cluster?
  • Quais são os detalhamentos de custos por namespace para a carga de trabalho do meu aplicativo?
  • Como posso personalizar a estimativa de custos com base nos preços/descontos fornecidos pelos meus provedores de nuvem?

Iniciar

Este guia pressupõe que você usará o servidor Prometheus incluído no Kubecost. É possível usar o seu próprio, embora esteja fora do escopo deste guia.

Você precisará criar um endpoint Remote Write no New Relic, o que pode ser feito clicando no botão verde "Adicionar dados do Prometheus" nesta página. Observe que o token ao portador será usado. Gravação remota do Prometheus

Configurar a gravação remota do Prometheus

  1. Selecione uma conta para receber os dados do Prometheus.
  2. Nomeie a fonte de dados, por exemplo, kubecost.
  3. Gere a URL e o token do portador para usar no próximo conjunto de etapas.

Instale o agente Kubecost em seu cluster

Em seguida, instale o agente Kubecost via Helm.

  1. Baixe o arquivo YAML de modelo para a instalação do agente Kubecost. Salve-o em kubecost-values.yaml.

    prometheus:
    serverFiles:
    prometheus.yml:
    remote_write:
    - url: https://metric-api.newrelic.com/prometheus/v1/write?prometheus_server=YOUR_CLUSTER_NAME
    bearer_token: YOUR_BEARER_TOKEN
    server:
    global:
    external_labels:
    cluster_id: YOUR_CLUSTER_NAME
    kubecostProductConfigs:
    clusterName: YOUR_CLUSTER_NAME
  2. Abra kubecost-values.yaml em um editor de sua preferência.

  3. Copie e cole o endpoint remote_write da etapa anterior, substituindo as linhas 5 e 6.

  4. Substitua ambas as entradas YOUR_CLUSTER_NAME pelo nome do seu cluster.

  5. Execute o comando Helm abaixo para adicionar o agente Kubecost ao seu cluster e começar a enviar dados para o New Relic:

    bash
    $
    helm upgrade --install kubecost \
    >
    --repo https://kubecost.github.io/cost-analyzer/ cost-analyzer \
    >
    --namespace kubecost --create-namespace \
    >
    --values kubecost-values.yaml
  6. Espere alguns minutos. Na guia anterior, onde você configurou a gravação remota, clique no botão See your data para ver se os dados foram recebidos.

  7. Consulte seus dados:

    SELECT sum(`Total Cost($)`) AS 'Total Monthly Cost'
    FROM (FROM Metric SELECT (SELECT sum(`total_node_cost`)
    FROM (FROM Metric SELECT (average(kube_node_status_capacity_cpu_cores) * average(node_cpu_hourly_cost)
    * 730 + average(node_gpu_hourly_cost)
    * 730 + average(kube_node_status_capacity_memory_bytes) / 1024 / 1024 / 1024
    * average(node_ram_hourly_cost) * 730) AS 'total_node_cost' FACET node))
    + (SELECT (sum(acflb) / 1024 / 1024 / 1024 * 0.04) AS 'Container Cost($)'
    FROM (SELECT (average(container_fs_limit_bytes) * cardinality(container_fs_limit_bytes)) AS 'acflb'
    FROM Metric WHERE (NOT ((device = 'tmpfs')) AND (id = '/'))))
    + (SELECT sum(aphc * 730 * akpcb / 1024 / 1024 / 1024) AS 'Total Persistent Volume Cost($)'
    FROM (FROM Metric SELECT average(pv_hourly_cost)
    AS 'aphc', average(kube_persistentvolume_capacity_bytes) AS 'akpcb' FACET persistentvolume, instance))
    AS 'Total Cost($)')

Você pode seguir a documentação do Kubecost para expor a interface do Kubecost com um ingress.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.