他のプロセスに与える影響の少ない 実行時ミラーリングシステム

Slides:



Advertisements
Similar presentations
Webプロキシサーバにおける 動的資源管理方式の提案と実装
Advertisements

ファイルキャッシュを考慮したディスク監視のオフロード
コンピュータプラクティス I 再現性 水野嘉明
最新ファイルの提供を保証する代理FTPサーバの開発
セキュリティ機構のオフロードを考慮した仮想マシンへの動的メモリ割当
仮想テープライブラリ クラウド環境で利用できるテープバックアップの代替サービス 簡単な図 (網羅性より象徴性)
過負荷時のWebアプリケーションの性能劣化を改善する Session-level Queue Scheduling
KVMにおけるIDSオフロードのための仮想マシン監視機構
報告 (2006/9/6) 高橋 慧.
通信処理のカーネル内競合を 検出するアスペクト指向 カーネルレベルロガー
仮想マシンの並列処理性能に対するCPU割り当ての影響の評価
HTTP proxy サーバにおける 動的コネクション管理方式
P,Q比が変更可能なScaLAPACKの コスト見積もり関数の開発
柳澤 佳里* 光来 健一* 千葉 滋* *東京工業大学 情報理工学研究科 数理・計算科学専攻
ファイルシステムキャッシュを 考慮した仮想マシン監視機構
仮想計算機を用いたファイルアクセス制御の二重化
OSが乗っ取られた場合にも機能するファイルアクセス制御システム
既存システムを連携させることによるeラーニング ― MoodleとXoopsのアカウント情報を交換するモジュール ―
大きな仮想マシンの 複数ホストへのマイグレーション
LogStructuredFileSystem Servey
ネストした仮想化を用いた VMの安全な帯域外リモート管理
同期的にアドバイスを活性化できる分散動的アスペクト指向システム
帯域外リモート管理の継続を 実現可能なVMマイグレーション手法
VMマイグレーションを可能にするIDSオフロード機構
サーバ負荷分散におけるOpenFlowを用いた省電力法
過負荷時のWebアプリケーションの 性能劣化を改善する Page-level Queue Scheduling
柳澤 佳里 (学籍番号: 03M37311) 指導教官: 千葉 滋 東京工業大学 情報理工学研究科 数理・計算科学専攻
型付きアセンブリ言語を用いた安全なカーネル拡張
過負荷時の分散ソフトウェアの 性能劣化を改善する スケジューリングの提案
Xenによる ゲストOSの監視に基づく パケットフィルタリング
セキュリティ機構のオフロードを考慮した 仮想マシンのスケジューリング
分散IDSの実行環境の分離 による安全性の向上
他のプロセスに あたえる影響が少ない 実行時ミラーリングシステム
VM専用仮想メモリとの連携による VMマイグレーションの高速化
IaaS型クラウドにおける インスタンス構成の動的最適化手法
リモートホストの異常を検知するための GPUとの直接通信機構
ユーザ毎にカスタマイズ可能な Webアプリケーションの 効率の良い実装方法
仮想メモリを用いた VMマイグレーションの高速化
Ibaraki Univ. Dept of Electrical & Electronic Eng.
複数ホストに分割されたメモリを用いる仮想マシンの監視機構
仮想計算機を用いたサーバ統合に おける高速なリブートリカバリ
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
東京工業大学 情報理工学研究科 数理・計算科学専攻 千葉研究室 栗田 亮
Webコミュニティ概念を用いた Webマイニングについての研究 A study on Web Mining Based on Web Communities 清水 洋志.
クラウドにおけるVM内コンテナを用いた 自動障害復旧システムの開発
未使用メモリに着目した 複数ホストにまたがる 仮想マシンの高速化
アスペクト指向言語のための 独立性の高いパッケージシステム
セキュリティ機構のオフロード時の 性能分離
VMMのソフトウェア若化を考慮した クラスタ性能の比較
片方向通信路を含む ネットワークアーキテクチャに於ける 動的な仮想リンク制御機構の設計と実装
ウェブアプリケーションサーバの Degradation Schemeの 制御に向けて
VMが利用可能なCPU数の変化に対応した 並列アプリケーション実行の最適化
仮想環境を用いた 侵入検知システムの安全な構成法
Peer-to-Peerシステムにおける動的な木構造の生成による検索の高速化
アクセス集中時の Webサーバの性能に対する OSの影響
仮想マシンの監視を継続可能なマイグレーション機構
オペレーティングシステム (プロセススケジューリング)
仮想マシンと物理マシンを一元管理するための仮想AMT
仮想マシンに対する 高いサービス可用性を実現する パケットフィルタリング
Cell/B.E. のSPE上で動作する 安全なOS監視システム
ユビキタスコンピューティングの ための ハンドオーバー機能付きRMIの実装
状況に応じて適切な 例外処理が行なえる アスペクト指向分散環境実験の 支援ツール
CO-Client Opeartion 1.1 利用履歴データベースの設計 (スキーマ バージョン 対応)
強制パススルー機構を用いた VMの安全な帯域外リモート管理
IPmigrate:複数ホストに分割されたVMの マイグレーション手法
複数ホストにまたがるVMの 高速かつ柔軟な 部分マイグレーション
特定ユーザーのみが利用可能な仮想プライベート・ネットワーク
マルチエージェントシステムにおける 通信コストの構造依存性に関する解析
ベイジアンネットワークと クラスタリング手法を用いたWeb障害検知システムの開発
Presentation transcript:

