• ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、 を参照してください。

問題を作成する

HelmによるKubernetesインテグレーションのインストール

Helm は、Kubernetes 上のパッケージマネージャです。インストール、アップグレード、リビジョンの追跡を容易にし、Kubernetesにインストールするサービスの依存関係を管理します。

Helm を使用して統合をインストールするには、 Kubernetes のガイド付きインストールをお勧めします。これにより、いくつかの構成オプションを求められ、シークレットと値が自動入力されます。さらに、ガイド付きインストールでは、統合を Helm リリースではなくプレーンなマニフェストとしてインストールすることもできます。

インストーラの起動

互換性と要件

Helmがマシンにインストールされていることを確認してください。 Kubernetes Integrationのバージョン3には、Helmバージョン3が必要です。

Helm を使用して Kubernetes 統合をインストールするには、New Relicと Kubernetes クラスターの名前が必要です。

  1. を見つけてコピーします。

  2. クラスタの表示名を決めます。例えば、次のような出力が考えられます。

    bash
    $
    kubectl config current-context

重要

これらの値は後でインストール時に必要になるので、安全な場所にメモしておいてください。

HelmによるKubernetesインテグレーションのインストール

New Relicには、プラットフォームの異なる機能を提供するさまざまなコンポーネントのためのいくつかのチャートがあります。

便宜上、New Relicはnri-bundleチャートを提供します。これは、上記のチャートの選択可能なセットをプルします。 nri-bundleは、必要に応じてKubeStateMetricsとPixieをインストールすることもできます。

これらのチャートを個別にインストールすることは可能ですが、Kubernetes のデプロイにはnri-bundleチャートを使用することを強くお勧めします。これにより、すべてのチャートの値が一貫しており、インストールされるコンポーネントを完全に制御でき、構成する可能性もあるからです。それらはすべてHelm の依存関係です。これは、 Kubernetes のガイド付きインストールで使用および参照されているものと同じチャートです。

Helmを使用したnri-bundleのインストールと構成

  1. Helm とkubectlを実行するマシンで適切なコンテキストを使用していることを確認します。

    で利用可能なコンテキストを確認することができます。

    bash
    $
    kubectl config get-contexts

    で、目的のコンテキストに切り替えます。

    bash
    $
    kubectl config use-context _CONTEXT_NAME_
  2. New Relic Helm chartのリポジトリを追加します。

    bash
    $
    helm repo add newrelic https://helm-charts.newrelic.com
  3. 構成を定義するために使用されるvalues-newrelic.yamlという名前のファイルを作成します。

    global:
    licenseKey: _YOUR_NEW_RELIC_LICENSE_KEY_
    cluster: _K8S_CLUSTER_NAME_
    newrelic-prometheus-agent:
    # Automatically scrape prometheus metrics for annotated services in the cluster
    # Collecting prometheus metrics for large clusters might impact data usage significantly
    enabled: true
    nri-metadata-injection:
    # Deploy our webhook to link APM and Kubernetes entities
    enabled: true
    nri-kube-events:
    # Report Kubernetes events
    enabled: true
    newrelic-logging:
    # Report logs for containers running in the cluster
    enabled: true
    kube-state-metrics:
    # Deploy kube-state-metrics in the cluster.
    # Set this to true unless it is already deployed.
    enabled: true
  4. 次のコマンドを実行して、チャートですべてが適切に構成されていることを確認します。--dry-run--debugを指定しているため、このステップでは何もインストールされないことに注意してください。

    bash
    $
    helm upgrade --install newrelic-bundle newrelic/nri-bundle \
    >
    --namespace newrelic --create-namespace \
    >
    -f values-newrelic.yaml \
    >
    --dry-run \
    >
    --debug

    以下のフラグに注意して調整してください。

    • global.licenseKey=YOUR_NEW_RELIC_LICENSE_KEY: アカウントの有効な

      に設定する必要があります。

    • global.cluster=K8S_CLUSTER_NAME:New Relic UIでクラスターを識別するために使用されるため、NewRelicアカウントで構成されている他のKubernetesクラスターでは使用されない説明的な値である必要があります。

    • kube-state-metrics.enabled=true:これをtrueに設定すると、統合を実行するために必要なKube State Metrics(KSM)が自動的にインストールされます。 KSMがクラスターにすでに存在する場合は、別の名前空間にある場合でも、これをfalseに設定できます。

    • newrelic-prometheus-agent.enabled=true: クラスターに存在する Prometheus エンドポイントからデータを自動的に収集する Prometheus Agent をデプロイします。

    • nri-metadata-injection.enabled=true:最小限のWebhookをインストールします。これにより、環境変数が追加され、NewRelicAPMを搭載したアプリケーションをKubernetesにリンクできるようになります。

