• 検索結果がありません。

SpringOS の処理の流れ

ドキュメント内 博 士 論 文 (ページ 95-98)

7.3 SpringOS を構成するモジュールとその動作

7.3.2 SpringOS の処理の流れ

ているノードのみに影響を与えるものであること、または要求する設定を行 う権利があるかを確認するためのモジュールが必要となる。SWConfは実験 実行者からの要求を受け、操作対象のスイッチポートやVLANの設定に関し て、その実験実行者が変更する権利を持つかどうかをERMに確認し、問題 がなければ要求された操作を実行する。

Scenario Master Scenario Masterは、Scenario Slaveと協調して実験シナリオを 進行する。SpringOSでは、実験駆動単位の構築を行うENCDであるkuroyuri masterがScenario Masterの機能も備えている。

Scenario Slave Scenario Slaveは、Scenario Masterから実行すべきシナリオを受 取り、設定にしたがい実験用ノード上でコマンドを実行する。実験シナリオ を実行するものは、kuroyuri masterと合わせてkuroyuri slaveとして実装さ れている。

図7.5に、各モジュールの関連を示す。また、それぞれのモジュールが所属する 管理レベルを表 7.1に示す。

ディスクイメージの取得 ERM

SWConf

DMAN

WoL

FNCP

FTPd

用意されたサーバ群大規模実証環境に

ENCD 設定記述

Scenario Master

Scenario Slave NI

資源の割り当て要求/割り当て スイッチ設定要求

ノード起動方法の変更要求

ノード起動要求 シナリオ部読み込み

設定部読み込み

シナリオ実行 ノード設定の要求/取得

管理用ノード

実験用ノード ENCDのIPアドレス登録

ENCDのIPアドレス要求

図 7.5: SpringOSの各機能の関連

ENCDが中核となり実験を実行する。設定ファイルを読み込んだ ENCDは設定記述にしたがい、その他の機能と連携して、実験を実 行する。実験駆動単位の設定管理はENCDが行うが、設定終了後 Scenario Masterが実験用ノードで動作するScenario Slaveと協調し て実験を行う。図中ではENCDScenario Master、NIScenario Slaveが同時に描かれているが、実際に同時に起動することはない。

表 7.1: SpringOSの各機能と所属する管理レベル 管理レベル モジュール

TFTPd DHCPd FTPd 大規模実証環境 ERM

FNCP WoL Agent DMAN SWConf ENCD 実験駆動単位 NI

Scenario Master Scenario Slave

を介して、NIとの通信を確立し、 必要な情報をNIに送る。NIはENCDか らの情報にしたがいディスクイメージをハードディスクに書き込む。

NIはENCDからの情報にしたがい、ディスクイメージを取得し、ハードディ スクに書き込みを行う。書き込みが終了すると、ENCDはDMANを通じて ノードが導入したディスクパーティションから起動するように設定を行い、

NIはノードを再起動する。

なお、実験用ノードをディスクレスシステムとして起動する場合は、ハード ディスクへのディスクイメージの書き込みなどは行わない。

4) 実験用スイッチの設定 ENCDは実験記述にしたがい、SWConfを通じて実験 トポロジを構築する。

5) ノードの初期設定および実験シナリオの実行 実験用ノードでは必ずScenario

Slaveが動作するよう設定されていることが必要である。

実験用ノード上でScenario Slaveが起動すると、Scenario SlaveはScenario

Masterと通信を行い実験を開始する。実験の初期段階としてIPアドレスな どの設定が必要となるが、これらの設定はシナリオの一部として実行される。

他のノードとの協調が必要な場合のみ、Scenario Masterを通じたメッセー ジ交換で他のノードと協調を行う。Scenario SlaveはScenario Masterから MACアドレスとIPアドレスの組を受取り、指定されたMACアドレスを持 つネットワークインターフェースに、指定されたIPアドレスを設定する。そ の他の必要な設定に関しても同様にScenario Masterとの通信にしたがって 実行される。

ドキュメント内 博 士 論 文 (ページ 95-98)