• /
  • EnglishEspañolFrançais日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は、参考として提供されています。

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

問題を作成する

Helmを使用したMySQL監視用のNRDOTのインストールと構成

|View as Markdown (English)

mysql-otel Helmチャートを使用して、Kubernetes上でMySQL監視をインストールおよび構成できます。オプションで、チャートは監視ユーザーを作成するセットアップジョブを実行することもできます。

重要

チャートは、ネットワーク経由でリモートからMySQLに到達するKubernetesデプロイメントとしてコレクターをデプロイします。その結果、常にTCP経由で接続し(Unixソケットの監視はサポートされていません)、MySQLのメトリクスのみを報告します(MySQLが実行されているマシンのホストやインフラストラクチャのメトリクスは報告しません)。mysql.*を使用すると、リリースごとに1つのMySQLインスタンスをモニターします。1つのリリースから複数のインスタンスをモニターするには、代わりにmysqlMulti.*を使用してください(以下の「1つのリリースから複数のインスタンスをモニターする」を参照してください)。

前提条件

  • 有効なNew Relicのライセンスキー。

  • MySQL 5.7以降。

  • Helm 3.0以降、およびKubernetesクラスタにアクセスするように設定されたkubectl。

  • KubernetesクラスタからMySQLホスト(またはRDSエンドポイント)およびポートへのネットワーク接続:

    • セルフホスト型:MySQLホストへのルーティングされたパス(VPN、ピアリング、または共有ネットワーク)、ホスト名の場合はDNS解決、およびMySQL側のファイアウォールで接続の実際の送信元IP(ポッドIP自体ではなく、NATゲートウェイである場合があります)を許可する必要があります。
    • AWS RDS:VPCピアリング、トランジットゲートウェイ、またはRDSインスタンスとの共有VPC配置であり、RDSセキュリティグループはクラスタのエグレスソースからのMySQLポート(デフォルトでは3306)を許可する必要があります。
  • すでに作成済みの監視ユーザー、またはチャートのセットアップジョブが監視ユーザーを作成できるようにするためのMySQL管理者認証情報のいずれかです。以下の監視認証情報の設定を参照してください。

ネームスペースを作成

インストール先のネームスペースを作成します。helm install --create-namespaceは最後のインストール手順でのみネームスペースを作成するため、次の手順でシークレットを作成する前に、ネームスペースが存在している必要があります:

bash
$
kubectl create namespace newrelic

ヒント

以下のすべてのコマンドで-nを渡す必要がないように、現在のkubectlコンテキストのデフォルトのネームスペースとして設定します:

bash
$
kubectl config set-context --current --namespace=newrelic

監視資格情報の設定

チャートのセットアップジョブにMySQL監視ユーザーを作成させるかどうかを決定し、作成させない場合は、その資格情報をどのように提供するかを決定してください:

Helmの値を設定します

環境に合わせてmysql.topologyを設定してください:

価値

説明

self-hosted

ネットワーク経由で到達するセルフホスト型MySQL。

rds

AWS RDS上のMySQLまたはAurora。

前の手順で選択した資格情報メソッドに一致するvalues.yamlを使用します:

パラメータ

説明

licenseKey

New Relicライセンスキー。

otlpEndpoint

ご使用のリージョンのOTLP/gRPCエンドポイントは、

スキームなし

の単なる

host:port

として指定します:

otlp.nr-data.net:4317

(米国)または

otlp.eu01.nr-data.net:4317

(EU)。詳細については、

New Relic OTLPエンドポイントのドキュメント

を参照してください。

mysql.server

/

mysql.port

クラスタから到達可能な、MySQLホスト(またはRDSエンドポイント)とポート。

mysql.database

オプション。監視を1つのデータベースに制限します。すべてのデータベースをモニターするには、空のままにします。

additionalReceiverConfig.tls.*

オプション。チャートは

tls

ブロックを宣言しておらず、

mysql.tls.*

値を持っていません。レシーバー独自のデフォルトが適用され(

insecure: false

、

insecure_skip_verify: false

)、証明書の検証を伴う暗号化された接続が必要になります。

additionalReceiverConfig

を使用してこれらをオーバーライドします:

additionalReceiverConfig.tls.insecure_skip_verify=true

を設定して証明書の検証をスキップするか(接続のセキュリティを弱めるため、自己署名証明書を使用したテスト用のみ)、

additionalReceiverConfig.tls.ca_file

を設定してコレクターコンテナにマウントされたCAバンドルを指すようにします。

SSL/TLSの強制を必要とするAmazon RDSインスタンスでは、ca_fileをAmazonのRDS CAバンドルに設定する必要があります