私たちのKubernetesチャートには、お客様の特定のニーズに合わせて編集可能なフラグとチューナブルの包括的なセットが用意されています。以下の Configure the integration のセクションで、変更可能な項目を確認してください。

  1. --debug--dry-runを指定せずにコマンドを実行して、Kubernetes統合をインストールします。

    bash
    $
    helm upgrade --install newrelic-bundle newrelic/nri-bundle \
    >
    --namespace newrelic --create-namespace \
    >
    -f values-newrelic.yaml

    重要

    Kubernetes バージョン 1.25.x を使用していることを確認してくださいまたはサポートしている下位バージョン

  2. ポッドがデプロイされ、安定した状態になっていることを確認します。

    bash
    $
    kubectl -n newrelic get pods -w

見るべきです。

  1. 1つのnewrelic-nrk8s-ksmポッド。
  2. クラスタ内のノードごとに1つのnewrelic-nrk8s-kubeletポッド。
  3. クラスタ内のマスターノードごとに1つのnewrelic-nrk8s-control-planeポッド(存在する場合)。
  4. インストールにKSMが含まれている場合は、1つのnewrelic-kube-state-metricsポッド。
  5. Kubernetesイベントレポートを有効にした場合は、1つのnewrelic-nri-kube-eventsポッド。
  6. Prometheus エージェント統合を有効にした場合は、1 つのprometheus-agentポッド。
  7. ロギング統合を有効にした場合は、クラスター内のノードごとに1つのnewrelic-newrelic-loggingポッド。

Helm 2とnri-bundle(レガシー)でのインストール

このドキュメントはインストールで役立ちましたか。

統合を構成する

nri-bundleチャート。そのインストール手順は上記にあり、ソリューションのコンポーネントを含む他のいくつかのチャートのラッパーまたはメタパッケージとして機能します。このようなラッパーを提供することにより、コンポーネントのチャートを比較的単純に保ちながら、相互に互換性があることがわかっているバージョンのコンポーネントの制御されたセットを提供できます。

個々の統合コンポーネントを構成するには、Helmの依存関係システムを使用する必要があります。つまり、子グラフの構成は、そのグラフの名前のセクションの下に配置する必要があります。たとえば、 newrelic-infrastructureチャートを構成するには、 values-newrelic.yamlに以下を追加します。

global:
licenseKey: _YOUR_NEW_RELIC_LICENSE_KEY_
cluster: _K8S_CLUSTER_NAME_
# ... Other settings as shown above
# Configuration for newrelic-infrastructure
newrelic-infrastructure:
verboseLog: true # Enable debug logs
privileged: false # Install with minimal privileges
# Other options from https://github.com/newrelic/helm-charts/tree/master/charts/newrelic-infrastructure-v3

微調整できるフラグの完全なリスト ( Scrape-intervalなど) は、チャートのリポジトリにあります。

  • newrelic-infrastructure
  • デバッグログ、特権モード、コントロールプレーン監視などの設定を行います。
  • nri-kube-events
  • nri-metadata-injection
  • APM連携用のWebhookをどのように展開するかを設定します。
  • どのPrometheusエンドポイントをスクレイピングするかを設定します。
  • newrelic-logging
  • どのログをNew Relicに送信するかを設定します。

ヒント

これらのグラフのオプションを指定するときは、 values-newrelic.yamlのグラフ名の下にそれらを配置する必要があることに注意してください。

Copyright © 2023 New Relic Inc.

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