ライブ・ストレージマイグレーション 機構の開発とその評価

Slides:



Advertisements
Similar presentations
目次 このドキュメントについて・・・前提条件……………………………………… 2
Advertisements

Virtual Editionのご紹介 2012年12月12日.
Webプロキシサーバにおける 動的資源管理方式の提案と実装
計算機工学III オペレーティングシステム #14 ファイル: より進んだファイルシステム 2006/07/21 津邑 公暁
動画像品質調整機能を組み込んだ プロキシキャッシングシステムの 実装と評価
ファイルキャッシュを考慮したディスク監視のオフロード
最新ファイルの提供を保証する代理FTPサーバの開発
セキュリティ機構のオフロードを考慮した仮想マシンへの動的メモリ割当
榮樂 英樹 LilyVM と仮想化技術 榮樂 英樹
Virtual Editionのご紹介 (株)ネットジャパン 法人営業部 2012年7月18日 1.
Windows Azure 仮想マシン 入門.
IaaS 仮想マシン(VM)をネットワーク経由で提供 負荷に応じてVM数や性能を変更できる ハードウェアの導入・管理・維持コストの削減
不特定多数の発信者を考慮した ストリーミングシステムの実現
仮想ブロードキャストリンクを利用した 片方向通信路の透過的経路制御 藤枝 俊輔(慶應義塾大学)
複数のコンピュータ(ノード)を一群にまとめて、信頼性や処理性能の向上を実現するシステム
解析サーバの現状と未来 2006/07/18 衛星データ処理勉強会 村上 弘志 現状のシステム構成など 統合解析環境としての整備
神奈川大学大学院工学研究科 電気電子情報工学専攻
ネットワーク構成法 スケール 第6回 11月19日.
ファイルシステムキャッシュを 考慮した仮想マシン監視機構
モバイルエージェントの応用 概要 モーバイルエージェントの応用分野 AgentSpaceシステム エージェント移動 応用:ソフトウェアの配信
リンクパワーオフによる光ネットワークの省電力化
研究背景 クラウドコンピューティングサービスの普及 ユーザ数の増加に伴う問題 マルチテナント方式の採用 データセンタの需要が増加
大きな仮想マシンの 複数ホストへのマイグレーション
ファイルシステムキャッシュを 考慮したIDSオフロード
LogStructuredFileSystem Servey
PlanetLab における 効率的な近隣サーバ選択法
帯域外リモート管理の継続を 実現可能なVMマイグレーション手法
クラウドの内部攻撃者に対する安全なリモートVM監視機構
サスペンドした仮想マシンの オフラインアップデート
サーバ負荷分散におけるOpenFlowを用いた省電力法
Virtual Editionのご紹介 2012年7月26日.
for Hyper-V Enterpriseのご紹介
IPv6 ネットワークにおける エニーキャスト通信実現のための プロトコル設計と実装
過負荷時の分散ソフトウェアの 性能劣化を改善する スケジューリングの提案
for Hyper-V with SHRのご紹介
Copyright © 2014 JOPS AWS Working Group, All rights reserved.
%Offや特別割引価格について、Dell直販のものを参考にして作成していただけますようお願いいたします。
vCenter Server Appliance PowerAct VHA Appliance
分散IDSの実行環境の分離 による安全性の向上
他のプロセスに あたえる影響が少ない 実行時ミラーリングシステム
新たなバックアップソリューション「クローン機能」はここがスゴイ 新たなバックアップ方法「クローン機能」なら全て解決!
2009年度卒業論文発表 CDNコンテンツサーバの動的負荷分散
生産ライン情報管理システム.
VMのメモリ暗号化による クラウド管理者への情報漏洩の防止
新たなバックアップソリューション「クローン機能」はここがスゴイ 新たなバックアップ方法「クローン機能」なら全て解決!
VM専用仮想メモリとの連携による VMマイグレーションの高速化
仮想メモリを用いた VMマイグレーションの高速化
Arcserve + 大容量NASサーバで二重化を簡単に! 障害時には、手動、もしくは自動で切替える
仮想計算機を用いたサーバ統合に おける高速なリブートリカバリ
宇宙科学統合解析環境の構築とAstro-E2解析支援
IaaS環境におけるVMのメモリ暗号化による情報漏洩の防止
未使用メモリに着目した 複数ホストにまたがる 仮想マシンの高速化
データベース設計 第7回 実用データベースの運用例 クライアント=サーバシステム(1)
Improvement of bootup time using Power Management - Project Update -
仮想ネットワークを考慮した SoftIRQ制御によるCPU割当ての手法
VMMのソフトウェア若化を考慮した クラスタ性能の比較
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
仮想マシンの監視を継続可能なマイグレーション機構
第5回 メモリ管理(2) オーバレイ方式 論理アドレスとプログラムの再配置 静的再配置と動的再配置 仮想記憶とメモリ階層 セグメンテーション
次世代無線インフラ と CNSメッセンジャー
強制パススルー機構を用いた VMの安全な帯域外リモート管理
異種セグメント端末による 分散型仮想LAN構築機構の設計と実装
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
複数ホストにまたがるVMの 高速かつ柔軟な 部分マイグレーション
複数ホストにまたがるVMの メモリ使用状況に着目した高速化
Dynamic Function Placement for Data-intensive Cluster Computing
Webプロキシ HTTP1.1 ヒント CS-B3 ネットワークプログラミング  &情報科学科実験I.
ソケットの拡張によるJava用分散ミドルウエアの高信頼化
管理VMへの キーボード入力情報漏洩の防止
Presentation transcript:

