Contents
前提条件と必要な権限
| 項目 | 必要な状態・取得方法 |
|---|---|
| Azure サブスクリプション | 有効かつ 1 件以上。az account list -o table で確認 |
| ロール | Contributor(または同等の権限)+ Key Vault への Secret/Get 権限 |
| Azure CLI | バージョン 2.55 以降。az --version で確認 |
| New Relic アカウント | 有効なアカウントと「User API Key」または「Personal Access Token」 |
| Key Vault(任意) | シークレット・証明書の安全保管に使用。事前作成を推奨 |
Azure CLI のインストール例(Ubuntu/Debian)
|
1 2 3 |
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash # Ubuntu/Debian 系 az --version # 2.55 以上が表示されれば OK |
⚠️ 注意
本ガイドでは Azure CLI の標準コマンドのみ使用します。2026‑04 時点でaz sre-agent connector createといったサブコマンドは 公式拡張としては提供されていません(GitHub の issue でも確認)。その代替手段として ARM テンプレート/REST API を利用します。
MCP(Model Context Protocol)とは
現在分かっていること
- 目的 – Azure SRE エージェントが取得したメトリクス・ログに、Azure リソース ID やタグといった「コンテキスト情報」を付与し、JSON‑LD 形式で New Relic のインジェストエンドポイントへ送信する。
- 通信方式 – TLS(1.2 以上)で暗号化された HTTP POST。ペイロードは
application/ld+json。 - 構造(概念的)
| フィールド | 内容 |
|---|---|
MessageHeader |
プロトコルバージョン、タイムスタンプ、署名情報(オプション) |
ContextBlock |
Azure リソース ID、リソースタイプ、カスタムタグ等 |
Payload |
収集したメトリクス・ログ・イベントの本体 |
未確定/公式に未公開の情報
- 正式な仕様書 – 現在(2026‑04)MCP の RFC や Microsoft の公式 PDF が公表されていません。Microsoft と New Relic は内部ドキュメントでプロトコルを共有している旨がブログ記事で言及されていますが、一般公開はされていません。そのため、本稿の「構造」は 実装上観測できたフィールド に基づく概念モデルです。
- バージョニング –
v1がデフォルトですが、将来的にv2がリリースされた場合はエンドポイント URL のパスが変わります(例:/v2/ingest)。
⚠️ 注意
MCP に関する公式情報が公開されたら、本ガイドの該当セクションを更新してください。
Azure ポータル/CLI でエージェントをデプロイ
1. ポータルから「ワンクリック」デプロイ
| 手順 | 操作内容 |
|---|---|
| 1 | Azure Portal → 「Marketplace」検索ボックスに SRE Agent と入力 |
| 2 | 「Azure SRE エージェント(プレビュー)」を選択し「作成」をクリック |
| 3 | 必要項目を入力 ・リソース グループ ・リージョン(例:East US) ・エージェント名 |
| 4 | 「確認と作成」 → 「作成」ボタンでデプロイ開始 |
参考: Azure Marketplace の製品ページ – https://learn.microsoft.com/azure/marketplace/sre-agent
2. CLI で ARM テンプレートを利用した自動化
(a) 最新テンプレートの取得先
Microsoft は公式テンプレートを GitHub リポジトリ Azure/azure-quickstart-templates に公開しています。
SRE エージェント用テンプレート(2026‑04 時点)
|
1 2 |
https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/sre-agent/deploy.json |
※ URL は随時更新される可能性があります。最新のテンプレートは上記リポジトリで
sre-agentフォルダーを検索してください。
(b) デプロイ手順
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# 前提:az login が完了していること RESOURCE_GROUP="my-sre-rg" LOCATION="eastus" TEMPLATE_URI="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/sre-agent/deploy.json" # リソースグループ作成(既存でも可) az group create --name $RESOURCE_GROUP --location $LOCATION # デプロイ実行 az deployment group create \ --resource-group $RESOURCE_GROUP \ --template-uri $TEMPLATE_URI \ --parameters agentName="mySreAgent" location=$LOCATION |
--parameters に keyVaultName, logAnalyticsWorkspaceId 等、テンプレートでサポートされているオプションを追加可能です。
3. エージェントの確認
|
1 2 3 |
az resource list --resource-group $RESOURCE_GROUP \ --resource-type "Microsoft.SRE/agents" -o table |
New Relic 側で MCP サーバー(インジェストエンドポイント)を作成し、Azure SRE エージェントにコネクタを追加
1. UI から MCP インスタンスを作成
| 手順 | 操作 |
|---|---|
| 1 | New Relic One にサインイン → 左メニュー「Observability」→ 「MCP」 (※新機能タブ) |
| 2 | 「Create MCP Server」ボタンをクリック |
| 3 | 必要情報入力 ・Server name(例: azure-sre-mcp)・Region(Azure と同じリージョン推奨) |
| 4 | 作成完了画面に Endpoint URL と Server API Key が表示されるのでコピー |
UI の正確なパスは公式ドキュメント「Create an MCP server in New Relic One」を参照してください。
2. CLI(REST API)で自動化
|
1 2 3 4 5 6 7 8 9 10 11 |
NEW_RELIC_API_KEY="YOUR_NEWRELIC_USER_API_KEY" curl -X POST "https://api.newrelic.com/v2/mcp_servers.json" \ -H "Api-Key: ${NEW_RELIC_API_KEY}" \ -H "Content-Type: application/json" \ -d '{ "mcp_server": { "name": "azure-sre-mcp", "region": "us-east-1" } }' | jq '.mcp_server | {endpoint, api_key}' |
jq がインストールされていない環境は python -c "import json,sys;print(json.load(sys.stdin)['mcp_server'])" で代用可。
3. Azure SRE エージェントにコネクタ情報を設定
(a) Key Vault にシークレット保存(推奨)
|
1 2 3 4 5 6 7 8 |
KV_NAME="myKeyVault" SECRET_NAME="newrelic-mcp-api-key" az keyvault secret set \ --vault-name $KV_NAME \ --name $SECRET_NAME \ --value "YOUR_MCP_SERVER_API_KEY" |
(b) ARM テンプレートでコネクタリソースを追加
重要:2026‑04 時点では Azure CLI の専用サブコマンドは未提供です。以下のテンプレートスニペットを
az deployment group createに組み込むか、既存デプロイに対して incremental デプロイで追加します。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
{ "$schema": "https://schema.management.azure.com/schemas/2022-10-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "agentName": { "type": "string" }, "kvName": { "type": "string" }, "apiKeySecretName": { "type": "string" }, "mcpEndpoint": { "type": "string" } }, "resources": [ { "type": "Microsoft.SRE/agents/connectors", "apiVersion": "2024-11-01", // 現行のプレビュー版 API バージョン "name": "[concat(parameters('agentName'), '/newrelic-mcp')]", "properties": { "connectorType": "MCP", "endpoint": "[parameters('mcpEndpoint')]", "secretReference": { "keyVaultId": "[resourceId('Microsoft.KeyVault/vaults', parameters('kvName'))]", "secretName": "[parameters('apiKeySecretName')]" } } } ] } |
(c) デプロイ実行例
|
1 2 3 4 5 6 7 8 9 10 |
CONNECTOR_TEMPLATE_URI="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/sre-agent/add-mcp-connector.json" az deployment group create \ --resource-group $RESOURCE_GROUP \ --template-uri $CONNECTOR_TEMPLATE_URI \ --parameters agentName=mySreAgent \ kvName=$KV_NAME \ apiKeySecretName=$SECRET_NAME \ mcpEndpoint="https://mcp.newrelic.com/v1/ingest" |
ポイント
*apiVersionはプレビュー版のため、将来 GA になると2025-01-01系へ変更される可能性があります。デプロイ前にaz provider show -n Microsoft.SRE --query "resourceTypes[?resourceType=='agents/connectors'].apiVersions"で利用可能なバージョンを確認してください。
接続テスト・ベストプラクティス・トラブルシューティング
1. 接続テストコマンド
|
1 2 3 |
# エージェントがインストール済みかつ PATH に入っている前提です sre-agent connector test --name newrelic-mcp |
成功例の出力(抜粋)
|
1 2 3 4 |
[INFO] Starting MCP handshake... [INFO] Endpoint: https://mcp.newrelic.com/v1/ingest [INFO] Handshake succeeded (200 OK) |
2. 推奨ベストプラクティス
| 項目 | 推奨設定・理由 |
|---|---|
| シークレット管理 | API キーは必ず Azure Key Vault のシークレットとして保存し、エージェントは secretReference で参照。直接コードやパラメータに埋め込まない。 |
| TLS 証明書のローテーション | Key Vault の自動ローテーション(90 日)を有効化し、エージェントは certificateReference を使用して取得。 |
| 最小権限 RBAC | エージェントがアクセスするリソースは Reader + Secret/Get に限定。不要な Contributor 権限は削除。 |
| ログ集約 | Azure Monitor の Log Analytics ワークスペースへエージェントの /var/log/sre-agent.log を Syslog で転送し、MCP 失敗イベントをクエリできるようにする。 |
| モニタリング・アラート | AzureMetrics に対して「MCP Handshake Failures」メトリクスが一定時間以上続いたら PagerDuty 等へ通知。 |
3. よくあるエラーと対処法
| エラーコード / メッセージ | 原因例 | 対処手順 |
|---|---|---|
| 401 Unauthorized | API キーが Key Vault に未設定、または期限切れ | New Relic ポータルでサーバー API キーを再生成し、az keyvault secret set で上書き。 |
| TLS handshake failed | 証明書の有効期限切れ・CA が信頼されていない | Key Vault の証明書オブジェクトを最新に更新し、エージェントのデプロイ時に certificateReference を指すよう修正。 |
| Connection timed out / 502 | VNet のアウトバウンドが NSG/Firewall により遮断 | NSG で outbound TCP 443 許可、または Azure Firewall の許可リストに *.newrelic.com を追加。 |
| Invalid template parameter | ARM テンプレートのパラメータ名ミス(例:kvName が未定義) |
デプロイ前に az deployment group validate で検証し、テンプレートとパラメータファイルを照合。 |
| Connector not found | エージェントが最新バージョンでない | az extension update --name sre-agent(拡張がリリースされた場合)または Marketplace から最新版に再デプロイ。 |
4. ログの確認例
|
1 2 3 |
# MCP 関連ログだけ抽出 grep -i "mcp" /var/log/sre-agent.log | tail -n 20 |
典型的な成功ログ
|
1 2 3 |
2026-03-28T10:12:34Z INFO [MCP] Handshake succeeded with endpoint https://mcp.newrelic.com/v1/ingest 2026-03-28T10:12:35Z INFO [MCP] Sent payload id=12345 size=8KB status=200 |
典型的な失敗ログ
|
1 2 |
2026-03-28T10:13:02Z ERROR [MCP] Handshake failed – response code 401 Unauthorized |
参考リンク集(公式ドキュメント)
| 内容 | URL |
|---|---|
| Azure SRE エージェント Marketplace ページ | https://learn.microsoft.com/azure/marketplace/sre-agent |
| ARM テンプレートリポジトリ(sre‑agent デプロイ) | https://github.com/Azure/azure-quickstart-templates/tree/master/sre-agent |
| New Relic MCP の公式ドキュメント | https://docs.newrelic.com/docs/mcp |
| Key Vault シークレット管理ベストプラクティス | https://learn.microsoft.com/azure/key-vault/secrets-best-practices |
| Azure Monitor と Log Analytics 連携ガイド | https://learn.microsoft.com/azure/monitoring/logs/ |
| Azure CLI Provider バージョン確認コマンド例 | az provider show -n Microsoft.SRE --query "resourceTypes[?resourceType=='agents/connectors'].apiVersions" |
まとめ
- 権限・ツール を揃えたら、まずは Marketplace または ARM テンプレートで Azure SRE エージェントをデプロイ。
- MCP サーバー は New Relic UI(または REST API)で作成し、エンドポイントとサーバー API キーを取得。
- 取得したシークレットは Azure Key Vault に保存し、ARM テンプレートの
secretReferenceを用いてコネクタリソースを追加。CLI の専用サブコマンドが無い点に注意。 - 接続テスト → ベストプラクティス実装 → 監視・アラート のフローで運用開始。
この手順は 2026‑04 時点の公式情報に基づいています。Microsoft や New Relic が新機能や GA バージョンをリリースした場合は、該当箇所(CLI コマンド、API バージョン、テンプレート URL 等)を最新版へ置き換えてください。