New Relic GCP統合設定とCloud Operations連携 ​

Google Cloud Platform(GCP)環境での包括的な監視は、Googleのクラウドサービスと New Relic の監視機能を統合することで実現できます。

この記事では、GCP初心者でも理解しやすいよう、Google Cloud Console での GUI操作を中心に、実践的な設定手順を解説します。複雑なスクリプトは最小限に抑え、まずは基本概念の理解を重視します。

なぜGCP統合が必要なのか ​

現代のGCP環境では、Compute Engine だけでなく、Cloud SQL、Cloud Functions、App Engine など、多くのマネージドサービスが連携して動作します。

これらのサービスを個別に監視するのは効率的ではありません。New Relic の GCP統合により、すべてのサービスを統一ダッシュボードで効率的に管理できます。

監視の2つのアプローチ ​

GCP環境でのNew Relic監視は、2つの手法を組み合わせて実現されます:

Infrastructure Agent(エージェント型) ​

Compute Engine インスタンス内にエージェントソフトウェアをインストールして、内部から詳細情報を収集します。

取得できる情報

  • CPU、メモリ、ディスクの詳細な使用状況
  • 実行中のアプリケーションプロセス
  • システムログとアプリケーションログ
  • カスタムメトリクス

GCP統合(API型) ​

Google Cloud APIs を通じて、外部からGCPサービスの状態情報を取得します。

取得できる情報

  • Cloud Monitoring のメトリクス
  • Cloud SQL、App Engine、Cloud Functions の稼働状況
  • 請求・コスト情報
  • ラベル(タグ)情報

設定の全体的な流れ ​

GCP統合の設定は3つのステップで完了します。まずはこの全体像を理解しておきましょう。

Step 1: サービスアカウントの準備 ​

New Relic が GCP の API にアクセスするための認証情報(サービスアカウント)を作成します。

Google Cloud Console での操作手順 ​

  1. IAM & Admin にアクセス

    • Google Cloud Console にログイン
    • ナビゲーションメニューから「IAM & Admin」→「サービスアカウント」を選択
  2. サービスアカウントの作成

    • 「サービスアカウントを作成」ボタンをクリック
    • 名前: newrelic-integration などの分かりやすい名前を入力
    • 説明: New Relic monitoring integration など
  3. 必要な権限の付与

    • 「ロールを選択」から以下のロールを追加:
      • Monitoring Viewer
      • Compute Viewer
      • Cloud SQL Viewer(必要に応じて)
  4. JSON キーの生成

    • 作成されたサービスアカウントを選択
    • 「キー」タブ→「キーを追加」→「新しいキーを作成」
    • 形式は「JSON」を選択してダウンロード

認証情報の管理 ​

ダウンロードした JSON ファイルには、以下の重要な情報が含まれています:

  • プロジェクト ID: GCP プロジェクトの識別子
  • クライアント Email: サービスアカウントのメールアドレス
  • 秘密鍵: 認証に使用される秘密鍵

Step 2: Compute Engine へのエージェントインストール ​

Google Cloud Console を使った方法(推奨) ​

  1. Compute Engine インスタンスにアクセス

    • Google Cloud Console で「Compute Engine」→「VM インスタンス」を選択
    • 監視対象のインスタンス名をクリック
  2. SSH 接続の開始

    • インスタンス詳細ページで「SSH」ボタンをクリック
    • ブラウザ内でターミナルが開きます
  3. エージェントのインストール

    • Linux ディストリビューションに応じて、以下のコマンドを実行:
bash
# Ubuntu/Debian 系の場合
curl -s https://download.newrelic.com/install/install.sh | bash

# CentOS/RHEL 系の場合
curl -Ls https://download.newrelic.com/install/install.sh | sudo bash

設定ファイルの編集 ​

インストール完了後、設定ファイルに New Relic ライセンスキーを記載します:

bash
sudo nano /etc/newrelic-infra.yml
# license_key: YOUR_LICENSE_KEY を追加

Step 3: New Relic での GCP 統合設定 ​

New Relic 管理画面での操作 ​

  1. 統合設定ページにアクセス

    • New Relic ダッシュボードにログイン
    • 「Infrastructure」→「GCP」を選択
    • 「Add a GCP project」をクリック
  2. GCP 認証情報の入力

    • ダウンロードした JSON ファイルの内容をアップロード
    • または、必要な情報を手動で入力:
      • プロジェクト ID
      • クライアント Email
      • 秘密鍵
  3. 監視対象サービスの選択

    • Compute Engine、Cloud SQL、Cloud Functions などから監視したいサービスを選択
    • データ取得間隔を設定(通常は5分間隔)

実践的な運用指針 ​

段階的な導入戦略 ​

GCP環境では多くのサービスが連携するため、すべてを一度に監視すると情報過多になります:

監視優先度の設定指針 ​

限られた予算で最大の効果を得るため、ビジネスへの影響度で優先順位を決めます:

優先度GCP サービス監視理由
高Compute Engine, Cloud SQLアプリケーションの基盤
中App Engine, Cloud Functionsユーザー体験への影響
低Cloud Storage, Cloud Pub/Sub間接的な影響

重要メトリクスの設定 ​

GCP 環境で特に注目すべきメトリクス:

  • Compute Engine: CPU使用率、メモリ使用率、ディスクI/O、ネットワークトラフィック
  • Cloud SQL: 接続数、クエリ実行時間、ディスク使用率
  • App Engine: インスタンス数、応答時間、エラー率

コスト最適化の考慮事項 ​

GCP 統合では、監視対象サービス数とデータ取得頻度によってコストが変動します:

データ取得頻度の調整 ​

  • 本番環境: 5分間隔(標準)
  • 開発環境: 15〜30分間隔
  • テスト環境: 必要に応じて無効化

プロジェクトベースのフィルタリング ​

本番プロジェクトのリソースのみに監視対象を限定することで、不要なAPI呼び出しを削減できます。

リージョン限定 ​

使用していないリージョンのリソースは監視対象から除外します。

よくあるトラブルと解決方法 ​

Q: メトリクスが表示されない ​

A: 以下を順番に確認してください:

  • サービスアカウントの権限設定が適切か
  • 対象のGCPプロジェクトが正しく選択されているか
  • Cloud Monitoring APIが有効になっているか

Q: 一部のサービスのデータが取得できない ​

A: GCPサービスによってはメトリクス生成に時間がかかります:

  • 使用されていないサービスはメトリクスが生成されません
  • 初回設定後、データ表示まで最大30分程度要する場合があります

Q: API制限エラーが発生する ​

A: 以下で対応できます:

  • データ取得間隔を延長する
  • 監視対象サービスを絞り込む
  • 複数のプロジェクトがある場合は段階的に追加する

Q: コストが予想より高くなる ​

A: 以下で最適化を行います:

  • 不要なメトリクスの無効化
  • データ取得頻度の調整
  • 開発・テスト環境の監視を必要最小限に限定

セキュリティのベストプラクティス ​

サービスアカウント権限の最小化 ​

必要最小限の権限のみを付与することで、セキュリティリスクを軽減します:

  • 読み取り専用権限(Viewer)を基本とする
  • 特定のサービスのみに権限を限定
  • 定期的な権限見直しを実施

キーの適切な管理 ​

  • JSON キーファイルは暗号化して保管
  • 定期的なキーローテーションの実施
  • 不要になったキーの削除

関連記事: AWS統合設定関連記事: Azure統合設定