ライブ・ストレージマイグレーション 機構の開発とその評価 広渕崇宏 中田秀基 小川宏高  伊藤智 関口智嗣 t.hirofuchi _at_ aist.go.jp 産業技術総合研究所

xNBDとは xNBD - http://bitbucket.org/hirofuchi/xnbd VMクラスタ運用環境を想定した機能 Network Block Deviceプロトコル ブロックレベルのI/Oプロトコル iSCSIよりはるかに単純な仕様 必要かつ十分 VM VM VM VM Host Server NBD Protocol LAN Storage Server Disk Disk

xNBDの特徴(1) Linux NBDとの完全な互換性 既存NBDサーバよりも高速 複数クライアントの同時アクセス対応 カーネルドライバnbd.koで利用可能 既存NBDサーバよりも高速 mmap()の利用 多重リクエストキューイング処理 複数クライアントの同時アクセス対応 クラスタファイルシステムに対応 OCFS2、GFS

xNBDの特徴(2) ストレージマイグレーション 分散コピーオンライト オープンソース 分散キャッシュプロキシ VMライブマイグレーションと連動したストレージ再配置 遠隔拠点間VMライブマイグレーションに対応 分散コピーオンライト ストレージノードをまたいだディスクイメージCoW 分散キャッシュプロキシ 大規模クライアントに対応 オープンソース GPL(応相談変更可) まもなく公開予定 http://bitbucket.org/hirofuchi/xnbd

ターゲットサーバモード クライアントノード ターゲットサーバノード(10.1.1.1) 複数同時クライアント (OCFS2等と併用) 単一クライアント クライアントノード $ modprobe nbd $ echo deadline > /sys/block/nbd0/queue/scheduler $ nbd-client bs=4096 10.1.1.1 8992 /dev/nbd0 $ mkfs /dev/nbd0 ターゲットサーバノード(10.1.1.1) $ dd if=/dev/zero of=disk.img bs=4096 count=1 seek=1000000 $ xnbd-server --target --lport 8992 disk.img

プロキシサーバモード クライアントノード プロキシサーバノード ターゲットサーバノード(10.1.1.1) 複数同時 クライアント 単一クライアント $ modprobe nbd $ echo deadline > /sys/block/nbd0/queue/scheduler $ nbd-client bs=4096 10.1.1.1 8992 /dev/nbd0 プロキシサーバノード $ xnbd-server --proxy --lport 8992 10.1.1.1 8992 cache.img cache.bitmap ターゲットサーバノード(10.1.1.1) $ dd if=/dev/zero of=disk.img bs=4096 count=1 seek=1000000 $ xnbd-server --target --lport 8992 disk.img テンプレートディスクイメージを複数ストレージノードで共有 各ストレージノードではデータをキャッシュ

ライブVM&ストレージマイグレーション (概要) 仮想ディスクも再配置

