メモリとCPU使用量と応答時間に基づくKubernetes上のPod数の決定

Kubernetes(K8s) は,ReplicaSet でPod 数を設定することができる.WordPress Pod は,ユーザから送られてくるリクエストを処理する際にCPU とメモリを使用する.リクエスト数に対してPod 数が少ないとリクエストからレスポンスまでの応答時間が増加する.リクエスト数に対してPod 数が多いとメモリの使用量が増加し,ノードのメモリの使用可能の上限に近くなると,ノードのメモリ不足によるOut ofMemory Killer が発生する.本提案では,多目的最適化アルゴリズムNSGA-Ⅱを用いてPod 数を求める.NSGA-Ⅱを使うため目的関数を作成した.基礎実験では,Pod 数とリクエスト数からCPU とメモリの使用量・応答時間を計測し,最小二乗法を用いて重回帰式を求め回帰分析を行った.回帰分析の結果,Pod数とリクエスト数からCPU とメモリの使用量を求める重回帰式の決定係数が0.975,0.997 となった.このことからCPU とメモリの使用量を求める重回帰式とデータの当てはまり度合いが高い.CPU の使用量を求める際に,t 検定より毎秒リクエスト数からCPU の使用量を求めることができる.評価実験では,負荷をかけてPod 数別でCPU とメモリの使用量を計測し,提案で算出したPod 数がほかのPod 数のCPUとメモリの使用量を比較し評価する.本研究の提案によりPod 数を決定することで応答時間の増加を抑制する. ...