他のプロセスに与える影響の少ない 実行時ミラーリングシステム 柳澤 佳里*1 千葉 滋*1 *1 東京工業大学 情報理工学研究科

サーバーのディスクバックアップ YahooやGoogleでのバックアップ作成は困難 バックアップの災害耐性を持たせるのは困難 常時アクセスがある環境でのバックアップは困難 バックアップ作成中は極度に性能低下 繫がらないユーザの[Reload]による輻輳の恐れ バックアップの災害耐性を持たせるのは困難 バックアップが手元にあると同時に被災する恐れ 遠隔地にバックアップテープを移送するのは手間

サーバーのディスクバックアップの要件 実行時ディスクバックアップ 遠隔地ディスクバックアップ Incrementalにディスクバックアップを実行 バックアップ実行の負荷を時間分散 時間分散させることで瞬間バックアップ負荷を軽減 遠隔地ディスクバックアップ 遠隔地のマシンのディスクにバックアップ 災害耐性を持たせる e.g. 隣のビルにバックアップし火災によるデータ破損に対処

バックアップ処理のスケジューリング バックアップ処理による性能低下を避けたい 競合する資源全てを考慮してスケジュールしたい サーバー負荷増大時にバックアップ処理を休止 バックアップ処理はサーバープロセスより低い重要度 サーバーへのアクセスが多いときには変更も多い 競合する資源全てを考慮してスケジュールしたい スケジューリングで考慮する資源は多岐にわたる ディスクバックアップは多種の資源を使用

我々の Tottottoミラーリングシステム スケジューリングの工夫 ヒントつきprogress-based regulation (Pbr) ネットワークの使用量をヒントとしたPbr Pbrと従来スケジューリングとのハイブリッド Pbr: プログラムの進捗を見てスケジューリング 特定の資源によらずスケジューリング 統計処理を行うので反応が遅い 従来型:資源の使用量を見てスケジューリング 即応性が必要な資源競合をスケジューリング Pbrの遅さをカバー

Progress-based regulation (Pbr) 進捗状況のフィードバックによるスケジューリング 重要度の低いプロセスは進捗をスケジューラに報告 資源を譲る善意のプロセスのためのスケジューリング 進捗悪化時:重要度の低いプロセスを停止 資源の競合の恐れ 進捗良好時:重要度の高いものと同じ資源割り当て 個々の資源の使用量を調べずスケジューリング可 資源ごとのスケジューラ作成は不要

Progress-based regulationの難点 Pbrは統計処理で進捗を判断 適切な閾値を設定するのは困難 従来の閾値による動作への反省 急激な資源の使用量の上昇への対応に遅れ 統計処理に足るデータ量が必要 量に限りがある資源の割り当てには不向き 個々の資源を見ずにスケジューリング

資源監視によるスケジューリング 資源使用量を見てスケジューリング 閾値のチューニングが困難 閾値を超える変化をした場合に停止 即応性のあるスケジューリングが可能 量に限りがある資源も適切にスケジュール可能 閾値のチューニングが困難 うまくスケジュールするには適度な閾値が必要 適切な閾値を多数の資源に定めるのは困難 Tottottoではネットワーク流量について閾値を経験的に定め監視

