JP7420252B2 - スケーリング実行装置、スケーリング実行方法及びプログラム - Google Patents

スケーリング実行装置、スケーリング実行方法及びプログラム Download PDF

Info

Publication number
JP7420252B2
JP7420252B2 JP2022534880A JP2022534880A JP7420252B2 JP 7420252 B2 JP7420252 B2 JP 7420252B2 JP 2022534880 A JP2022534880 A JP 2022534880A JP 2022534880 A JP2022534880 A JP 2022534880A JP 7420252 B2 JP7420252 B2 JP 7420252B2
Authority
JP
Japan
Prior art keywords
value
container
apl
containers
metrics
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022534880A
Other languages
English (en)
Other versions
JPWO2022009432A1 (ja
Inventor
健太 篠原
紀貴 堀米
真生 上野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022009432A1 publication Critical patent/JPWO2022009432A1/ja
Application granted granted Critical
Publication of JP7420252B2 publication Critical patent/JP7420252B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、CPU(Central Processing Unit)によるアプリケーションの実行環境をパッケージ化したコンテナを、コンテナが実行される計算資源上に効率的に配置するスケーリング実行装置、スケーリング実行方法及びプログラムに関する。
アプリケーション(APL)をコンテナ単位で後述の計算資源上にデプロイ(配置)したAPLコンテナが存在する。このAPLコンテナを計算資源上に必要に応じて増設又は減設するスケーリングを行うアプリケーションの管理システムがある(非特許文献1)。
計算資源は、これに配置されたAPLコンテナを実行する物理サーバや仮想マシン(VM:Virtual Machine)又はプロジェクト(Project)等による計算環境であり、1又は複数のAPLコンテナを一括りの単位に纏めたものである。このAPLコンテナは、計算資源として稼働する(非特許文献2)。
計算資源としてのAPLコンテナ毎に、サーバ等のCPUの使用量と、APLコンテナが計算可能な処理量であるスループットとによるメトリクスを用いて、スケーリングを実行する機能が存在する(非特許文献3)。
図8に、サーバ10に構成される計算資源11上にAPLコンテナ12が1つ配置された場合の構成を示す。つまり、計算資源11としての1つのAPLコンテナ12は、サーバメトリクス13としてのCPUを20%使用して実現されている。また、APLコンテナ12に係るAPLコンテナメトリクス14(各図において、「コンテナメトリクス14」と記載)は、CPUの使用量が20%、スループットが1000である。この場合のサーバ上の合計スループットは1000となる。なお、CPUの使用量は、使用率(例えば20%)で表す。
このようなAPLコンテナメトリクス14において、CPUが20%程度になった際にAPLコンテナを増設するスケーリング機能により、APLコンテナを増やすことができる。この増設により計算資源11のスループットを向上できる。
このような増設により、例えば図9に示すように、計算資源11上に、第1APLコンテナ12a、第2APLコンテナ12b及び第3APLコンテナ12cを配置したとする。この3つのAPLコンテナ12a~12cの全ては、サーバメトリクス13としてのCPUを60%使用して実現される。また、各APLコンテナ12a~12cに係る第1APLコンテナメトリクス14a、第2APLコンテナメトリクス14b及び第3APLコンテナメトリクス14cは、CPUの使用量が=20%、スループット=900である。この際、サーバ10上の合計スループットは900×3=2700となる。
kubernetes,[online],[令和2年7月3日検索],インターネット〈URL: https://kubernetes.io/〉 Red Hat Resource quotas per project,[online],2020,[令和2年7月3日検索],インターネット〈URL: https://docs.openshift.com/container-platform/4.1/applications/quotas/quotas-setting-per-project.html〉 kubernetes Horizontal Pod Autoscaler,[online],June 19,2020,[令和2年7月3日検索],インターネット〈URL: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/〉
ところで、図10に示すように、計算資源11に第1~第6APLコンテナ12a~12fを配置し、この6つのAPLコンテナ12a~12fを稼働させることで、計算資源11において最大の合計スループット=4200を得るスケーリングが可能となるとする。このようなスケーリングを実行する構成を、従来のスケーリングポリシで実現するためには、後述する事前の設計、チューニング及び検証が人手により必要であるため、柔軟性に欠け、容易に実現できないという課題があった。
図10の例では、第1~第6APLコンテナ12a~12fの第1~第6APLコンテナメトリクス14a~14fが各々11.7%程度の最適値になる様にスケーリングを実施すればよい。しかし、その最適値はAPLコンテナ12a~12fの特性だけでなく、計算資源11のリソース上限にも依存するため、容易に実現でない事前設計が必要となる。
また、計算資源11上にAPLコンテナを多く配置しすぎると、パフォーマンスが一切向上せず、又は、パフォーマンスが低下する可能性がある。このため、最適な数のAPLコンテナを配置することが必要となるが、従来のスケーリング実行方法によるチューニングでは、次のように、それを容易に実現できない。
図10に示す計算資源11としての6つのAPLコンテナ12a~12fを、例えば1つ増やして7つのAPLコンテナにしたとする。6つでは、1つのAPLコンテナのスループット=700であり、合計スループットが、6×700=4200である。
しかし、7つでは、各APLコンテナのスループットが700よりも低い例えば500となってしまう。この理由は、計算資源11上で各APLコンテナがCPUを使って同時に動くので待ち合わせ等が発生し、各APLコンテナのスループットが下がってしまうためである。このように、APLコンテナを所定以上の7つに増やすと、全APLコンテナの合計スループット(7×500=3500)が、増設前(4200)よりも下がってしまう現象が生じる。このため、容易にチューニングができず、検証も容易にできなくなる。
本発明は、このような事情に鑑みてなされたものであり、サーバ等のCPUに係る計算資源上にAPLコンテナを容易にスケーリングすることを課題とする。
上記課題を解決するため、本発明のスケーリング実行装置は、CPU(Central Processing Unit)によるアプリケーションの実行環境をパッケージ化したコンテナが配置され、当該コンテナによる計算処理が実行される計算資源から、当該コンテナに係るスループット以外のCPU使用量を含むメトリクス値と、当該コンテナのスループットであるパフォーマンス値とを取得する取得部と、前記取得部により前記コンテナのメトリクス値とパフォーマンス値とが関連付けられて記録される記録部と、前記記録部に記録されたコンテナのパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、前記計算資源に配置されたコンテナのメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にコンテナを増設する判定実行部と、を備え、前記記録部に、前記計算資源に複数のコンテナが配置されている際の各コンテナに係る前記メトリクス値を累積した計算資源メトリクス値と、前記パフォーマンス値を累積した合計パフォーマンス値とが関連付けられて記録されていると共に、前記関連付けによる特性カーブの情報が記録されている場合に、前記判定実行部は、前記記録部に記録された全数hより少ない数gのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるg特性点から、全数hのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるh特性点までの合計パフォーマンス値の増加量に、予め定められた所定値を掛けた値を期待増加量と定め、期待増加量に、前回の閾値決定処理で得られた前回閾値を足し合わせた値を新規閾値と定め、前記判定実行部は、前記計算資源上の全数hのコンテナの合計パフォーマンス値が、前記新規閾値を超えた際にコンテナを増設することを特徴とする。
本発明によれば、サーバ等のCPUに係る計算資源上にAPLコンテナを容易にスケーリングできる。
本発明の実施形態に係るスケーリング実行装置の構成を示すブロック図である。 1APLコンテナに係るAPLコンテナメトリクス値とパフォーマンス値との関係を示すグラフである。 複数のAPLコンテナに係る計算資源メトリクス値と合計パフォーマンス値との関係を示すグラフである。 図3に示す破線枠Fc内の特性点c2,c3間の特性カーブk2の傾きmを示す図である。 スケーリング実行装置を実現するコンピュータの構成を示すブロック図である。 計算資源に1つのAPLコンテナが配置されている場合のスケーリング実行装置の処理を説明するためのフローチャートである。 計算資源に2つ以上のAPLコンテナが配置されている場合のスケーリング実行装置の処理を説明するためのフローチャートである。 サーバに構成される計算資源上にAPLコンテナが1つ配置された場合の構成を示す図である。 サーバに構成される計算資源上にAPLコンテナが3つ配置された場合の構成を示す図である。 サーバに構成される計算資源上にAPLコンテナが6つ配置された場合の構成を示す図である。
以下、本発明の実施形態を、図面を参照して説明する。但し、本明細書の全図において機能が対応する構成部分には同一符号を付し、その説明を適宜省略する。
<実施形態の構成>
図1は、本発明の実施形態に係るスケーリング実行装置の構成を示すブロック図である。
図1に示すスケーリング実行装置(実行装置ともいう)20は、サーバ等のCPUによる計算資源上にAPLコンテナを増設又は減設するスケーリングを行うものである。実行装置20は、図8~図10に示すサーバ10内に配置されている。この他、実行装置20は、サーバ10に通信接続されていてもよい。
実行装置20は、例えば図8に示す計算資源11上のAPLコンテナ12を、図9に示すように3つのAPLコンテナ12a~12cに増設し、又は、図9の3つのAPLコンテナ12a~12fを図8に示す1つのAPLコンテナ12に減設するスケーリングを行う。なお、APLコンテナ12は、請求項記載のコンテナを構成する。
この実行装置20は、コンテナメトリクス取得部21と、計算資源メトリクス取得部22と、スケーリング判定実行部(判定実行部ともいう)23と、コンテナ特性記録部(記憶部ともいう)24とを備えて構成されている。コンテナメトリクス取得部21及び計算資源メトリクス取得部22は、請求項記載の取得部を構成する。
計算資源メトリクス取得部22は、計算資源11上に配置されたAPLコンテナに応じて、計算資源11となるサーバ10のCPUに係るサーバメトリクス13を取得する。例えば、図8に示すように、計算資源11上に1つのAPLコンテナ12が配置された場合、このAPLコンテナ12のCPU使用量(20%)に係るサーバ10のCPUの使用量(20%)を取得する。
コンテナメトリクス取得部21は、計算資源11(図8参照)のAPLコンテナ12からAPLコンテナメトリクス14を取得する。APLコンテナメトリクス14は、CPUの使用量(20%)及びメモリ使用量、並びにAPLが計算可能なスループット(1000)を含むものである。
更に説明すると、コンテナメトリクス取得部21は、常時作動しており、あるタイミングで、図1に示す1つのAPLコンテナ12に係るCPU使用量等のAPLコンテナメトリクス値(図2の横軸)と、縦軸に示すAPLコンテナ12のスループットであるパフォーマンス値(図2の縦軸)とを取得する。但し、図2に示すAPLコンテナメトリクス値は、APLコンテナ12に係るCPU使用量等であり、スループットを含まないものとする。
図2はAPLコンテナのAPLコンテナメトリクス値とパフォーマンス値との関係によるAPLコンテナ特性カーブk1(特性カーブk1)を示す。この特性カーブk1によれば、APLコンテナメトリクスが12%の時に、パフォーマンス値が700であり、20%の時に1000である。コンテナメトリクス取得部21で取得されたAPLコンテナ12のAPLコンテナメトリクス値とパフォーマンス値とは、関連付けられて記録部24に記録される。
更に、コンテナメトリクス取得部21は、例えば図10に示す計算資源11上の各APLコンテナ12a~12fに係るCPU使用量等のAPLコンテナメトリクス値を累積した計算資源メトリクス値(図3の横軸)と、各APLコンテナ12a~12cのスループットを累積した合計パフォーマンス値(図3の縦軸)とを取得する。但し、図3に示す横軸の計算資源メトリクス値は、計算資源11のAPLコンテナ12に係るCPU使用量等であり、スループットを含まないものとする。また、図10に示す各APLコンテナ12a~12fは同じAPLコンテナであっても、異なるAPLコンテナであってもよい。
図3には、計算資源11の全てのAPLコンテナ12a~12fによる計算資源メトリクス値(メトリクス値)と合計パフォーマンス値との関係による計算資源特性カーブk2(特性カーブk2)を示す。
その特性カーブk2には、各APLコンテナ12a~12fの累積されるメトリクス値と、累積される合計パフォーマンス値との交点である特性点をc1,c2,c3,c4,c5,c6で示す。c1は第1APLコンテナ12aの特性点、c2は特性点c1に累積される第2APLコンテナ12bの特性点、c3は特性点c2に累積される第3APLコンテナ12cの特性点である。c4は特性点c3に累積される第4APLコンテナ12dの特性点、c5は特性点c4に累積される第5APLコンテナ12eの特性点、c6は特性点c5に累積される第6APLコンテナ12fの特性点である。
例えば、計算資源11に1つのAPLコンテナ12aが配置されている場合、メトリクス値が最高値の20%の時に、合計パフォーマンス値が1000となる。また、6つ全てのAPLコンテナ12a~12cが配置されている場合は、メトリクス値が最高値の70%の時に合計パフォーマンス値が4200となる。このような、コンテナメトリクス取得部21で取得された複数のAPLコンテナ12a~12cのAPLコンテナメトリクス値と合計パフォーマンス値とは、関連付けられて記録部24に記録される。
図3に示す特性カーブk2は、計算資源11においてAPLコンテナ12a~12fが増える程に合計パフォーマンス値が増加するものの、この増加に伴い合計パフォーマンス値の増加率が小さくなり、メトリクス値に対する傾斜角度が緩くなっている。言い換えれば、特性カーブk2は、計算資源11にAPLコンテナ12a~12fを多く配置しすぎると、合計パフォーマンス値がAPLコンテナを増加した割には向上しなくなることを表す。
コンテナ特性記録部24は、APLコンテナ単位でAPLコンテナメトリクス値とパフォーマンス値とを関連付けて記録する。また、記録部24は、計算資源11の全APLコンテナ12a~12f(図10参照)を合計したAPLコンテナメトリクス値と、全APLコンテナ12a~12fの合計パフォーマンス値とを関連付けて記録する。
スケーリング判定実行部(判定実行部ともいう)23は、後述のようにパフォーマンス閾値(閾値ともいう)を定め、図3に示す合計パフォーマンス値が閾値を超えた際に、計算資源11(図10参照)へのAPLコンテナ12の増設を実行する。この増設は、計算資源11に配置されたAPLコンテナ12の合計パフォーマンス値が限界値(最大値)を超えると処理できなくなるので、閾値を超えた際に、APLコンテナ12の増設を実行するものである。また、判定実行部23は、合計パフォーマンス値が閾値以下となった際にAPLコンテナ12の減設を実行する。
例えば、図10に示す計算資源11に1つの第1APLコンテナ12aのみが配置されているとする。この場合、判定実行部23は、図3に示すAPLコンテナ12aの特性点c1に係る合計パフォーマンス値の最大値=1000、又は、その最大値=1000を1倍未満の所定倍数とした値(例えば0.9倍の値である900)をパフォーマンス閾値と定める。そして、判定実行部23は、合計パフォーマンス値の最大値が閾値を超えた際に、APLコンテナ12bの増設を実行する。
また、判定実行部23は、初期時における合計パフォーマンス値の最大値の取得方法として、APLコンテナ12の稼働開始から、本来の最大値とならない一定期間内の最大値を使用してパフォーマンス閾値を定め、スケーリングを実行してもよい。この他、図3に示すように、計算資源メトリクス値の増分に対する合計パフォーマンス値の増分が減少する傾向を利用してスケーリングを行ってもよい。
次に、図10に示す計算資源11に、2つ以上のAPLコンテナ12a~12fが配置されている場合の判定実行部23の処理について説明する。
判定実行部23は、コンテナ特性記録部24に記録されている全数hより少ない数gのAPLコンテナ12に対応する図3に示す特性点c2の合計パフォーマンス値から、全数hのAPLコンテナ12に対応する特性点c3の合計パフォーマンス値までの増加量に予め定められた所定値(例えば、固定値の0.6)を掛けた値を、期待する合計パフォーマンス値の増加量(期待増加量)と定める。次に、判定実行部23は、その期待増加量に、前回求めたパフォーマンス閾値(前回閾値)を足し合わせた値を、新規のパフォーマンス閾値(新規閾値)と定め、この新規閾値を合計パフォーマンス値が超えた際に、特性点c4に係るAPLコンテナ12の増設を実行する。但し、全数hより少ない数gは、全数hが3つ以上あれば、1つに限らず2つ以上でもよい。なお、特性点c2は、請求項記載のg特性点に対応する。特性点c3は、請求項記載のh特性点に対応する。
但し、上記の前回閾値は、特性点c1の合計パフォーマンス値から特性点c2の合計パフォーマンス値までの増加量を用いて、上記新規閾値と同様に求めた閾値である。
次に、新規閾値を合計パフォーマンス値が超えた際にAPLコンテナ増設を行う具体例について説明する。
具体例として、図10に示す計算資源11上に第1~第3APLコンテナ12a~12cが3つ配置された状態を想定する。まず、判定実行部23によって、直近の合計パフォーマンス値の増加量が分かる。例えば、図3に示すように、特性点c2に係る2つのAPLコンテナ12a,12bから、特性点c3に係る3つ目のAPLコンテナ12cを増加した際の合計パフォーマンス値の増加量が分かる。
次に、判定実行部23は、その増加量に所定値(例えば0.6)を掛けて求めた期待増加量に、前回の2つ目のAPLコンテナ12bから3つ目のAPLコンテナ12cを増加した際に求めた前回閾値を足し合わせて新規閾値を求める。判定実行部23は、その新規閾値を、第3APLコンテナ12cの合計パフォーマンス値が超えたと判定した際に、特性点c4に係る第4APLコンテナ12dを増加する。
この判定実行部23によるAPLコンテナ12の増設により、次のような処理が可能となる。但し、APLコンテナ12単位のCPU使用量等のメトリクス値(計算資源メトリクス値)が、例えば図10に示す11.7%であることが増設に最適な条件であるとする。
上述した判定実行部23の処理によれば、上記の最適な条件をシステム管理者が知らなくても、判定実行部23が、最適な台数のAPLコンテナ12となるまで、自動的に1つずつAPLコンテナ12を増設するスケールアウトが可能となる。
但し、上述した所定値は、固定値でもよいし、APLコンテナ数が増えるに従い減少する値でもよい。例えば、図3に特性カーブk2で示すように、APLコンテナ数が増える程に、合計パフォーマンス値の増加量が減少してゆくので、この徐々に減少する過程を踏まえて、所定値を例えば0.6と定めてもよい。
また、所定値は、APLコンテナ増加前(前回)の増加量だけでなく、前々回の増加量を更に用いて定めてもよい。例えば、特性点c3から特性点c4に上げる新規閾値として、前回の特性点c2から特性点c3に上げる時の増加量だけでなく、前々回の特性点c1から特性点c2に上げる時の増加量も加味して新規閾値を定める。即ち、増加量は前々回から前回、今回と、APLコンテナ数が増加するに従い小さくなって行くので、この変動傾向を用いて所定値を定めてもよい。
更に、所定値は、図4に一例を示す傾きmを用いて定めてもよい。図4は、図3に示す破線枠Fc内の特性点c2,c3間の特性カーブk2の傾きmを示す図である。図4に示すように、特性点c2,c3間における計算資源メトリクス値の増加量Δxに対する合計パフォーマンス値の増加量Δyの比率が、特性カーブk2の傾きmとなる。この傾きmをパラメータとして用いて、所定値を定めてもよい。
例えば、図3に示す0から特性点c1までの特性カーブk2が最も急峻となる時の傾きmを「1」とした際に、これよりも緩くなる特性点c2から特性点c3までの傾きmの「0.6」を、所定値と定めてもよい。
この他、判定実行部23は、上述したようにパフォーマンス閾値が一度でも決定された場合、この決定以降のスケーリング判定において、その決定済みの閾値を用いてAPLコンテナ12の増設又は減設を行ってもよい。又は、増設又は減設の都度、閾値を決定してもよい。
<ハードウェア構成>
上述した実施形態に係るスケーリング実行装置20は、例えば図5に示すような構成のコンピュータ100によって実現される。図5に示すコンピュータ100は、CPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、HDD(Hard Disk Drive)104、入出力I/F(Inter Face)105、通信I/F(Inter Face)106、及びメディアI/F107を有する。
CPU101は、ROM102又はHDD104に記憶されたプログラムに基づき作動し、各機能部の制御を行う。ROM102は、コンピュータ100の起動時にCPU101により実行されるブートプログラムや、コンピュータ100のハードウェアに係るプログラム等を記憶する。
CPU101は、入出力I/F105を介して、プリンタやディスプレイ等の出力装置111及び、マウスやキーボード等の入力装置110を制御する。CPU101は、入出力I/F105を介して、入力装置110からデータを取得し、又は、生成したデータを出力装置111へ出力する。
HDD104は、CPU101により実行されるプログラム及び当該プログラムによって使用されるデータ等を記憶する。通信I/F106は、通信網112を介して図示せぬ他の装置からデータを受信してCPU101へ出力し、また、CPU101が生成したデータを、通信網112を介して他の装置へ送信する。
メディアI/F107は、記録媒体113に格納されたプログラム又はデータを読み取り、RAM103を介してCPU101へ出力する。CPU101は、目的の処理に係るプログラムを、メディアI/F107を介して記録媒体113からRAM103上にロードし、ロードしたプログラムを実行する。記録媒体113は、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto Optical disk)等の光磁気記録媒体、磁気記録媒体、導体メモリテープ媒体又は半導体メモリ等である。
例えば、コンピュータ100が実施形態に係るスケーリング実行装置20として機能する場合、コンピュータ100のCPU101は、RAM103上にロードされたプログラムを実行することにより、スケーリング実行装置20の機能を実現する。また、HDD104には、RAM103内のデータが記憶される。CPU101は、目的の処理に係るプログラムを記録媒体113から読み取って実行する。この他、CPU101は、他の装置から通信網112を介して目的の処理に係るプログラムを読み込んでもよい。
<実施形態の動作>
次に、本実施形態に係るスケーリング実行装置20によるAPLコンテナ増設の動作を説明する。
最初に、図8に示すように、計算資源11に、1つのAPLコンテナ12が配置されている場合の判定実行部23の処理について、図6のフローチャートを参照して説明する。
図6に示すステップS1において、図8に示す計算資源11として1つのAPLコンテナ12が配置されたとする。
ステップS2において、計算資源メトリクス取得部22は、計算資源11上に配置されたAPLコンテナ12から、計算資源11となるサーバ10のCPUの使用量(20%)に係るサーバメトリクス13を取得する。
ステップS3において、コンテナメトリクス取得部21は、計算資源11の1つのAPLコンテナ12に係る図2に横軸で示すCPU使用量等のAPLコンテナメトリクス値と、図2に縦軸で示すAPLコンテナ12のスループットであるパフォーマンス値とを取得する。
ステップS4において、コンテナメトリクス取得部21は、上記ステップS3で取得したAPLコンテナ12単位のAPLコンテナメトリクス値とパフォーマンス値とを関連付けて、記録部24に記録する。
ステップS5において、スケーリング判定実行部23は、図2に示すAPLコンテナ12のパフォーマンス値の最大値=1000の所定倍数の値(例えば0.9倍の値である900)をパフォーマンス閾値と定める。
ステップS6において、判定実行部23は、APLコンテナ12の合計パフォーマンス値の最大値が、閾値を超えたか否かを判断する。この判断の結果、超えた際に、ステップS7において、判定実行部23は、APLコンテナ12の増設を実行する。
次に、図10に示すように、計算資源11に、2つ以上のAPLコンテナ12a~12fが配置されている場合の判定実行部23の処理について、図7に示すフローチャートを参照して説明する。
但し、図10に示す計算資源11において第1~第3APLコンテナ12a~12cが配置されているとする。この際に、コンテナ特性記録部24(図1)には、3つのAPLコンテナ12a~12cに係るAPLコンテナメトリクス値を累積した計算資源メトリクス値(図3の横軸参照)と、パフォーマンス値を累積した合計パフォーマンス値(図3の縦軸参照)とが関連付けられて記録されている。この記録には、図3に示す特性カーブk2上の特性点c1,c2,c3の情報も含まれている。また、その記録は、コンテナメトリクス取得部21及び計算資源メトリクス取得部22によって行われたとする。
図7に示すステップS11において、判定実行部23は、記録部24から必要な情報を読み込んで、パフォーマンス閾値としての新規閾値を、次のように決定する。即ち、判定実行部23は、図3に示す特性点c2の合計パフォーマンス値から、特性点c3の合計パフォーマンス値までの増加量に予め定められた所定値=0.6を掛けた値を、期待する合計パフォーマンス値の増加量(期待増加量)と定める。次に、判定実行部23は、その期待増加量に前回閾値を足し合わせた値を、新規閾値と定める。
ステップS12において、判定実行部23は、3つのAPLコンテナ12a~12cの合計パフォーマンス値が、上記の新規閾値を超えたか否かを判定する。超えたと判定された場合、ステップS13において、判定実行部23は、第4APLコンテナ12dの増設を実行する。
この増設後、ステップS14において、判定実行部23は、4つのAPLコンテナ12a~12dの合計パフォーマンス値が新規閾値以下となったか否かを判定する。新規閾値以下となったと判定された場合、ステップS15において、判定実行部23は、第4APLコンテナ12dを減設する処理を行う。
<実施形態の効果>
このような本実施形態のスケーリング実行装置20によれば、次のような効果が得られる。
(1a)実行装置20は、CPUによるアプリケーションの実行環境をパッケージ化したAPLコンテナ12が配置され、APLコンテナ12による計算処理が実行される計算資源11から、APLコンテナ12に係るスループット以外のCPU使用量を含むメトリクス値と、APLコンテナ12のスループットであるパフォーマンス値とを取得するコンテナメトリクス取得部21及び計算資源メトリクス取得部22による取得部を備える。
また、実行装置20は、取得部によりAPLコンテナ12のメトリクス値とパフォーマンス値とが関連付けられて記録される記録部24を備える。更に、実行装置20は、記録部24に記録されたAPLコンテナ12のパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、計算資源11に配置されたAPLコンテナ12のメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にAPLコンテナ12を増設する判定実行部23を備える構成とした。
この構成によれば、自動的にAPLコンテナ12を増設するスケーリングが可能となる。つまり、サーバ等のCPUに係る計算資源11上にAPLコンテナ12を容易にスケーリングできる。
(2a)記録部24に、計算資源11に複数のAPLコンテナ12が配置されている際の各APLコンテナ12に係るメトリクス値を累積した計算資源メトリクス値と、パフォーマンス値を累積した合計パフォーマンス値とが関連付けられて記録されていると共に、関連付けによる特性カーブk2の情報が記録されている。
この場合に、判定実行部23は、記録部24に記録された全数hより少ない数gのAPLコンテナ12までを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる特性カーブk2上の交点であるg特性点から、全数hのAPLコンテナ12までを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる特性カーブ上の交点であるh特性点までの合計パフォーマンス値の増加量に、予め定められた所定値を掛けた値を期待増加量と定める。次に、判定実行部23は、その期待増加量に、前回の閾値決定処理で得られた前回閾値を足し合わせた値を新規閾値と定める。そして、判定実行部23は、計算資源11上の全数hのAPLコンテナ12の合計パフォーマンス値が、新規閾値を超えた際にAPLコンテナ12を増設する構成とした。
この構成によれば、計算資源11において、最適な台数のAPLコンテナ12となるまで、自動的に1つずつAPLコンテナ12を増設するスケーリングが可能となる。
(3a)判定実行部23は、計算資源11上の全APLコンテナ12の合計パフォーマンス値が、新規閾値以下となった際にAPLコンテナ12を減設する構成とした。
この構成によれば、計算資源11において、最適な台数のAPLコンテナ12となるまで、自動的に1つずつAPLコンテナ12を減設するスケーリングが可能となる。
(4a)所定値は、特性カーブk2上の特性点間における計算資源メトリクス値の増加量Δxに対する合計パフォーマンス値の増加量Δyの比率である特性カーブk2の傾きをパラメータとして定める構成とした。
この構成によれば、特性カーブの傾きをパラメータとして所定値を定めるので、新規閾値を適正に定めることができる。このため、APLコンテナ12の増設又は減設を適正に行うことができる。
また、本実施形態のコンピュータで実行されるプログラムについて説明する。コンピュータは、CPUによるアプリケーションの実行環境をパッケージ化したAPLコンテナ12を、APLコンテナ12が実行される計算資源11上に効率的に配置する処理を行うスケーリング実行装置20であるとする。
このプログラムは、上記コンピュータを、CPUによるアプリケーションの実行環境をパッケージ化したAPLコンテナ12が配置され、当該APLコンテナ12による計算処理が実行される計算資源11から、APLコンテナ12に係るスループット以外のCPU使用量を含むメトリクス値と、APLコンテナ12のスループットであるパフォーマンス値とを取得する手段、取得によるAPLコンテナ12のメトリクス値とパフォーマンス値とが関連付けられて記録部に記録される手段、記録されたAPLコンテナ12のパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、計算資源11に配置されたAPLコンテナ12のメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にAPLコンテナ12を増設する手段として機能させる。
このプログラムによれば、上述したスケーリング実行装置20の効果と同様に、自動的にAPLコンテナ12を増設するスケーリングを行うことができる。
<効果>
(1)CPU(Central Processing Unit)によるアプリケーションの実行環境をパッケージ化したコンテナが配置され、当該コンテナによる計算処理が実行される計算資源から、当該コンテナに係るスループット以外のCPU使用量を含むメトリクス値と、当該コンテナのスループットであるパフォーマンス値とを取得する取得部と、前記取得部により前記コンテナのメトリクス値とパフォーマンス値とが関連付けられて記録される記録部と、前記記録部に記録されたコンテナのパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、前記計算資源に配置されたコンテナのメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にコンテナを増設する判定実行部とを備えることを特徴とするスケーリング実行装置である。
この構成によれば、自動的にコンテナを増設するスケーリングが可能となる。つまり、サーバ等のCPUに係る計算資源上にコンテナを容易にスケーリングできる。
(2)前記記録部に、前記計算資源に複数のコンテナが配置されている際の各コンテナに係る前記メトリクス値を累積した計算資源メトリクス値と、前記パフォーマンス値を累積した合計パフォーマンス値とが関連付けられて記録されていると共に、前記関連付けによる特性カーブの情報が記録されている場合に、前記判定実行部は、前記記録部に記録された全数hより少ない数gのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるg特性点から、全数hのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるh特性点までの合計パフォーマンス値の増加量に、予め定められた所定値を掛けた値を期待増加量と定め、期待増加量に、前回の閾値決定処理で得られた前回閾値を足し合わせた値を新規閾値と定め、前記判定実行部は、前記計算資源上の全数hのコンテナの合計パフォーマンス値が、前記新規閾値を超えた際にコンテナを増設することを特徴とする上記(1)に記載のスケーリング実行装置である。
この構成によれば、計算資源において、最適な台数のコンテナとなるまで、自動的に1つずつコンテナを増設するスケーリングが可能となる。
(3)前記判定実行部は、前記計算資源上の全コンテナの合計パフォーマンス値が、前記新規閾値以下となった際にコンテナを減設することを特徴とする上記(2)に記載のスケーリング実行装置である。
この構成によれば、計算資源において、最適な台数のコンテナとなるまで、自動的に1つずつコンテナを減設するスケーリングが可能となる。
(4)前記所定値は、前記特性カーブ上の特性点間における前記計算資源メトリクス値の増加量Δxに対する前記合計パフォーマンス値の増加量Δyの比率である特性カーブの傾きをパラメータとして定めることを特徴とする上記(2)又は(3)に記載のスケーリング実行装置である。
この構成によれば、特性カーブの傾きをパラメータとして所定値を定めるので、新規閾値を適正に定めることができる。このため、コンテナの増設又は減設を適正に行うことができる。
その他、具体的な構成について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
20 スケーリング実行装置
21 コンテナメトリクス取得部(取得部)
22 計算資源メトリクス取得部(取得部)
23 スケーリング判定実行部(判定実行部)
24 コンテナ特性記録部(記録部)
c1~c6 特性点
k1,k2 特性カーブ

