-
Notifications
You must be signed in to change notification settings - Fork 0
Home
maida-yasuhiro edited this page Aug 21, 2016
·
19 revisions
IaaS_Program
自動でスケールイン/アウトするIaaSを自作しました。
詳しくは、【Outline】IaaS_Program.pdf に記載していますので、ご覧ください。
- TerminalからWebAPIを発行し、DCM(Data Center Manager)と呼ばれるAgentに命令を投げます。
- AgentはDBをチェックし、CPU使用率が最も小さいHostのAgentに対して命令を出します。
- その命令を各HostのAgentが受け取り、命令内容により、Virtual Hostを作成/削除します。
- 言語 : Ruby, ShellScript(Bash)
- Webフレームワーク : Sinatra
- データベース : SQLite3
- ORマッパー : sequel
- 分散処理Library : druby
- 仮想化基盤 : Libvirt + Qemu + Kickstart
- サーバー : DHCP, NFS, DB
- controlHost : webAPI、DCM、Database等に関するプログラム
- virtualHost : ゲストVMの立上げに関するプログラム
- shellscripts :各物理サーバに置かれたconfigファイルやVM操作のシェルスクリプト等
DB構成、VMのカギ管理に関しては、【Outline】IaaS_Program.pdf を参照のこと。
- WebGUIを作成し、ユーザに使いやすい形にする。
- CPU使用率によって、自動でスケールイン/アウトするようにする。