vmworld 2015 US の中でも感慨深いセッションがあったので、その内容について自分なりに調べ直してみます。

その感慨深いセッションは

INF4936 Insight Into vSphere 6 vMotion: Architecture, Features, Performance and Debugging

です。

vMotion といえば VMware のハイパーバイザーを世に知らしめ、サーバーインフラの常識を変えた Ultra-Technology だったと思います。Windows や Linux の電源を落とさずに vMotion で物理サーバーから仮想マシンを追い出すことで、その物理サーバーのファームウェアアップデートや NIC 障害などのメンテナンスに対応できるようになりました。あるいは、CPU やメモリの負荷に応じて vMotion させることで、マルチコア環境でのプロセス スケジューリングの様に 複数の物理サーバーをまたいだ負荷調整を行うことで、必要な物理サーバーの数を減らすこともできました。そして、今なお着実に機能を追加し進化しています。

このセッションは、その vMotion の歴史を紐解き、vSphere 6.0 での新機能、デバッグ方法、最後にパフォーマンスに言及していました。

ただ、vMotion の歴史が余りにあっさりしていたので、自分の記憶や古い Release Notes を紐解いて時系列に並べてみました。

vMotion の歴史年表

Year VC version Feature
2003 (*1) 1.0 vMotion introduced
2004 1.2 RDM support
2006 2.0 Distributed Resource Scheduler (DRS)
2006 2.0.1 Upgrade vMotion (*2)
2007 2.5 Distributed Power Management (DPM)
2007 2.5 Storage vMotion (CLI)
2008 2.5U2 Enhanced vMotion Compatibility (EVC) (*3)
2009 4.0 Storage vMotion (GUI)
2009 4.0 VMDirectPath support
2009 4.0 Network vMotion
2010 4.1 Network I/O Control
2010 4.1 Performance Improvement (4 -> 8 concurrent)
2011 5.0 Metro vMotion (<= 10ms)
2011 5.0 Storage vMotion (Snapshot support)
2011 5.0 Storage vMotion (mirrored I/O)
2011 5.0 Multi NIC vMotion
2011 5.0 Stun During Page Send (SDPS)
2011 5.0 Storage DRS
2012 5.1 non-shared datastore vMotion (X-vMotion)
2013 5.5 VPLEX Metro
2013 5.5 IPv6 improvement
2015 6.0 vMotion across virtual switches
2015 6.0 vMotion across vCenter Servers
2015 6.0 vMotion across L3
2015 6.0 Long Distance vMotion <150ms
2015 6.0 Replication-assisted vMotion
???? TP vMotion across clouds
???? Research vMotion with RDMA

(*1) 1.0.0 は 2003/12 にリリースしていたため 2004 から 2003 に修正。 (2015/09/24)
(*2) Upgrade vMotion を追加。 (2015/09/24)
(*3) EVC は VC2.5U2 で追加されていたため修正。 (2015/09/25)

10 年以上も歴史を刻んでいるだけあって、本当に様々な機能が追加されているのが分かります。vSphere 5.5 の時代が地味なのと、いくつか黒歴史っぽい機能もありますが、次回以降でそれぞれの機能を振り返ってみます。