著者
坪内 佑樹 古川 雅大 松本 亮介
雑誌
インターネットと運用技術シンポジウム論文集
巻号頁・発行日
vol.2019, pp.64-71, 2019-11-28

Web サービスの利用者による多様な要求に応えるために,Web サービスを構成する分散システムが複雑化している.その結果,システム管理者が分散システム内のプロセス間の依存関係を把握することが難しくなる.そのような状況では,システムを変更するときに,変更の影響範囲を特定できず,想定よりも大きな障害につながることがある.そこで,システム管理者にとって未知のプロセス間の依存関係を自動で追跡することが重要となる.先行手法は,ネットワーク接続を終端するホスト上で Linux のパケットフィルタを利用してトランスポート接続を検知することにより依存関係を発見する.しかし,Linux カーネル内のパケット処理に追加の処理を加えることになるため,アプリケーションの通信に追加の遅延を与えることになる.そこで,本論文では,サーバ用途で広く利用されている Linux を前提に,TCP/UDP 接続の終端点であるネットワークソケットに含まれる接続情報を監視することにより,未知のプロセス間の依存関係を網羅的に追跡可能なアーキテクチャを提案する.このアーキテクチャにより,プロセスが Linux カーネルの TCP/UDP 通信機構を利用する限り,未知のプロセスの依存を見逃さずに追跡できる.また,接続情報の監視処理は,ソケットがすでに保持する接続情報を読み取るだけとなり,アプリケーションの通信処理とは独立するため,アプリケーションの通信遅延に影響を与えない.最後に,先行手法との比較実験を行い,応答遅延オーバーヘッドとリソース負荷を評価した結果,応答遅延オーバーヘッドを 13-20%,リソース負荷を 43.5% 低減させていることを確認した.
著者
坪内 佑樹 鶴田 博文 古川 雅大
雑誌
インターネットと運用技術シンポジウム論文集
巻号頁・発行日
vol.2020, pp.9-16, 2020-11-26

Web サービスのソフトウェア規模は,長年の機能開発により日々増大しており,ソフトウェア開発者によるソフトウェアの変更が難しくなっている.そこで,変更を容易にするために,一枚岩のアプリケーションを分解して分散させるマイクロサービスアーキテクチャが普及している.しかし,マイクロサービス化によりシステムの構成要素数が増大するにつれて,システムの性能を示す時系列データ形式の指標であるメトリックの個数が増大する.そのため,システムの性能に異常が発生したときに,網羅的にメトリックを目視できず,システム管理者がその異常の原因を診断することが難しくなっている.先行手法では,複数の構成要素を横断したメトリック間の因果関係を推定することにより,システム内の異常の伝播経路を推論する.しかし,診断に利用できるメトリックの個数は限定されるため,より原因に近いメトリックが推論結果から除外される可能性がある.本論文では,性能異常の診断に有用なメトリックを網羅的に抽出するために,観測されたすべてのメトリックの次元数を削減する手法である TSifter を提案する.TSifter は,定常性を有するメトリックを除外したのちに,類似の形状をとるメトリックをクラスタリングすることにより,異常の特徴を強く表すメトリックのみを抽出する.本手法により,メトリック数が膨大であっても,その異常の診断に適した有用なメトリックを都度抽出できる.マイクロサービスのテストベッド環境に故障を注入する実験の結果,TSifter は,ベースラインとなる手法に対して,正確性と次元削減率の指標では同等程度の性能を有しながらも,270 倍以上高速に動作することを確認した.