仮想マシンのメモリを、ネットワーク経由でほかのサーバから拝借して増やせる「VMware Cluster Memory」、VMwareが開発中

2019年9月4日

VMwareは、仮想マシンに別のサーバに搭載されているメモリをネットワーク経由で利用する能力を持たせることで、ホストサーバが搭載する物理メモリ以上のメモリ容量を仮想マシンで利用できるようにする「VMware Cluster Memory」機能を開発していることを、VMworld 2019 USのセッションで明らかにしました。

fig

RDMAを使って高速に別サーバのメモリにアクセス

「VMware Cluster Memory」実現の背景には、ネットワークの高速化が進んだことで、ネットワーク経由でのリソースアクセスのレイテンシがマイクロセカンドレベルにまで縮小し、ネットワーク経由でメモリにアクセスするRDMA(Remote Direct Memory Access)が実用的になってきたことなどが挙げられます。

VMware Cluster MemoryはこのRDMAを活用した技術。下記がVMware Cluster Memoryの具体的な動作を示した図です。

ネットワーク経由でメモリを提供する「Memory Server」を用意し、メモリを必要とする仮想マシンに対してMemory Server内のメモリを分割して提供します。

fig

VMware Cluster Memory基本的な仕組みは、メモリのスワッピングが発生した際のアクセス先としてストレージの代わりにMemory Serverとし、それに合わせてページングの仕組みやプリフェッチなどを最適化したものと説明されています。

fig

仮想マシンのホストサーバには既存のサーバを使うため、ある程度のメモリが搭載されています。このメモリはMemory Serverへのローカルキャッシュとして働き、RDMA経由でのメモリアクセスによるアクセス速度の低下を防ぐようになっています。

ベンチマークによると性能低下はわずか

いくつかのベンチマークテストの結果も示されました。下記はDVD販売のECサイトを模したベンチマークの結果を示したものです。

いちばん左の緑のマーカーが、ベンチマークを実行した際にすべてホストマシンの物理メモリを用いたときの性能を示しています。

水色のマーカーと青のマーカーはVMware Cluster Memoryを用いた性能(RDMAの構成によって2種類)を示し、赤のマーカーはVMware Cluster Memoryを用いずにSSDをスワップ先にした性能を示しています。

fig

このグラフによると、ホストマシンの物理メモリを70%から30%程度まで減らし、不足分のメモリをVMware Cluster Memoryを用いてMemory Serverから拝借しても、性能はあまり低下していないことが読み取れます。

ホストサーバはそのままでメモリを増大

VMware Cluster Memoryのメリットとして、仮想マシンのホストサーバの構成を変更することなく、リブートもせずに仮想マシンで利用できるメモリを増大できること。

また、Memory ServerのメモリにはDRAMだけでなく、より容量単価の安いIntel Persisntent Memoryなども利用可能なため、既存のホストサーバを入れ替えることなく、最新のメモリ技術によるメリットをシステムに加えることが可能などが挙げられています。

ただしMemory Serverが障害を起こしたときの対応やデータのセキュリティの確保、ネットワーク帯域の最適化やさらなる性能の向上などまだ課題は残っており、VMware Cluster Memoryは現時点まだ開発中の技術として紹介されています。

しかし情報システムにおいてデータ処理の高速化への要求に終わりはなく、そのためのメモリの柔軟な活用や、より低コストでのメモリの調達はいつも重要な課題です。VMware Cluster Memoryは、多くのエンジニアにとってそうした課題に対応するものとして期待されるものではないでしょうか。

下記はVMwareチーフテクノロジストのDuncan Epping氏によるVMware Cluster Memoryの説明。

VMworld 2019 USにおけるVMware Cluster Memoryのセッション動画(VMwareへの登録が必要)

VMworld 2019 US

Tags: VMware コンテナ型仮想化 仮想化

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本