Claims (5)

  1. CPU(Central Processing Unit)によるアプリケーションの実行環境をパッケージ化したコンテナが配置され、当該コンテナによる計算処理が実行される計算資源から、当該コンテナに係るスループット以外のCPU使用量を含むメトリクス値と、当該コンテナのスループットであるパフォーマンス値とを取得する取得部と、
    前記取得部により前記コンテナのメトリクス値とパフォーマンス値とが関連付けられて記録される記録部と、
    前記記録部に記録されたコンテナのパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、前記計算資源に配置されたコンテナのメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にコンテナを増設する判定実行部と、を備え、
    前記記録部に、前記計算資源に複数のコンテナが配置されている際の各コンテナに係る前記メトリクス値を累積した計算資源メトリクス値と、前記パフォーマンス値を累積した合計パフォーマンス値とが関連付けられて記録されていると共に、前記関連付けによる特性カーブの情報が記録されている場合に、
    前記判定実行部は、前記記録部に記録された全数hより少ない数gのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるg特性点から、全数hのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるh特性点までの合計パフォーマンス値の増加量に、予め定められた所定値を掛けた値を期待増加量と定め、期待増加量に、前回の閾値決定処理で得られた前回閾値を足し合わせた値を新規閾値と定め、
    前記判定実行部は、前記計算資源上の全数hのコンテナの合計パフォーマンス値が、前記新規閾値を超えた際にコンテナを増設する
    とを特徴とするスケーリング実行装置。
  2. 前記判定実行部は、前記計算資源上の全コンテナの合計パフォーマンス値が、前記新規閾値以下となった際にコンテナを減設する
    ことを特徴とする請求項に記載のスケーリング実行装置。
  3. 前記所定値は、前記特性カーブ上の特性点間における前記計算資源メトリクス値の増加量Δxに対する前記合計パフォーマンス値の増加量Δyの比率である特性カーブの傾きをパラメータとして定める
    ことを特徴とする請求項又はに記載のスケーリング実行装置。
  4. スケーリング実行装置によるスケーリング実行方法であって、
    前記スケーリング実行装置は、
    CPUによるアプリケーションの実行環境をパッケージ化したコンテナが配置され、当該コンテナによる計算処理が実行される計算資源から、当該コンテナに係るスループット以外のCPU使用量を含むメトリクス値と、当該コンテナのスループットであるパフォーマンス値とを取得する取得ステップと、
    前記取得による前記コンテナのメトリクス値とパフォーマンス値とが関連付けられて記録部に記録される記憶ステップと、
    前記記録されたコンテナのパフォーマンス値の最大値又は最大値を1倍未満の所定倍数とした値を閾値と定め、前記計算資源に配置されたコンテナのメトリクス値に対するパフォーマンス値が、当該閾値を超えた際にコンテナを増設する判定実行ステップと、を実行し、
    前記記録部に、前記計算資源に複数のコンテナが配置されている際の各コンテナに係る前記メトリクス値を累積した計算資源メトリクス値と、前記パフォーマンス値を累積した合計パフォーマンス値とが関連付けられて記録されていると共に、前記関連付けによる特性カーブの情報が記録されている場合に、
    前記判定実行ステップにおいて、前記記録部に記録された全数hより少ない数gのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるg特性点から、全数hのコンテナまでを累積した計算資源メトリクス値と合計パフォーマンス値との関連付けによる前記特性カーブ上の交点であるh特性点までの合計パフォーマンス値の増加量に、予め定められた所定値を掛けた値を期待増加量と定め、期待増加量に、前回の閾値決定処理で得られた前回閾値を足し合わせた値を新規閾値と定め、前記計算資源上の全数hのコンテナの合計パフォーマンス値が、前記新規閾値を超えた際にコンテナを増設する
    とを特徴とするスケーリング実行方法。
  5. コンピュータを、請求項1~の何れか1項に記載のスケーリング実行装置として機能させるためのプログラム。