ライブVM&ストレージマイグレーション (移動元でVMを起動) クライアントノード(移動元Dom 0) $ modprobe nbd echo deadline > /sys/block/nbd0/queue/scheduler $ nbd-client bs=4096 10.10.1.1 8992 /dev/nbd0 $ virt-install -f /dev/nbd0 $ grep disk /etc/xen/mydomain.cfg disk = [ "phy:/dev/nbd0,xvda,w" ] $ xm create /etc/xen/mydomain.cfg ターゲットサーバノード(10.10.1.1) $ dd if=/dev/zero of=disk.img bs=4096 count=1 seek=1000000 $ xnbd-server --target --lport 8992 disk.img

ライブVM&ストレージマイグレーション (VMの再配置) クライアントノード (移動元Dom 0) クライアントノード(移動先Dom 0) $ xm migrate -l 2 10.20.1.2 $ modprobe nbd $ echo deadline > /sys/block/nbd0/queue/scheduler $ nbd-client bs=4096 10.20.1.1 8992 /dev/nbd0 プロキシサーバノード(10.20.1.1) $ xnbd-server --proxy --lport 8992 10.10.1.1 8992 cache.img cache.bitmap VM再配置後徐々にディスクブロックをキャッシュしていく I/Oパスの切り替わり

ライブVM&ストレージマイグレーション (残りのブロックを移動) 残りのブロックを再配置後、ターゲットへの接続を終了 プロキシサーバノード(10.20.1.1) $ xnbd-bgctl --cache-all-blocks /tmp/xnbd-bg.ctl $ kill -HUP 12345 # PID of xnbd-server

まだキャッシュしていないブロックの読み込み プロキシサーバ詳細(基本動作) キャッシュ済みブロックの 読み込み まだキャッシュしていないブロックの読み込み 書き込み VM VM VM Host Host Host Host xNBD ターゲット サーバ xNBD プロキシ サーバ xNBD プロキシ サーバ xNBD プロキシ サーバ キャッシュ済みブロック ビットマップ 移動元ディスクから対象ブロックを遠隔読み込みし、 VMにデータを渡すとともに移動先ディスクにも保存。 キャッシュ済みとビットマップにマークする。 移動先ディスクに書き込んで、キャッシュ済みとマーク。 移動元への書き込みは不要。 移動先ディスクから読み込み。

VMのI/Oリクエストを分析して アクセス頻度が高い領域 (Ext3グループ)を分析。 プロキシサーバ詳細(最適化) VM移動前 VM移動後 オンデマンドなキャッシングと並行してバックグラウンドでも、使用中のブロックを優先度の高いものからコピー。すべての使用中ブロックをコピーし終えた時点で移動完了。 VMのI/Oリクエストを分析して アクセス頻度が高い領域 (Ext3グループ)を分析。 VM VM I/O リクエスト iotype: read iofrom: 0x1234 iosize: 8096 Ext2/3の特徴 Host Host グループごとにデータを局所化 グループ 0 グループ 1 グループ 2 ディスク構造 ビットマップの解析により 使用中ブロックを把握可能 xNBD ターゲット サーバ xNBD プロキシ サーバ inode データ グループ1 バックグラウンドコピーも VM移動後から開始

関連NBD実装 オリジナルNBD ENBD (Enhanced NBD) GNBD (Global NBD) http://nbd.sourceforge.net/ カーネルドライバがLinuxにマージ済み ENBD (Enhanced NBD) http://www.it.uc3m.es/ptb/nbd/ オリジナルNBDの改良版 現在開発停止中? GNBD (Global NBD) http://sourceware.org/cluster/gnbd/ 複数クライアント同時アクセスに対応 専用カーネルドライバが必要 (gnbd.ko) DNBD (Distributed NBD) http://lab.openslx.org/projects/show/dnbd 読み込みキャッシュプロキシ

今後の予定 VM再配置によるデータセンタ省電力化 詳細な性能評価 仮想クラスタ管理システムへの統合 消費電力・温度センサ、負荷モニタによる状態監視 VM再配置による動的なサーバ集約、稼動状態制御 詳細な性能評価 SPECweb等の既存ベンチマーク I/Oリクエストロギングによる実サーバ分析結果の反映 所内イントラウェブサーバ

まとめ xNBDの開発 既存NBDサーバを置き換えるだけでもOK More Info. 仮想クラスタ向け分散ストレージサーバ 分散コピーオンライト ストレージライブマイグレーション 既存NBDサーバを置き換えるだけでもOK 高速 複数同時クライアント More Info. http://bitbucket.org/hirofuchi/xnbd/ 論文等 http://grivon.apgrid.org/