Sock ShopにおけるCPU使用量の変化にもとづくスパイクアクセス時の原因特定

ソフトウェア開発のアーキテクチャの一種で,大規模なアプリケーションを小さな独立したサービスに分割する手法としてマイクロサービスというものがある.マイクロサービスで構成されているEC サイトでスパイクアクセスが発生した場合,冗長なエラーメッセージを受信することで管理者はエラーメッセージを無視や誤解をしてしまい,障害復旧に時間がかかり遅れが発生することが今回の課題である.本稿の提出手法では,マイクロサービスで構築するアプリケーションにおいて管理者の対応が遅れないようにするために各サービスのPod のCPU 使用量の変化でエラーの原因を特定する.特定の基準としてCPU使用量が最新のCPU 使用量の平均値が直前のCPU 使用量の平均値より減少したかで判断する.基礎実験ではマイクロサービスで構成されているデモアプリケーションのSock Shop を対象とし,アクセスするユーザ数によって各サービスのPod の平均CPU 使用量に変化があるか実験を行った.その結果,ユーザ数が増加するとCPU 使用量が減少した.基礎実験によって,提案手法が有効であることが確認できた.評価実験では,1 秒に1 人ユーザを増加させて毎秒の最大ユーザ数を600 で10 分間負荷試験を行い,cartsのPod がエラーの原因として特定され,原因として特定されたcarts のPod のCPU リソースをスケールアップして再度,負荷試験を行った.結果は,エラーが出なくなったため提案により原因の特定ができた. ...