JP2022534880A 2020-07-10 2020-07-10 スケーリング実行装置、スケーリング実行方法及びプログラム Active JP7420252B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/027133 WO2022009432A1 (ja) 2020-07-10 2020-07-10 スケーリング実行装置、スケーリング実行方法及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2022009432A1 JPWO2022009432A1 (ja) 2022-01-13
JP7420252B2 true JP7420252B2 (ja) 2024-01-23

Family

ID=79553251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022534880A Active JP7420252B2 (ja) 2020-07-10 2020-07-10 スケーリング実行装置、スケーリング実行方法及びプログラム

Country Status (2)

Country Link
JP (1) JP7420252B2 (ja)
WO (1) WO2022009432A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018097708A (ja) 2016-12-15 2018-06-21 富士通株式会社 情報処理装置、情報処理システム、情報処理プログラム及び情報処理方法
JP2019135597A (ja) 2018-02-05 2019-08-15 富士通株式会社 性能調整プログラム、および性能調整方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018097708A (ja) 2016-12-15 2018-06-21 富士通株式会社 情報処理装置、情報処理システム、情報処理プログラム及び情報処理方法
JP2019135597A (ja) 2018-02-05 2019-08-15 富士通株式会社 性能調整プログラム、および性能調整方法

Also Published As