。AmazonがCAをローテーションする際にハードコードされたバンドルが古くなるリスクがあるため、チャートには意図的にデフォルトのバンドルが含まれていません。

setupJob.image.repository

/

setupJob.image.tag

セットアップジョブで使用される

mysql

CLIイメージ。デフォルトは公式で積極的に保守されている

mysql:8.4

であるため、セットアップジョブを有効にする際に追加のイメージフラグは必要ありません。異なるバージョンが必要な場合のみオーバーライドしてください。

setupJob.enableWaitTimeMetrics

オプション。待機時間データに必要な

performance_schema.setup_consumers

に対する

UPDATE

も付与します。

ヒント

mysql.collectionInterval、mysql.explainMode、statementEvents/querySampleCollection/topQueryCollectionブロック、およびadditionalReceiverConfigエスケープハッチを含む、利用可能なすべての設定オプションについては、チャートのvalues.yamlを参照してください。

(オプション) 1つのリリースから複数のインスタンスをモニターする

1つのリリース内の単一のコレクターポッドから複数のMySQLインスタンス(セルフホストまたはRDS)をモニターするには、mysql.*の代わりにmysqlMulti.enabled: trueを設定します。2つのモードは相互に排他的です:同じリリースでmysql.serverとmysqlMulti.enabled: trueを設定しないでください。

マルチインスタンスモードには、プレーンなユーザー名/パスワードのパスはありません:各インスタンスには、監視資格情報を含む独自のKubernetesシークレットが必要です。セットアップジョブで各監視ユーザーも作成するかどうかを決定します:

パラメータ

説明

mysqlMulti.enabled

1つのリリースから複数のインスタンスをモニターするには、

mysql.*

の代わりに

true

に設定します。デフォルトは

false

です。

mysqlMulti.topology

self-hosted

または

rds

、

mysql.topology

と同じ意味であり、このリリースのすべてのインスタンスで共有されます。

mysqlMulti.databases

モニターするインスタンスの一覧。各エントリには一意の

name

、

server

(

port

のデフォルトは

3306

)、および

existingSecret

が必要です;

database

はオプションで監視を1つのデータベースに制限します(

mysql.database

と同じ意味です);

setupJob.enabled

が

true

の場合にのみ、エントリごとに

mysqlAdmin.existingSecret

を追加します。

ヒント

スクレイプ設定(収集間隔、TLS、ステートメントイベント、クエリサンプル収集、トップクエリ収集)は、mysqlMulti.databases内のすべてのインスタンスに同一に適用されます。インスタンスごとのオーバーライドはありません。異なる必要があるものにはadditionalReceiverConfigを使用します。セットアップジョブは、リリースごとに1回ではなく、インスタンス(<release>-setup-<name>)ごとに1回実行されます。

Helmチャートをインストールする

  1. New Relic Helm リポジトリを追加します。

    bash
    $
    helm repo add newrelic https://helm-charts.newrelic.com
    $
    helm repo update
  2. values.yamlファイルを使用してチャートをインストールします:

    bash
    $
    helm upgrade --install mysql-otel newrelic/mysql-otel \
    >
    -n newrelic \
    >
    --create-namespace \
    >
    -f values.yaml

インストレーションを確認する

  1. セットアップジョブが完了し(有効な場合)、コレクターポッドが実行されていることを確認します:

    bash
    $
    kubectl get jobs,pods -n newrelic --watch
  2. データが到着していることを確認するには、クエリビルダーでこのクエリを実行してください:

    SELECT count(*) FROM Metric
    WHERE metricName LIKE 'mysql.%'
    AND instrumentation.provider = 'opentelemetry'
    SINCE 10 minutes ago

データを探す、使う

データの収集が開始されると、New Relic UIから包括的なMySQLデータベース監視にアクセスできます。

New RelicでMySQLデータベースエンティティを見つけるには:

  1. one.newrelic.com > All capabilities > Databasesに移動します。
  2. Entity typeドロップダウンからMySQL instanceを選択し、Applyをクリックします。
  3. エンティティのリストからMySQLデータベースを選択します。

NRDOTを使用したMySQLモニタリングの概要

New Relicを使用したMySQL監視で利用可能なすべてのインストレーション方法についてご確認ください。

CLIインストール

単一のNew Relic CLIコマンドを使用して、MySQL監視をインストールおよび設定する方法を学びます。

Ansibleのインストール

newrelic.newrelic_installを使用して、MySQL監視を大規模にインストールおよび設定する方法をご確認ください。Ansibleロール。

Chefのインストール

newrelic-install Chefクックブックを使用して、MySQL監視を大規模にインストールおよび設定する方法について説明します。

Copyright © 2026 New Relic株式会社。

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