結論:AdGuard HomeとOpenTelemetry Collectorの隔離した障害検証を両方行うなら、先にDNSから始めます。DNSは専用bridge内の問い合わせで正常・ブロック・上流断を比べられます。一方、telemetryは送信側、receiver、pipeline、exporterに観測地点が分かれます。まずDNSで同じ問い合わせから状態差を読む基準を作り、次にCollectorで失敗の層を分けると、切り分けを混ぜにくくなります。これは二つの既存検証記録を比較した着手判断であり、新たな実機再現の結果ではありません。
| 比較項目 | DNS(AdGuard Home) | telemetry(Collector) |
|---|---|---|
| 最初の構成 | 専用bridge上のDNSコンテナと問い合わせ | Collector、送信データ、receiver、pipeline、出力先 |
| 最初の正常基準 | 「status: NOERROR だけでなく、ANSWERが2件あることと、SERVERがAdGuard Homeを指すことを一組で確認します。」 | 「HTTPの200・debugの出力・ファイルの中身の3点で確認できました。」 |
| 主な失敗の現れ方 | ブロック時もNOERRORのままANSWERが0.0.0.0へ変わる。上流断ではtimeoutとなり、digの終了コードは9だった。 | ポート不一致はhttp_code=000とcurl終了コード7が送信側に出る。到達不能exporterでは受信がhttp_code=200でもCollector側にconnection refusedが出る。 |
| 着手時の複雑さ | 低い。観測点が問い合わせ側に集まる。 | 高い。送信、起動設定、exporter宛先で失敗位置を分ける必要がある。 |
目次
着手順序チェックリスト
- 本番のDNS設定、既存サービス、既存データへ接続しない使い捨てDocker環境を用意する。
- DNSの記録を基準に、NOERROR・ANSWER・SERVERを一組で確認し、ブロック時の0.0.0.0と上流断時のtimeoutを区別する。
- DNS側の各状態を読めるようになってから、Collectorを単体で起動する。
- Collectorの記録のように、まずHTTP 200、debug出力、ファイル出力の三点がそろう送信を1本通す。
- 送信先、pipeline、exporterの順に失敗を分け、どの層にエラーが出るかを残す。
- Collectorは壊す前と同じ三点で正常設定への復帰を確認する。DNS側は上流を戻した後の正常なdig出力が既存記録に残っていないため、復旧を判断するには同じ問い合わせで新しい正常出力を保存する。
二つの検証は直接依存しません。DNSの正常・失敗時の観測基準が既にあり、Collectorだけが未検証ならtelemetryから始めても構いません。その場合も、可視化基盤を足す前にCollector単体の成功基準を作ります。関連する検証の位置づけは、ラボ監視まとめから確認できます。
FAQ
DNS検証とtelemetry検証に依存関係はありますか?
ありません。Collectorの隔離検証はループバック公開の単体構成で行われています。両方を未着手なら、観測点が少ないDNSから始める判断です。
telemetryから始めるべきなのはどんな場合ですか?
DNSの隔離検証と、正常・失敗時の観測基準がすでに用意され、Collectorの送受信経路だけが未確認のときです。
本番環境で順番を試してもよいですか?
いいえ。本番サービスや既存データへ接続しない隔離環境で基準を作ってから判断します。
検証に使っているラボ環境
当ブログの検証記事は、自宅の常設ラボ(使い捨てVM/LXCを回す母艦+GPU+VLAN分離ネットワーク)を使って書いています。この記事で実測した範囲と、机上整理や未計測の範囲は本文に記しています。使っている機材と選定理由、全体構成は1本にまとめています。
ラボ構成のまとめを見る →