クラウド利用が便利だからこそよく聞く話
世の中でCloud FirstやCloud by Defaultという流れから、クラウドを前提としたシステムの利用が行われています。キャパシティの面から見るとオンプレミス環境と比べ、下記のようなアジリティの利点があります。
- サイジング(ハードウェア・サーバの見積)にずれが生じた場合もハードウェア調達にかかるリードタイムがないため、アジリティを損なわない
- 動的にキャパシティが変化する設定であったり、処理に対して課金する等の方式により、柔軟なコストの構成をとることができる
- 可用性等をすでにパッケージングしたサービスが使えるため、すべて自身で構築する必要がなくなり、開発の高速化を図ることができる
しかしながら、日本だけでなく、諸外国の案件を実施していても、クラウドコストを何とか下げられないか?という課題を耳にします。理由は単純で、オンプレミスであれば固定だった投資部分が変動となり、やりたいことの実現のために、多くのリソースが使われ、想定しない使用料になってしまうことがあるためです。
インフラコストの適正を見極める難しさ
では、ここでの課題とは何でしょうか?
コストが高いのは誰が見ても大きな課題の一つですが、そのコストがシステムのKPIと見合っているのか分からない=本当に払っていいコストなのか判断できないのも、課題の一つではないでしょうか。
例えば部内のシステムで「これくらいのクラウドコストがかかっています」という分析表があっても、生み出している価値と比較しない限り判断できないと考えます。
そこで、運用中のコストのメンテナンスにおける課題としては、下記のようなものがあると考えます。
- インフラの使用量を時系列でモニタリングできておらず、対処するところが分からない
- ピークとオフピークの使われ方の差が大きすぎて、ピークを鑑みるとインスタンスサイズを下げられない
- デプロイされたアプリケーションによってマシンリソース利用の効率が悪く、利用するインスタンスが高止まりしてしまう
- コストだけが問題となり、かけているコストに対して、見合うリターンが得られるシステムかどうかが分からない
インフラコストのメンテナンス
課題と解決策との対応は以下のようになります。
- インフラの使用量とシステムにかかる負荷量を把握し、傾向分析を行う
例えば弊社のまかせいのうBOXというインハウスツールでは、すべてのインフラの情報を時系列で保存し、スループット等のパラメータとリソースを相関分析することで、傾向と対策を作っています。
デジタル時代におけるNTTデータ流性能管理
2. 日単位、時間単位での分散指標を鑑みて、スケールイン・スケールダウンを決定する
下記は運用で実施されている方も多いかもしれませんが、一つのレポートのサンプルを抜き出し、使用率によって、どういった下げ方があるかを提示した一例となります。これ以外にリソース集約や、サーバレス化など、手段はさまざまです。
図1:性能評価レポートサンプル
3. マシンリソースを使っている部分を切り分け、特定し、チューニングを実施する
高度なスキルが要求されますが、余計な処理を最適化、チューニングを行うことで、無駄な処理を省くのも有効な選択肢です。場合によっては、1時間かかっていた処理が3秒に縮まる事例もあります。
4. コスト/システムKPIの指標を持って把握し、コストとして適正なのか、ゴール感を設定する
(例)一回の購入に対して、約3$のコストがかかるシステムとなっている。目標値として、0.1$まで低減したい。
これらのトレンドを時間単位、日単位、月単位で分析することで、傾向を把握し、止める施策、機能等の狙いどころを定めることが肝要だと考えます。
インフラコスト課題への対策に
最近だと、多くのシステムがクラウドにシステムを置き換える(リフト)や、クラウドの機能を用いて、アプリケーションをモダナイズ(シフト)するような案件が増えてきました。
こういったコストの問題はクラウドの利用が加速すると共に、コモディティ化してくる課題だと思います。その際に、システムを用いて実現したいことを後押しするための取捨選択の手段として、一例をご紹介しました。