• English日本語한국어
  • ログイン今すぐ開始

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

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

問題を作成する

HCP 領事の監視 (StatsD 経由)

HCP (Hashicorp Cloud Platform) Consul は、コントロール プレーンが HashiCorp Cloud Platform によって管理される Consul のバージョンです。HCP Consul は、Hashicorp が提供するサービス メッシュおよびサービス ディスカバリ ソリューションです。これにより、プラットフォーム オペレーターは、完全に管理された、デフォルトで安全なサービス メッシュを迅速に展開できるようになり、開発者は、Kubernetes、Nomad、Amazon ECS など、任意のランタイムで任意のアプリケーションを検出して安全に接続できるようになります。

Consul クラスターを正常に保つことは、SQL クエリ時間の最適化、遅い HTTP 応答時間のトラブルシューティング、および Hashicorp クラスターのダウンタイムに関するリアルタイムのアラートに役立ちます。Hashicorp クラスター メトリックを監視することは、Hashicorp メッシュ サービスをフル キャパシティで運用し続けるために極めて重要です。

ヒント

また、HCP 上にない Consul インスタンス用の HashiCorp Consul 統合も あります。

New Relic を使用して HCP Consul メトリクスを監視する

HCP Consul をインストールする方法と環境は多数あります。以下の例では、Terraform を介してインストールされた HCP のクイック スタートを使用します。

New Relic は、StatsD プラグインの統合を通じて、HCP Consul および Envoy メトリックの監視をサポートします。StatsD プラグインは、HCP Consul によって公開されたすべてのメトリックを集約し、データの視覚化とアラートのためにそれらを New Relic にプッシュします。

Terraform デプロイ ファイルを生成する

HCP ポータル アカウントの [概要]ページから Terraform デプロイ ファイルを生成します。

Consul クラスターをデプロイする

エンドツーエンドの概要の適切な環境の手順に従って、Consul クラスターをデプロイします。重要: Deploy[配備] ページの下部にある Consul CLI configuration 従っていることを確認してください。

gostatsdインストール

deploy-gostatsd.yamlrbac-gostatsd.yamlをローカルの Kubernetes クライアントにコピーします。

deploy-gstatsd.yaml を編集

  1. YOUR_NEW_RELIC_ACCOUNT_ID を New Relic アカウント ID に置き換えます。

  2. YOUR_NEW_RELIC_LICENSE_KEY を New Relic に置き換えます

    .

  3. 必要に応じて、EU または FedRAMP アカウントの URL を調整します (ファイル内のコメントを参照してください)。

gostatsd をデプロイする

ローカル Kubernetes クライアントで次のコマンドを実行します。

bash
$
kubectl apply -f deploy-gostatsd.yaml
$
kubectl apply -f rbac-gostatsd.yaml

メトリックをレポートするように Consul クライアントを構成する

consul-Client-configMap の編集

Consule クライアントの ConfigMap を編集して、 Consule テレメトリ構成を追加します。

bash
$
kubectl edit cm consul-client-config

以下をdataの下に追加します。

telemetry-config.json: |-
{
"telemetry": {
"disable_hostname": false,
"disable_compat_1.9": true,
"dogstatsd_addr": "gostatsd.default.svc.cluster.local:8125",
"dogstatsd_tags": ["consul.source.datacenter:<YOUR_CONSUL_DATACENTER_NAME_HERE>"]
}
}

結果は次のようになります。

apiVersion: v1
data:
central-config.json: |-
{
"enable_central_service_config": true
}
config.json: |-
{
"check_update_interval": "0s"
}
extra-from-values.json: '{}'
telemetry-config.json: |-
{
"telemetry": {
"disable_hostname": false,
"disable_compat_1.9": true,
"dogstatsd_addr": "gostatsd.default.svc.cluster.local:8125",
"dogstatsd_tags": ["consul.source.datacenter:<YOUR_CONSUL_DATACENTER_NAME_HERE>"]
}
}

メモ:

  1. ここで dogstatsd_addr を使用して、 consul.source.datacenterを追加できるようにします。各メトリックにタグ付けします。これにより、ダッシュボードを Consul Datacenter でフィルタリングできます。
  2. <YOUR_CONSUL_DATACENTER_NAME_HERE>を Consul データセンター名に置き換えてください。
  3. Consul テレメトリ構成オプションを参照してください。

consul-connect-injector デプロイメントの編集

デプロイメントを編集して、デプロイメントで Consule メトリクスを有効にします。

bash
$
kubectl edit deploy consul-connect-injector

default-enable-metricsを検索してtrueに設定します。

-default-enable-metrics=true \

Consul クライアント ポッドを再起動する

Consul クライアントは、構成の変更後に再起動する場合としない場合があります。そうでない場合は、各 Consul クライアント ポッドを再起動します。

bash
$
kubectl delete pod consul-client-<POD_ID> -n <NAMESPACE>

New Relic で Consul メトリクスを閲覧する

New Relic で HCP Consul データを表示するには、 クエリ ビルダーに移動します。

次に、以下のクエリを使用して、HCP Consul メトリックを表示します。

SELECT * FROM Metric WHERE metricName LIKE 'consul.%' SINCE 1 minute ago

ダッシュボードをインストールする

クライアント、ネットワーク、ランタイム、serf、および Envoy に関する HCP Consul からの主要なメトリックを表示するために、事前に構築されたダッシュボードを使用して数分で開始します。

New Relic Instant Observability のHCP Consul クイックスタートに移動し、 + Install nowをクリックします。

トラブルシューティング

初期化時にクラッシュする Pod の場合:

bash
$
kubectl logs PODNAME -c consul-connect-inject-init

実行中のポッドの場合:

bash
$
kubectl logs PODNAME -c DEPLOYMENTNAME

便利な kubectl スニペット

すべてのポッドを削除します。

bash
$
kubectl get pods | grep PODNAMEPREFIX | cut -f 1 -d ' ' | xargs kubectl delete pods

デプロイとそれが生成するポッドを削除します。

bash
$
kubectl delete deployment DEPLOYMENTNAME -n default
Copyright © 2024 New Relic Inc.

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