スケジューラの実装 ミラーリングソフトが自主的にスケジューリング ヒントつき Pbr NetBSD 1.6Rに実装 Kernelの改造が不要 資源競合時に Usleep(2),Sleep(3)により他プロセスに資源を移譲 Sleep時間はbinary exponential back-offで増加 ヒントつき Pbr ネットワーク流量監視スケジューリングをヒント 競合する資源をネットワーク資源(mbuf)と想定 ネットワークサーバー用途を想定 NetBSD 1.6Rに実装 LFSが実装されているOS

Tottottoにおけるミラーリング LFSv2/NetBSD対象 LFS: Log-structured File System,ログ構造のFS LFSのブロック(segment)単位でミラーリング 前回ミラーリングした箇所との差分発見が容易 LFSでは追記にてファイルシステムの変更を表現 現在書き込み中のsegmentはsuperblockに記録

スケジューリングのタイミング 流量監視スケジューリング: segment送信ごと ネットワーク使用の直前に使用量を調査 混雑時に混雑を助長するのを防止 Progress-based regulation: 差分送信ごと 進捗を調べやすいところで進捗調査 前回からの差分を求める箇所も調査対象に Segment送信ごとだと重み付けが困難

提案するスケジューリング法の 効果を見る実験 目的 バックアップ処理がWebサーバープロセスに資源を譲る速さを測定 実験方法 http_loadにて8並列でミラーリング元へ負荷をかけ、throughputを計測 実験環境 ミラーリング元、先: AMD Athlon 1.8GHz,メモリ 1GB,NetBSD 1.6R Web Client: AMD Athlon 1.8GHz,メモリ 1GB,FreeBSD 4.7R

実験1: ネットワーク流量が多い場合 目的 実験方法 急激な資源使用量上昇への反応を確認 送信された文字列を記録し、送り返すCGI 流量監視によるスケジューリングを加えた効果を測定 実験方法 送信された文字列を記録し、送り返すCGI 単純な処理なので処理時間が短い 相対的にネットワーク流量増大

Progress-based regulation 実験結果1: 流量が多い場合 処理性能比(%) Tottotto Progress-based regulation Schedulingなし (秒)経過時間 図: バックアップ実行中の時間あたりのプロセス処理量   バックアップしない場合を0とした比で表現 考察 Tottottoがprogress-based regulationより早くスケジューリング

実験2: ネットワーク流量が少ない場合 目的 実験方法 流量が少ない場合の反応を確認 ファイルを検索し記録した後に送り返すCGI 流量監視のみによるスケジューリングの効果を測定 実験方法 ファイルを検索し記録した後に送り返すCGI 検索には長時間を要する 相対的にネットワーク流量(mbuf使用量)減少

実験結果2: 流量が少ない場合 考察 処理性能比(%) 経過時間(秒) 図: バックアップ実行中の時間あたりの処理量 Tottotto 流量監視のみ Schedulingなし 経過時間(秒) 図: バックアップ実行中の時間あたりの処理量   バックアップしない場合を0とした比で表現 考察 ネットワーク流量監視では流量が少ない場合うまく動かない Pbrによるフォローが必要

関連研究 資源監視によるスケジューリング 資源監視によるスケジューリングの難点 対象資源以外のスケジュールは困難 資源ごとにスケジューラを作るのはよくない 個別に実装するのは面倒 協調動作させるのに苦労

関連研究 Progress-based regulation 低重要プロセス プログラムの進捗を報告し、競合時には自主的に停止 Kernelの改造不要 限りある資源を使うプロセスのスケジュールに向かない 統計処理により進捗を判断 競合への対応が遅い データ量が不足するとスケジュールしない Progress-based regulation of low importance processes [Johnら ‘99]

関連研究 Kernel改造を伴うProgress-based regulation 進捗を見てCPU割り当て時間を変更 進捗はリソース処理具合より判断 User landとOSを分離 kernel schedulerへの変更が必要 Kernel改造は万人向きではない Tottottoは改造不要で内部にスケジューラーを保持 A Feedback-driven Proportion Allocator for Real-Rate Scheduling [Davidら ‘99]

まとめ ヒントつきprogress-based regulation (Pbr)の提案 実行時ミラーリングシステムTottottoを作成 Kernel改造不要 実験 流量監視による効果があった ヒントを付けたことでPbrよりも早くスケジュール 流量監視のみでは不十分なことを確認 Pbrによるフォローは重要

今後の課題 ディスクなど他資源の検討 スケジューリングの粒度の検討 ミラーリングの粒度の検討 サーバー以外の用途への応用 パケット単位のスケジューリング 細粒度でのオーバーヘッドの検討 ミラーリングの粒度の検討 Segment単位よりも細かい単位でのミラーリング