Contrail イントロスペクト機能を使用したプロセスのデバッグ
このトピックでは、Sandesh インフラストラクチャと Contrail Introspect 機能を使用してプロセスをデバッグする方法について説明します。
Introspect は、プログラム・オブジェクトを取得し、それに関する情報を照会するためのメカニズムです。
Sandesh は、Contrail Virtual Networkingソリューションにおける統合インフラストラクチャの名前です。
Sandesh は、Contrail デーモンがリクエスト - レスポンス メカニズムを提供する方法です。要求と応答は Sandesh 形式で定義され、Sandesh コンパイラーは要求を処理して応答を送信するコードを生成します。
また、ウェブブラウザを使用して Sandesh リクエストを Contrail デーモンに送信し、Sandesh の応答を取得する方法も用意されています。この機能は、デーモンの操作状況を調べてプロセスをデバッグするために使用されます。
各 Contrail デーモンは、以下のページタイプで HTTP サーバーを起動します。
すべての Sandesh モジュールとそれらへのリンクをリストしたメインの index.html。
サンデシュ リクエストごとに HTML フォームを表示する Sandesh モジュールページ。
Sandesh の応答を表示する XML ベースの動的に生成されたページ。
レンダリングに必要なすべてのコードとすべての HTTP サーバーとクライアントの対話を示す自動生成されたページ。
次のイントロスペクトポートにアクセスすると、Contrail デーモンの HTTP イントロスペクトを直接表示できます。
<controller-ip>:8083.このポートは、 Contrail-Control イントロスペクト ポートを表示します。
<compute-ip>:8085 このポートは、 contrail-vrouter-agent のイントロスペクト ポートを表示します。
<controller-ip>:8087 このポートは、 Contrail-schema イントロスペクト ポートを表示します。
<controller-ip>:8088 このポートは、 contrail-svc-monitor イントロスペクト ポートを表示します。
<controller-ip>:8092 このポートは、 contrail-dns イントロスペクト ポートを表示します。
<controller-ip>:8084 このポートは、 contrail-api イントロスペクト ポートを表示します。(:8084/Snh_SandeshTraceRequest?x=RestApiTraceBuf)
構成エディターを使用して、構成されたオブジェクトを確認できます。
Introspectページを起動する別の方法は、Contrail Webユーザーインターフェイスを使用して特定のノードページを参照することです。
図 1 に、Contrail Control インフラストラクチャのページを示します。[制御ノードの詳細]タブウィンドウの下部にある[Introspect]リンクに注目してください。
以下は、Contrail 制御プロセス(Contrail 制御)Introspect ポート用の Sandesh モジュールです。
bgp_peer.xml
control_node.xml
cpuinfo.xml
discovery_client_stats.xml
ifmap_log.xml
ifmap_server_show.xml
rtarget_group.xml
sandesh_trace.xml
sandesh_uve.xml
service_chaining.xml
static_route.xml
task.xml
xmpp_server.xml
図 2 は、「コントローラーのイントロスペクト」ウィンドウを示しています。
図3 は、BGPピア(bgp_peer.xml)イントロスペクトページの例を示しています。
図 4 に、[BGP ネイバーの概要] イントロスペクト ページの例を示します。
以下は、Contrail vRouter エージェント(contrail-vrouter-agent)Introspect ポート用の Sandesh モジュールです。
agent.xml
agent_stats_interval.xml
cfg.xml
controller.xml
cpuinfo.xml
diag.xml
discovery_client_stats.xml
flow_stats_interval.xml
ifmap_agent.xml
kstate.xml
マルチキャスト.xml
pkt.xml
port_ipc.xml
sandesh_trace.xml
sandesh_uve.xml
services.xml
stats_interval.xml
task.xml
xmpp_server.xml
図 5 は、エージェント (agent.xml) イントロスペクト・ページの例を示しています。