他のプロセスに あたえる影響が少ない 実行時ミラーリングシステム 指導教官 千葉 滋 助教授 学籍番号 99-2518-8 柳澤 佳里
近年のミラーリングの要件 実行時 遠隔地 サーバー動作中に停止せずにバックアップを行う 隣の建物や離れた都市にバックアップを作成 サーバーは24時間アクセスがあるので停止は不可能 遠隔地 隣の建物や離れた都市にバックアップを作成 災害に対応する必要がある 火事のとき隣のビルにバックアップしてあれば…
素朴な分散ミラーリングシステム ミラーリングの負荷は高い 大量のデータを転送しないといけない ストレージサーバー ネットワーク クライアント ミラーリングのための処理が必要 流量制御しない 大量のデータを転送しないといけない Zebra [John H. Hartmanら ’95]は上の構成だが、 RAID1ではなく、RAID4である RAID1: ミラーリング RAID4: 2/3ずつ分散保存
提案するシステム: The Tottotto Mirroring System 負荷が軽い遠隔地ミラーリングシステム The Tottotto Mirroring System 他のプロセス sender receiver ネットワーク File System File System OS OS 負荷の軽減法 スケジューリング 他のプロセスが忙しいとき、ミラーリングを休止 冗長な送信データの除去 同一ファイルへの上書きは最終更新のみ送信
Tottottoのスケジューリング 他プロセスへの影響を推測し、自主的に休止 Kernelの改造が不要 単位時間あたりのミラーリング量(進捗状況)減少時 資源の競合が起きた場合には進捗状況が悪化 Mbuf使用量の増加時 Mbuf: BSD系Unixにあるプロセス間通信用バッファー ネットワーク混雑時にはmbuf使用量が増加 再送多発 Kernelの改造が不要
Progress-based Regulationとの違い Progress-based Regulation[Douceur’99](PR)の欠点 競合検出が遅い 検定により資源の競合を検出 Tottottoのアプローチ PRに加えMbuf使用量の変化でも動作制限 ネットワーク混雑時、サーバープロセスは多忙 Tottottoはサーバー用途を想定 再送が大量発生し、mbuf使用量が急増
Tottottoでの 冗長な送信データの除去 ミラー再開時に不要データを除去 同一箇所への上書きは最終更新のみ必要 LFSの機構で使用量なしの領域を発見 LFS: ログ形式のファイルシステム ディスクイメージ(LFS) 送信対象 停止 冗長 再開 同一箇所
実験 目的 Tottottoのスケジューリングの評価 Web Server sender WebServerへの影響が小さい程良い CPU Priorityスケジューリングと比較 実験環境 ミラー元,ミラー先 AMD AthlonXP 2200+,DDR SDRAM 1GB, Intel Ethernet PRO/100S,NetBSD 1.6R Web Client AMD AthlonXP 2200+,DDR SDRAM 1GB, Intel Ethernet PRO/1000MT,FreeBSD 4.7R ミラー元 ミラー先 バックアップ 負荷 http_load Web client
実験I: CGIのディスク負荷が大きい場合 実験方法 /usr/src以下からQUERY_STRINGに含まれる文字列を探すCGIを実行 実験結果 (fetch/sec) 0.40 0.35 0.30 0.25 1秒あたりの CGIの実行回数 スケジュール なし CPU Priority スケジュール あり ミラー なし
実験II: CGIのディスク負荷が小さい場合 実験方法 LFS上のファイルにQUERY_STRINGで与えられた文字列を書き込む(上書き) 実験結果 (fetch/sec) 300 290 280 270 260 1秒あたりの CGIの実行回数 ミラー なし スケジュール なし CPU Priority スケジュール あり
まとめと今後の課題 まとめ 今後の課題 他プロセスが忙しいとき休止するミラーリングシステムを提案 Progress-based Regulationにmbuf監視をつけ、早めに動作制限 実験ではディスク負荷が高いときにうまく動作制限される 今後の課題 Mbuf使用量を見ることの効果を確認 不要なデータを飛ばすことの効果を確認 さらに小さい単位でのスケジューリング
付録: Progress-based Regulation 特徴 重要度の低いプロセスに対するスケジューリング スケジューラに報告された進捗状況で動作制限 検定により競合を検出 利点 Kernel改造不要 CPU以外の資源についても競合検知が可能 難点 競合検出が遅い 検定に足るデータが集まるまで動作制限不可 発表許可出願中
付録: Log-structured FS ログ構造のファイルシステム 各々のデータをsegmentに分けて管理 Index Fileで各segmentの使用状況を把握可能 Disk残量が少なくなった場合、cleanerdがGCする 発表許可出願中