Publication number Publication date
JPWO2022009432A1 (ja) 2022-01-13
WO2022009432A1 (ja) 2022-01-13

Similar Documents

Publication Publication Date Title
US20100030877A1 (en) Virtual server system and physical server selecting method
US8099379B2 (en) Performance evaluating apparatus, performance evaluating method, and program
JP5608222B2 (ja) アプリケーション効率エンジン
CN106470219A (zh) 计算机集群的扩容和缩容方法及设备
US20120210042A1 (en) Remote memory for virtual machines
JP6300632B2 (ja) 情報処理装置、負荷制御方法および負荷制御プログラム
US20120221730A1 (en) Resource control system and resource control method
US20080109817A1 (en) Schedule control program and schedule control method
JP6969282B2 (ja) 情報処理装置、情報処理システムおよび情報処理方法
JP5942509B2 (ja) バッチ処理システム
JP6175924B2 (ja) プログラム、情報処理システムおよびデータ更新制御方法
CN107422989A (zh) 一种Server SAN***多副本读取方法及存储架构
JP5556498B2 (ja) 管理装置,ファイルサーバシステム,処理方法及び管理プログラム
JP7420252B2 (ja) スケーリング実行装置、スケーリング実行方法及びプログラム
JP2011192049A (ja) 仮想マシンシステム、自動マイグレーション方法および自動マイグレーションプログラム
US20040225736A1 (en) Method and apparatus for providing a dynamic quality of service for serving file/block I/O
CN109308310B (zh) 一种用于资产管理平台的子***数据互联处理方法
US20120221900A1 (en) System deployment determination system, system deployment determination method, and program
TWI522829B (zh) 具有輕量級容器節點的儲存系統
JP4778538B2 (ja) ストレージデータ管理システム及びストレージデータ管理プログラム
CN107888453B (zh) 一种基于Nginx下的多服务器状态监控方法及***
WO2011099141A1 (ja) 管理システム及びシステム管理方法及びプログラム
JP6107341B2 (ja) データ管理プログラム,データ管理装置およびデータ管理方法
JP2007140847A (ja) 電子コンテンツ配信方法及び配信システム
CN107819804B (zh) 云端储存设备***及决定其架构的高速缓存中数据的方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231225

R150 Certificate of patent or registration of utility model

Ref document number: 7420252

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150