こちら長い連載であったため、記事を見逃してしまった方も多かったのではないかと思います。また、システム基盤を管理するエンジニアといっても、その領域は様々であり、「自分と関連のありそうな記事だけ読みたい」という方もいるかと思います。そこで、今まで連載した記事を以下に分け、それぞれまとめ記事として公開しています。
- ネットワーク
- クラウドネットワーク
- クラウドコスト工夫
- クラウド活用術
- データベース
- CDN
- インフラセキュリティ
- インフラ運用
本記事では、 クラウドコスト工夫編 として、クラウドのコストに関する記事をご紹介します!自分と関連のありそうな記事だな と思った方は、ぜひ読んで下さい!
QCTマネジメント
クラウド環境において「最高品質のインフラ」を「提供までのリードタイムを短くしたまま」で提供する。
これらの水準を落とさないことを前提として、大幅なコスト削減を達成しました
こちらについて、試行錯誤した内容などご紹介します!
Auto Scaling から見るInfra System の構成
Auto Scalingの観点で様々な問題に対処するため、以下のような様々な工夫をご紹介します。
- 独自の Auto Scaling システムを開発、台数維持を担当する Instance Controllerと台数計算を担当する Auto scaler で構成
- 自動化タスク管理のWorkflowシステムを開発、タスク管理を担当する Scheduler と実行を担当する Executor
- Instance と Volume の Life cycle を分けたログ回収システム
MySQLサーバのMulti Instance化によるコスト最適化方法
コスト最適化が難しいMySQLのInstanceを無停止で増減し最適化
DeNAで行っているMySQLサーバコスト最適化について、以下の事例をご紹介します。
- 4shard 12台のInstance上にある12個のMySQLを3台の Instanceに集約
- Multi InstanceとMHA for MySQLを活用し停止メンテなく集約する
AWS スポットインスタンスを用いたサービスの平均故障間隔(MTBF)を定量的に評価する
DeNA が運用する大型ゲームではステートレスなサーバにスポットインスタンスを使用しています。
スポットインスタンスはAWSに中断(=shutdown)されることがある代わりに、コストを大幅に抑えることができるインスタンスです。
AWSのイベントで見かける資料では、定常的な負荷はリザーブドインスタンスや Savings Plans を利用し、さらに負荷が増える部分で万が一落とされても問題ない範囲をスポットインスタンスで運用することが推奨されていたりします。
しかし、DeNA では web、memcached、worker等のサーバにおいて、ほとんどのリソースをスポットインスタンスで運用し、それでいてサービスは絶対に落ちない自信を持っています。
こちらについて、以下のようなスポットインスタンスの可用性について紹介します
- スポットインスタンスの中断条件とは
- スポットインスタンスのみで安定したサービスを提供するには
GCP プロジェクトにおけるコスト監視
GCP BigQuery, GAE flexible, GAE cron を活用して GCP の利用状況及びコストをモニタリングし、想定外の利用を検知した際に担当者にアラートを送る運用により、大きなコスト削減を実現した話をご紹介します。
おわりに
いかがでしたでしょうか。今後も以下のようなまとめ記事を公開していく予定です。
- ネットワーク
- クラウドネットワーク
- クラウド活用術
- データベース
- CDN
- インフラセキュリティ
- インフラ運用
もしよろしければ、 @DeNAxTech のフォローをして、今後のまとめ記事もぜひご覧ください!
最後まで読んでいただき、ありがとうございます!
この記事をシェアしていただける方はこちらからお願いします。