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

DNAS : システム情報を取得する仕組みを有した グリッド用ミドルウェア

N/A
N/A
Protected

Academic year: 2021

シェア "DNAS : システム情報を取得する仕組みを有した グリッド用ミドルウェア"

Copied!
8
0
0

読み込み中.... (全文を見る)

全文

(1)

Transactions of JSCES, Paper No.20080027

DNAS : システム情報を取得する仕組みを有した グリッド用ミドルウェア

DNAS : A Grid Middleware with support for System Information Acquisition

中尾 昌広1,折戸 俊彦1,山崎 弘貴1

,

廣安 知之2,三木 光範3

, Masahiro Nakao, Toshihiko ORITO, Hirotaka YAMAZAKI

Tomoyuki HIROYASU and Mitsunori MIKI

1同 志 社 大 学 大 学 院 工 学 研 究 科(〒610-0321京 田 辺 市 多々羅 谷1-3)

2同 志 社 大 学 生 命 医 科 学 部(〒610-0321京 田 辺 市 多々羅 谷1-3)

3同 志 社 大 学 理 工 学 部(〒610-0321京 田 辺 市 多々羅 谷1-3)

Distributed Network Application System (DNAS) is a P2P-oriented middleware which sup- ports to obtain system information and to exchange data among several applications on Grid.

DNAS constructs a dynamic communication topology for fault tolerance using tree topology and provides API for acquisition of system information and application data. Users can develop an application that adapts to a dynamic change of the calculation resource by using DNAS. In this paper, we proposed the design and implementation of DNAS and developed a max number search application in the DNAS environment. Moreover, we evaluated the performance of DNAS functions. As a result, we confirmed that the time required for the dynamic re-composition of the communication topology was short.

Key Words: Grid Computing, Communication Topology, Resource Management, Software, Peer-to-Peer

1.

はじめに

複数の管理組織に属するPCクラスタなどの計算資 源 を ネット ワ ー ク で 接 続 し ,そ れ ら を 仮 想 的 に1つ の 計 算 資 源 と し て 利 用 す る グ リッド コ ン ピュー ティン グ

( 以 下 グ リッド )が 普 及 し つ つ あ る .

グ リッド 環 境 上 で ア プ リ ケ ー ション を 実 行 さ せ る 場 合,ユーザは利用できる計算資源のシステム情報(ノー ド の 性 能 や 負 荷 率 ,生 死 な ど )を ア プ リ ケ ー ション 実 行 前 に 把 握 し て お く 必 要 が あ る .し か し ,グ リッド の 計 算 資 源 は 各 地 に 分 散 し て お り,か つ 計 算 資 源 の 管 理 組 織 は そ れ ぞ れ 異 な る た め ,こ れ ら の 作 業 は 煩 雑 で あ ることが多く,ユーザの負担になっている.さらに,グ リッド 環 境 の 計 算 資 源 は 頻 繁 に 追 加 ,も し く は メ ン テ ナ ン ス や 故 障 に よ る 削 除 が 行 わ れ る .グ リッド 環 境 を 有 効 に 利 用 す る た め に は ,ア プ リ ケ ー ション が シ ス テ ム 情 報 を 必 要 な と き に 取 得 し ,そ の 情 報 を 基 に ア プ リ

原 稿 受 付20080606日,改 訂 年 月 日20080822 日,発 行 年 月 日20081010日, c2008年 日 本 計 算 工 学 会.

Manuscript received, June 06, 2008; final revision, August 22, 2008; published, October 10, 2008. Copyright c2008 by the Japan Society for Computational Engineering and Science.

ケ ー ション の 動 作 を 柔 軟 に 変 化 さ せ る こ と が 可 能 な 仕 組 み が 望 ま れ る .例 え ば ,グ リッド 環 境 で よ く 用 い ら れ る 最 適 化 手 法 の 遺 伝 的 ア ル ゴ リ ズ ム を 複 数 台 の ノ ー ド で 実 行 し た い 場 合 ,各 ノ ー ド の シ ス テ ム の 変 化 に と も な い 動 的 に 探 索 点 の 数 な ど の パ ラ メ ー タ を 変 化 さ せ る こ と で ,効 率 的 に 計 算 を 行 う こ と が 可 能 に な る .

ま た ,今 後 の グ リッド に 求 め ら れ て い る こ と に ,異 な る 管 理 組 織 が 持 つ 異 な る ア プ リ ケ ー ション 同 士 を 連 携 さ せ る こ と に よ り,新 し い サ ー ビ ス を 開 発 ,提 供 す る こ と が 挙 げ ら れ る .そ の た め ,ユ ー ザ が 計 算 資 源 の 管 理 組 織 を 意 識 せ ず に ア プ リ ケ ー ション 間 で デ ー タ 交 換 を 行 え る 仕 組 み が あ る と 望 ま し い 考 え る .

本 稿 で は ,ア プ リ ケ ー ション か ら グ リッド 環 境 の 計 算 資 源 の シ ス テ ム 情 報 を 取 得 で き ,か つ ユ ー ザ が 管 理 組 織 の 違 い を 意 識 す る こ と な く ア プ リ ケ ー ション 間 の データ交換を行うことが可能なミドルウェアDistributed Network Application System( 以 下DNAS)の 提 案 を 行 う.DNASはグリッド上のシステム情報を取得し,その 情 報 を ユ ー ザ が 作 成 す る ア プ リ ケ ー ション が 利 用 で き る 形 で 提 供 す る .ユ ー ザ はDNASを 用 い る こ と で ,計 算 資 源 の 動 的 変 化 を 考 慮 し た ア プ リ ケ ー ション の 開 発

(2)

が 可 能 に な る .ま た ,ユ ー ザ は 異 な る ア プ リ ケ ー ショ ン 間 の 連 携 を 容 易 に 行 う こ と が 可 能 に な る .

従 来 の ア プ リ ケ ー ション は シ ス テ ム か ら 切 り 離 さ れ て 実 装 さ れ て き た た め ,シ ス テ ム を 構 成 す る ノ ー ド の 生 死 や 負 荷 率 を 考 慮 し た ア プ リ ケ ー ション を 実 装 す る こ と は 困 難 で あった .例 え ば ,リ ソ ー ス の 変 化 や ノ ー ド の 生 死 と いった 情 報 に 基 づ い て ,動 作 し て い る ア プ リ ケ ー ション の 挙 動 を 変 化 さ せ る と いった こ と は 通 常 行 わ な い .し か し ,ユ ー ザ はDNASを 用 い る こ と で シ ス テ ム 情 報 を 考 慮 し た ア プ リ ケ ー ション の 開 発 が 可 能 に な る .

2.

要件

グ リッド 環 境 の 計 算 資 源 の シ ス テ ム 情 報 を 取 得 し , か つ 異 な る ア プ リ ケ ー ション 間 で デ ー タ 交 換 を 行 う た め の 要 件 と し て は 以 下 が 挙 げ ら れ る .

要 件1 負 荷 分 散 と 可 用 性 の 向 上

1台の管理サーバに全計算資源のシステム情報を

保 存 す る 場 合 ,大 規 模 環 境 下 で は 管 理 サ ー バ に 負 荷 が 集 中 す る た め ,性 能 低 下 を 引 き 起 こ す こ と が 考 え ら れ る .ま た ,可 用 性 の 問 題 点 も あ る . そ の た め ,あ る ノ ー ド の シ ス テ ム 情 報 を 複 数 台 の ノ ー ド に 分 散 し て 複 製 保 存 す る こ と で ,負 荷 分 散 と 可 用 性 の 向 上 を 図 る

要 件2 2層 構 造 の 通 信 ト ポ ロ ジ へ の 対 応

一 般 に グ リッド 環 境 はLAN等 を 用 い た 内 部 ネッ トワークとインターネット等を用いた外部ネット ワ ー ク と い う2層 構 造 の 通 信 ト ポ ロ ジ を 形 成 す る(Fig. 1).そ の た め ,上 記 で 述 べ た ノ ー ド 間 に お け る シ ス テ ム 情 報 の 複 製 保 存 を 行 う た め の 通 信 路 は ,イ ン タ ー ネット とLANに ま た がった 構 成 を 作 成 可 能 に す る

要 件3 任 意 の タ イ ミ ン グ で の 計 算 資 源 の 追 加/削 除 グリッド環境の計算資源は頻繁に追加,削除が行 われる.そのため,DNASが動作する計算資源の 追 加 ,削 除 を 任 意 の タ イ ミ ン グ で 行 え る よ う に 対 応 す る

要 件4 ア プ リ ケ ー ション を 動 作 さ せ る ノ ー ド の 自 動 選

グ リッド 環 境 の 計 算 資 源 は 動 的 に 変 化 す る た め , ジョブを実行する度にユーザが使用する計算ノー ド を 指 定 す る 方 法 は ユ ー ザ の 負 荷 が 大 き い .そ の た め ,ユ ー ザ は ど の ノ ー ド を 利 用 す る か を 意 識 せ ず に ,負 荷 の 低 い ノ ー ド を 自 動 的 にDNAS が選択し,アプリケーションを実行できる仕組み を 開 発 す る

要件13.1節で,要件233.3節で,要件43.6 節 で ,そ れ ぞ れ の 要 件 を 満 た すDNASの 提 案 を 行 う.

3. DNAS

の設計と実装

Fig.1 Communication Topology of Grid

3.1 シ ス テ ム 構 成 DNASは デ ー タ を 格 納 す る デ ー タ プ ー ル ,デ ー タ プ ー ル に 保 存 さ れ た デ ー タ を 操 作 す る プ ロ グ ラ ミ ン グAPI,シ ス テ ム 情 報 の 取 得 と そ の情報を共有するための通信を制御するDNAS daemon

DNASデ ー モ ン )の3つ か ら 構 成 さ れ る .

DNASが 動 作 し て い る 各 ノ ー ド で は ,シ ス テ ム 情 報 と ア プ リ ケ ー ション が 出 力 す る デ ー タ を 格 納 す る た め の デ ー タ プ ー ル を 持って い る .そ し て ,DNASは デ ー タプールにアクセスするためのプログラミングAPI 提 供 し て い る .ユ ー ザ が 作 成 す る ア プ リ ケ ー ション は DNASが 提 供 す るAPIを 呼 び 出 す こ と で ,任 意 の タ イ ミ ン グ で シ ス テ ム 情 報 の 取 得 と ア プ リ ケ ー ション デ ー タ の 取 得 と 保 存 を 行 う こ と が で き る .

グ リッド 上 の 各 ノ ー ド で は ,DNASデ ー モ ン と 呼 ば れ る デ ー モ ン プ ロ グ ラ ム が 動 作 し て い る .DNASデ ー モ ン は 定 期 的 に 自 ノ ー ド の シ ス テ ム 情 報 を デ ー タ プ ー ル に 保 存 し て い る .ま た ,DNASデ ー モ ン は 計 算 資 源 の 動 的 変 化 に 対 応 し た 論 理 的 な 通 信 ト ポ ロ ジ を 各 ノ ー ド 間 で 構 築 し ,そ の 通 信 路 を 用 い て 各 ノ ー ド が デ ー タ プ ー ル の 情 報 を 送 受 信 し て い る .デ ー タ プ ー ル の 情 報 を 何 ノ ー ド 先 ま で 送 信 す る か は ,DNASの 起 動 時 に 指 定 す る .ま た ,通 信 路 の ト ポ ロ ジ は ツ リ ー 構 造 を 採 用 し て い る た め ,1台 の ノ ー ド に 負 荷 を 集 中 さ せ な い 特 徴を持っている.これらの仕組みにより,2章で挙げた 負 荷 分 散 と 可 用 性 の 高 い シ ス テ ム を 実 現 し て い る .な お ,通 信 は 一 定 時 間 間 隔 で 行 わ れ ,通 信 路 はSSLを 用 い て 暗 号 化 さ れ る .

3.2 デ ー タ の 識 別 方 法 シ ス テ ム 情 報 と ア プ リ ケ ー ション が 出 力 す る 全 て の デ ー タ に は タ グ と 呼 ば れ る 識 別 子 が 付 与 さ れ る .タ グ に は ,ホ ス ト に 対 す る ホ スト識別子,アプリケーションに対するアプリケーショ ン 識 別 子 ,ユ ー ザ が 任 意 で 付 け る デ ー タ 識 別 子 の3 類 が あ り,ユ ー ザ はDNASが 提 供 す るAPIを 用 い て そ れ ら の 識 別 子 を 指 定 す る こ と で ,任 意 の デ ー タ の 送 受 信 を 行 う こ と が で き る .

DNASが 提 供 し て い る 主 要 なAPIを 下 記 に 示 す.

Object recv(String APPNAME, String TAG) システム情報とアプリケーションデータの受信処 理を行うための関数である.任意のアプリケーシ

(3)

Exchange

System Information

Fig.2 Communication Topology of DNAS

ョン識別子(APPNAME)とデータ識別子(TAG に一致するデータをデータプールから取得する.

また,アプリケーション識別子に”sys-info”,デー タ 識 別 子 に ノ ー ド 名 を 指 定 す る と ,そ の ノ ー ド の シ ス テ ム 情 報 を 取 得 す る こ と が で き る .デ ー タ 識 別 子 に”hostname”を 指 定 し た 場 合 は ,実 行 で き る ホ ス ト の リ ス ト が 返 さ れ る .

boolean send(String TAG, Serializable DATA) 共 有 し た い ア プ リ ケ ー ション の デ ー タ(DATA にデータ識別子(TAG)を付与して送信する関数 で あ る .

boolean first send(String HOSTNAME, String TAG, Serializable DATA)

第 一 引 数(HOSTNAME)で 指 定 し た ノ ー ド に 対 して,共有したいアプリケーションのデータ(DATA にデータ識別子(TAG)を付与して直接送信する 関 数 で あ る .

な お ,ホ ス ト 識 別 子 は そ の ア プ リ ケ ー ション が 実 行 さ れ る ホ ス ト 名 ,ア プ リ ケ ー ション 識 別 子 は プ ロ グ ラ ム ファイ ル 名 の 拡 張 子 を 除 い た 部 分 が 自 動 的 に 設 定 さ れ る .

3.3 通 信 ト ポ ロ ジ DNASで は 自 ノ ー ド で 取 得 し た シ ス テ ム 情 報 を 各 ノ ー ド 間 で 複 製 保 存 す る た め の 通 信 路 と し て ,Fig. 2の よ う な ツ リ ー ト ポ ロ ジ を 採 用 し て い る .

計 算 ノ ー ド を 既 存 の 環 境 に 追 加 し た い 場 合 ,ユ ー ザ は 追 加 し た い ノ ー ド 上 に お い て ,既 にDNASが 起 動 し て い る ホ ス ト 名 を 指 定 し て か らDNASを 起 動 す る .指 定 し た ホ ス ト 名 と 接 続 許 可 が 得 ら れ た 場 合 ,追 加 し た い ノ ー ド は 指 定 し た ノ ー ド を 自 身 の 上 位 ノ ー ド と し て リストに追加し,接続する.また,指定されたノードは 追加したノードを下位ノードとしてリストに追加する.

以上の操作を計算資源の追加の度に行うことによって,

す べ て の ノ ー ド 間 で ツ リ ー ト ポ ロ ジ の 通 信 路 が 構 成 さ れ る .こ の 仕 組 み に よ り,2章 で 挙 げ た 任 意 の タ イ ミ ン グ で の 計 算 資 源 の 追 加/削 除 を 実 現 し て い る .

な お ,異 な る 管 理 組 織 上 に 存 在 す る 各 ゲ ー ト ウェイ ノ ー ド 上 でDNASを 起 動 さ せ ,そ れ ら の ゲ ー ト ウェイ ノ ー ド 間 で 通 信 路 を 構 成 す る こ と に よ り,異 な る 管 理

組 織 内 に 存 在 す る ノ ー ド 間 に お い て シ ス テ ム 情 報 の 送 信が可能になる.この特徴により,Fig. 1に示した2 構 造 の 通 信 ト ポ ロ ジ に 対 応 す る こ と が 可 能 に な る .ま た ,ユ ー ザ は 管 理 組 織 を 意 識 す る こ と な く,計 算 資 源 の シ ス テ ム 情 報 を 取 得 す る こ と が 可 能 に な る .

DNASデ ー モ ン で は 上 位 ノ ー ド の リ ス ト と 下 位 ノ ー ド の リ ス ト を 参 照 し な が ら 一 定 時 間 間 隔 で デ ー タ プ ー ル 内 の 情 報 を 交 換 す る .全 て の ノ ー ド は 自 ノ ー ド と 論 理 的 に 接 続 さ れ た 以 外 の ノ ー ド と は 他 の ノ ー ド を 経 由 し た 間 接 的 な 通 信 を 行 う た め ,一 部 の ノ ー ド に 負 荷 を 集 中 さ せ る こ と な く 情 報 を 共 有 す る こ と が で き る .な お ,タ イ ム ア ウ ト に よ り 接 続 で き な かった ノ ー ド が あ る 場 合 ,該 当 ノ ー ド を リ ス ト か ら 自 動 的 に 削 除 す る . そ し て ,後 述 す る 通 信 ト ポ ロ ジ の 動 的 な 再 構 成 機 構 に よ り,接 続 不 可 に なった ノ ー ド よ り も 下 位 に あ る ノ ー ド は ,別 ノ ー ド に 接 続 す る .

デ ー タ プ ー ル の 情 報 を 交 換 す る 頻 度 は ,DNAS起 動 時 に ユ ー ザ が 決 定 す る .現 在 想 定 し て い るDNASの 通 信の頻度は5秒 から20秒であり,その場合,3Hop離れ た 上 位 ノ ー ド に 対 し て シ ス テ ム 情 報 を 伝 達 す る に は , 15秒 か ら60秒 を 要 す る .

シ ス テ ム 情 報 の デ ー タ 通 信 はFig. 2の よ う な ツ リ ー ト ポ ロ ジ で 通 信 を 行 う が ,ア プ リ ケ ー ション の デ ー タ 通 信 に つ い て は 高 速 に 通 信 を 行 う こ と が 求 め ら れ る た め ,Fig. 2に 示 し た ツ リ ー ト ポ ロ ジ と は 関 係 の な い , 通 常 の ネット ワ ー ク を 用 い た 送 信 を 行 う こ と も 可 能 に す る .

3.4 通 信 ト ポ ロ ジ の 動 的 な 再 構 成 機 構 ツ リ ー ト ポ ロ ジ を 用 い た 通 信 機 構 は 中 間 層 の ノ ー ド の 障 害 に 脆 弱 で あ る と い う 問 題 が あ る .ま た 計 算 資 源 の 追 加 に よ り,あ る ノ ー ド に 接 続 さ れ る 下 位 ノ ー ド の 数 が 想 定 以 上 に 多 く な る 可 能 性 が あ る .以 上 の 問 題 に 対 応 す る た め ,DNASで は 下 記 の よ う な 通 信 ト ポ ロ ジ の 動 的 再 構 成 機 能 を 実 現 し て い る .

上 位 ノ ー ド と 接 続 が 行 え な い 場 合

上 位 ノ ー ド に 障 害 が 起 き た 際 に 別 ノ ー ド に 接 続 す る た め ,DNASデ ー モ ン は 常 に 代 替 ノ ー ド の 情 報 を 保 持 し て い る .代 替 ノ ー ド は 上 位 ノ ー ド の 上 位 に 位 置 す る ノ ー ド が 選 択 さ れ る .DNAS デ ー モ ン は 一 定 時 間 間 隔 で 上 位 ノ ー ド の 情 報 を 代替ノードの情報として下位ノードに送信する.

代 替 ノ ー ド の 情 報 を 取 得 し た 下 位 ノ ー ド は ,代 替 ノ ー ド に 対 し て 接 続 テ ス ト を 試 み る .応 答 が あ れ ば 接 続 可 能 と 判 断 し ,代 替 ノ ー ド と し て 登 録 す る .上 位 ノ ー ド が 故 障 し 代 替 ノ ー ド に 接 続 し た 場 合 ,DNASデ ー モ ン は 上 位 ノ ー ド と 代 替 ノ ー ド の 情 報 を 更 新 す る .

自 ノ ー ド の 下 位 ノ ー ド 数 が 設 定 し た 上 限 値 に 達 し て い る 場 合

接続を試みた下位ノードを,さらに1つ下の階層 に移動させる.DNASデーモンは移動させる下位

(4)

Fig. 3 Dynamic restructuring of communication topology

ノ ー ド に 対 し て ,下 位 ノ ー ド の リ ス ト か ら 無 作 為 に 選 択 し た1台 を 移 動 先 の ノ ー ド の 情 報 と し て 送 信 す る .情 報 を 受 信 し た 下 位 ノ ー ド は 上 位 ノ ー ド の 情 報 を 代 替 ノ ー ド と し て 登 録 し ,受 信 し た 情 報 の ノ ー ド に 対 し て 接 続 を 試 み る .接 続 が 許 可 さ れ た 場 合 は 受 信 し た 情 報 の ノ ー ド を 上 位 ノ ー ド と し て 登 録 す る .受 信 し た 情 報 の ノ ー ド と の 接 続 が 許 可 さ れ な い 場 合 は 代 替 ノ ー ド に 接 続 す る .

通 信 ト ポ ロ ジ の 動 的 再 構 成 の シ ナ リ オ を 下 記 に ,そ の シ ナ リ オ を 図 示 し た も の をFig. 3に 示 す.

1. あ る ノ ー ド が 故 障 し ,故 障 し た ノ ー ド と 接 続 し て い た ノ ー ド と の 接 続 が 途 切 れ る

2. 接 続 が 途 切 れ た ノ ー ド は 代 替 ノ ー ド に 接 続 を 試 み る

3. 代 替 ノ ー ド は 接 続 を 試 み た ノ ー ド の1台 は 接 続 を許可するが,2台目は下位ノードの上限値が越 え た と 判 断 す る

4. 代 替 ノ ー ド は 自 ノ ー ド の 下 位 ノ ー ド の 内 の1 に ,接 続 を 試 み た2台 目 の ノ ー ド を 振 り 分 け る 3.5 ノ ー ド 数 の 増 加 に 伴 う 負 荷 の 軽 減 グ リッ ド 環 境 は ネット ワ ー ク で 接 続 さ れ た 複 数 の マ シ ン で 構 成 さ れ て い る た め ,そ れ ら を 連 携 さ せ る た め の 通 信 制 御 に は マ ル チ ク ラ イ ア ン ト 処 理 を 行 う 必 要 が あ り,送 受 信 の 各 処 理 に は ス レッド 処 理 が 利 用 さ れ る こ と が 多 い .し か し ス レッド 処 理 に よ る 多 重 化 は 同 時 接 続 数 が 多くなると,スレッドの大量生成によるパフォーマンス の 低 下 や ,メ モ リ 不 足 に よって ジョブ が エ ラ ー 終 了 す る な ど の 問 題 が 報 告 さ れ て い る(4, 5).ス レッド の 大 量 生 成 に 関 す る 問 題 を 解 決 す る た め に ,DNASで は 通 信 ト ポ ロ ジ を 階 層 型 に す る こ と で1つ の ノ ー ド に 接 続 さ れ る ノ ー ド 数 を 抑 え て い る .し か し な が ら ,階 層 型 ト

running state suspend state

running queue

DnasApplication

Fig.4 Control the running application

ポ ロ ジ に よ る 通 信 制 御 は 有 用 な 手 法 で あ る が ,ス レッ ド の 大 量 生 成 に 対 す る 根 本 的 な 解 決 策 で は な い .

ここで,スレッド生成数はコネクション数に依存する ので,ある特定のノードに発生するコネクション数に注 目する.あるノードと通信を行っているノード数をN システム制御,アプリケーション処理において発生する ノードあたりのコネクション数をそれぞれN cN aとす ると,ノードあたりのコネクション総数はN(N c+N a) で 表 さ れ る .N cは シ ス テ ム の 維 持 に 必 要 な 制 御 に 関 するコネクション数であるため,その値は変化しない.

ま たN aは ア プ リ ケ ー ション に 依 存 し て い る .そ の た め,同時に通信を行うノード数Nを制限する仕組みを DNASに 導 入 し て い る .具 体 的 に は ,DNASに お い て 送 受 信 に 関 す る 通 信 機 構 を 設 計 し ,非 同 期I/Oを 用 い た 多 重 化 を 行って い る .

3.6 ア プ リ ケ ー ション 制 御 機 構

ユーザがDNAS上でアプリケーションを実行する際,

DNASが 提 供 し て い る ア プ リ ケ ー ション 起 動 用 プ ロ グ ラム(DnasRun)を用いる.DnasRunは任意のホストで 動 作 す るDNASデ ー モ ン に ア プ リ ケ ー ション 情 報 と ク ラ ス 情 報 を 送 信 し ,ア プ リ ケ ー ション の 起 動 を 委 譲 す る .通 知 を 受 け た 別 ノ ー ド で 動 作 す るDNASデ ー モ ン も 同 様 の 処 理 を 行 い ,シ ス テ ム 内 で 次々と ア プ リ ケ ー ション が 伝 播 す る .こ の 仕 組 み に よ り,ユ ー ザ は 単 一 の ノ ー ド に ア ク セ ス す る だ け で ,ど の ノ ー ド で ア プ リ ケーションを実行するかを意識することなく,グリッド 環 境 の 計 算 資 源 を 利 用 で き る .こ の 特 徴 は ,2章 で 挙 げ た ア プ リ ケ ー ション を 動 作 さ せ る ノ ー ド の 自 動 選 択 に 対 応 し て い る .

ま た ,DNASは 同 時 に 起 動 す る ア プ リ ケ ー ション の 数 を 制 限 す る こ と に よ り,計 算 資 源 に 必 要 以 上 に ジョ ブ が 投 入 さ れ る こ と を 防 ぐ 機 能 を 有 す る .実 行 可 能 状 態 に なった ア プ リ ケ ー ション は ま ず 実 行 キュー に 保 存 す る .次 に ,DNAS上 で 動 作 し て い る ア プ リ ケ ー ショ ン の 数 が 設 定 値 に 満 た な い 場 合 は 実 行 状 態 に 推 移 し , 設 定 値 に 達 し て い る 場 合 は 実 行 キュー に 保 留 す る .実 行 中 の ア プ リ ケ ー ション が 終 了 す る と ,DNASデ ー モ ンは保留されているアプリケーションの有無を調査し,

アプリケーションがある場合は実行状態に推移させる.

さらにDNASはノードの負荷に応じて,実行中のアプ リケーションの中断,再開する機能を有する.DnasRun

(5)

Fig.5 A part of ”TaskAllot.java”

Fig.6 A part of ”DoTask.java”

によって起動された全てのアプリケーションは,DNAS 上 で ス レッド を 用 い て 実 行 し て い る .DNASは す べ て java言語を用いて作成しているため,javaの持つスレッ ドの機能を用いることで,アプリケーションの中断・再 開 を 行 う た め の 機 構 を 作 成 し た .ア プ リ ケ ー ション の 起 動 制 御 の 様 子 をFig. 4に 示 す.

3.7 シ ス テ ム 情 報 の デ ー タ 量 DNASが 受 け 取 る 単 位 時 間 あ た り の デ ー タ 量 は ,通 信 の 頻 度 ,最 大 下 位 ノ ー ド 数 ,何 ノ ー ド 先 の 上 位 ノ ー ド ま で 自 ノ ー ド の シ ス テ ム 情 報 を 伝 え る か の 値 に よって 決 定 す る .こ れ ら の 値 は ,DNASの 起 動 時 に ユ ー ザ が 設 定 す る .な お ,1ノ ー ド の シ ス テ ム 情 報 の デ ー タ 量 は150Byte 200Byte程 度 で あ る .

例 え ば ,通 信 の 頻 度 を15秒 ,最 大 下 位 ノ ー ド 数 を 2,何ノード先の上位ノードまで自身のシステム情報を 伝 え る か の 値 を5と し た 場 合 ,一 番 負 荷 の か か る サ ー バ で は ,最 大6221+ 22 + 23+ 24+ 25)ノ ー ド の 情 報 が 一 定 時 間 に 受 信 す る こ と に な る .そ の 情 報 量 は 約

10kByte/15秒 である.最大下位ノード数と各ノードに

お け る シ ス テ ム の 負 荷 の 関 係 に 関 し て は5.3節 で 検 証 を 行 う.

4. DNAS

アプリケーションの例

4.1 アプリケーションの概要 DNAS上で動作す る ア プ リ ケ ー ション の 例 と し て ,膨 大 な 数 値 リ ス ト の 中 か ら 最 大 値 を 探 し 出 す 全 探 索 問 題 を 実 装 す る .実 装 す る ア プ リ ケ ー ション は ,タ ス ク 割 り 当 て ア プ リ ケ ー ション と タ ス ク 処 理 ア プ リ ケ ー ション の2つ か ら 構 成 さ れ る .

タ ス ク 割 り 当 て ア プ リ ケ ー ション は ,下 記 の 動 作 を

Table 1 Experimental environment(PC Cluster)

Name node1 - node5

CPU AMD Opteron 1.8GHz Memory DDR-SDRAM 512MByte Network Fast Ethernet(100Mbps)

行 う.

1. 全 探 索 領 域 を 分 割 し ,探 索 開 始 行 と 探 索 終 了 行 の 組 を 作 成 し ,そ れ を1つ の タ ス ク と す る . 2. も し 計 算 資 源 が 起 動 し て い れ ば 、計 算 資 源 へ の

タ ス ク の 割 り 当 て を 行 う.

3. 処 理 が 終 了 し た 計 算 資 源 か ら 処 理 結 果 の 情 報 を 受 け 取 る .

タスク処理アプリケーションは,指定された探索開始 行 か ら 探 索 終 了 行 ま で の 探 索 を 行 う.探 索 が 終 了 す る とタスク割り当てアプリケーションに結果を送信する.

4.2 プ ロ グ ラ ム の 説 明 タ ス ク 割 り 当 て ア プ リ ケ ー ション の プ ロ グ ラ ム の 一 部 をFig. 5,タ ス ク 処 理 ア プ リ ケ ー ション の プ ロ グ ラ ム の 一 部 をFig. 6に 示 す.

ま ず,タ ス ク 割 り 当 て ア プ リ ケ ー ション か ら 説 明 す る .Fig. 52行 目 か ら3行 目 で 探 索 領 域 の 分 割 と 各 ノ ー ド に 振 り 分 け ら れ る タ ス ク の 生 成 を 行って い る . 次 に ,4行 目 か ら5行 目 で タ ス ク を 実 行 可 能 ノ ー ド の リ ス ト を 作 成 し(3.2節 と3.6節 を 参 照 ),7行 目 か ら 10行目でその実行可能ノードに対しタスクの割り振り を 行 う.今 回 はfirst send関 数 を 用 い て ,タ ス ク 処 理 を 行 う ノ ー ド に ア プ リ ケ ー ション デ ー タ( タ ス ク )を 直 接 送 信 す る よ う に し た .な お ,ア プ リ ケ ー ション デ ー タ に 付 与 す る デ ー タ 識 別 子 は ,各 ノ ー ド の ホ ス ト 名 で あ る .

次 に ,タ ス ク 処 理 ア プ リ ケ ー ション の プ ロ グ ラ ム に つ い て 説 明 す る .Fig. 62行 目 に お い て ,自 ノ ー ド の ホ ス ト 名 の デ ー タ 識 別 子 と”TaskAllot”と い う ア プ リ ケーション識別子が付与されたデータを取得する.3 目 で ,得 ら れ た ア プ リ ケ ー ション デ ー タ か ら タ ス ク を 取得する.そして,5行目でそのタスクを処理し,最大 値 と な る 目 的 の デ ー タ を 取 得 す る .そ し て ,6行 目 に お い て ,”AppResult”と い う デ ー タ 識 別 子 を 付 与 し て , 第 一 引 数 で 指 定 し た ホ ス ト( 今 回 の 場 合 ,タ ス ク 割 り 当 て ア プ リ ケ ー ション が 動 作 し て い る ホ ス ト )に 送 信 す る .最 後 に 各 ノ ー ド の 結 果 をFig. 513行 目 か ら 15行 目 に 定 義 し た 関 数 で 受 け 取 る .

5. DNAS

の基本機能の性能評価

5.1 通信トポロジの動的再構成機能の検討 DNAS の 基 本 機 能 で あ る 通 信 ト ポ ロ ジ の 動 的 再 構 成 機 能 の 動 作 確 認 と ,通 信 ト ポ ロ ジ の 再 構 成 に 必 要 な 時 間 の 計 測 を 行 う.な お ,計 測 時 間 は20試 行 の 平 均 値 を 用 い た .

ま ず,ノ ー ド の 故 障 に よ る 通 信 ト ポ ロ ジ の 再 構 成 に 要する時間について計測する.初期設定として,Table 1に 示 す5台 の ノ ー ド をLANネット ワ ー ク で 接 続 し ,

(6)

node1 node2

node3

node4

node5

node1 node2

node4

node5

Fig.7 Dynamic restructuring function (when node is out of order)

node1

node2

node5

node3

node4

node1 node2

node3

node4

node5

node1 node2

node3

node4

node5

Fig.8 Dynamic restructuring function (when node is added)

Fig. 7の 左 図 の 状 態 でnode3DNASデ ー モ ン を 停 止 さ せ た .

通 信 ト ポ ロ ジ の 再 構 成 が 行 わ れ た 結 果 ,node5 node1に 接 続 先 を 変 更 し ,Fig. 7の 右 図 に 示 す 通 信 ト ポ ロ ジ が 構 成 さ れ た .node5node3の 故 障 を 検 知 し て か ら ,通 信 ト ポ ロ ジ の 再 構 成 が 終 了 す る ま で の 時 間 は71msで あった .

次 に ,下 位 ノ ー ド の 数 が 設 定 し た 上 限 値 に 達 し た こ と に よ る 通 信 ト ポ ロ ジ の 再 構 成 に 要 す る 時 間 に つ い て 計 測 す る .Table 1に 示 す5台 の ノ ー ド 上 の 下 位 ノ ー ド の 最 大 接 続 数 を2と し ,node1上 でDNASを 起 動 し , node2か らnode5の 上 位 ノ ー ド をnode1と し てDNAS を 同 時 に 起 動 し た(Fig. 8の 左 図 ).

通 信 ト ポ ロ ジ の 再 構 成 が 行 わ れ た 結 果 ,Fig. 8の 右 図 の 上 下 ど ち ら か の 通 信 ト ポ ロ ジ に なった( 但 し ,ど の ノ ー ド が 上 位/下 位 ノ ー ド に な る か は 毎 回 異 な る ).

す べ て の 下 位 ノ ー ド がnode1に 接 続 を 開 始 し て か ら , 通 信 ト ポ ロ ジ の 再 構 成 が 完 了 す る ま で の 時 間 は724ms で あった .

5.2 大 規 模 環 境 に お け る 動 的 再 構 成 機 能 の 検 討 3つ のPCク ラ ス タ と1台 の ノ ー ド( 計230ノ ー ド ) を 用 い た 大 規 模 環 境 に お け るDNASの 動 作 を 確 認 す る .実 験 環 境 をTable 2に 示 す.実 験 の 初 期 状 態 と し て ,そ れ ぞ れ のPCク ラ ス タ の 内 部 はLANネット ワ ー

Table 2 Experimental environment(Grid)

Name Number of node

Cluster A 10

Cluster B 216

Cluster C 3

Node D 1

Cluster C Custer B

Cluster A

Node D

node

Fig.9 Communication topology on the Grid

クで接続されており,各PCクラスタとNode Dとはイ ン タ ー ネット で 接 続 さ れ て い る .ま た ,下 位 ノ ー ド の 最 大 接 続 数 を4と し ,す べ て のPCク ラ ス タ の ゲ ー ト ウェイ ノ ー ド の 上 位 ノ ー ド をNode Dと し ,PCク ラ ス タ 内 は 全 て の ノ ー ド が ゲ ー ト ウェイ ノ ー ド を 上 位 ノ ー ド と し た 設 定 で ,す べ て の ノ ー ド 上 でDNASを 同 時 に 起 動 し た .

上記の初期設定でDNASを実行した結果をFig. 9 示 す.す べ て の ノ ー ド に お い て ,最 大 下 位 ノ ー ド 数 を

4としたツリートポロジを構成することが確認できた.

し か し な が ら ,Cluster Bの よ う に ノ ー ド 数 が 多 いPC ク ラ ス タ の 場 合 ,上 位 の ノ ー ド( 本 実 験 の 場 合 ,ゲ ー ト ウェイ に 近 い ノ ー ド )が 少 な い 下 位 ノ ー ド し か 持 た な い こ と が あ る た め ,全 体 の ツ リ ー ト ポ ロ ジ の 階 層 が 深 く な る こ と が わ かった .

5.3 最 大 下 位 ノ ー ド 数 と ロ ー ド ア ベ レ ー ジ に 関 す る検討 DNASの 特 徴 で あ る シ ス テ ム 情 報 の 分 散 管 理 に 対 す る 優 位 性 を 検 証 す る た め ,DNASが 動 作 す る ノ ー ド 数 を 一 定 に 保った ま ま ,最 大 下 位 ノ ー ド 数 を 変 化 さ せ た 場 合 の ロ ー ド ア ベ レ ー ジ の 変 化 に 関 す る 実 験 を 行った .

DNASが 動 作 す る ノ ー ド 数 を216,各 ノ ー ド の 最 大 下位ノード数を2, 4, 8, 16, 32, 64, 128DNAS間の通信 の頻度を15秒とした.最大下位ノード数が少ない値ほ ど,より分散している環境といえる.また,自ノードの シ ス テ ム 情 報 を 何 ノ ー ド 先 の 上 位 ノ ー ド ま で 送 信 す る か の 値 を 十 分 大 き く と り,ど の 最 大 下 位 ノ ー ド 数 の 場 合 も ,す べ て の ノ ー ド の シ ス テ ム 情 報 が 最 上 位 ノ ー ド に 集 ま る よ う に し た .そ し て ,最 大 下 位 ノ ー ド 数 を 変

(7)

Fig.10 Relation between number of lower nodes and load average

Table 3 Experimental environment(PC Cluster)

CPU AMD Opteron 1.8GHz * 2 (Dual CPU)

Memory DDR-SDRAM 2GByte

Network Gigabit Ethernet(1000Mbps)

化 さ せ た 場 合 に お け る 最 上 位 ノ ー ド の ロ ー ド ア ベ レ ー ジ を 計 測 し た .結 果 をFig. 10に 示 す.な お ,本 実 験 に 用 い た ノ ー ド の ス ペック をTable 3に 示 す.

結果をFig. 10の結果より,最大下位ノード数が少な

い ほ ど ,つ ま り よ り 分 散 さ せ た 環 境 の 方 が ノ ー ド に か か る 負 担 が 少 な い こ と が わ かった .

6.

関連研究

GMWS(3)は マ ス タ ワ ー カ 型 の ミ ド ル ウェア で あ り,

シ ス テ ム の 起 動 お よ び ノ ー ド 間 の 通 信 にGlobus(9) 利用し,強固なセキュリティ機構を有している.しかし,

シ ス テ ム の 起 動 時 に 構 成 す る 計 算 資 源 数 を 決 定 す る 必 要 が あ る た め ,シ ス テ ム 起 動 後 に 計 算 資 源 の 追 加 お よ び 削 除 が で き な い .ま た 全 て の ノ ー ド が1台 の ノ ー ド に 接 続 さ れ る た め ,そ の ノ ー ド に 負 荷 が 集 中 す る .

Ninf-G(6)/Ninf-1(7)を 利 用 し た モ デ ル は ク ラ イ ア ン トサーバモデルを多段的に適用することにより,階層構 造のネットワークを実現している.また,Ninf-G/Ninf-1 を 利 用 し た モ デ ル は ,イ ン タ ー ネット 上 で は セ キュア Ninf-Gを 用 い ,ロ ー カ ル ネット ワ ー ク 上 に は 高 速 な Ninf-1を 用 い る こ と で ,セ キュリ ティと 性 能 の 両 立 を 図っている.しかしながら,Ninf-G/Ninf-1はユーザが明 示 的 に 階 層 構 造 を 設 計 す る 必 要 が あ り,ま た ,GMWS と 同 様 に シ ス テ ム 起 動 後 に 計 算 資 源 の 追 加 ,削 除 が で き な い .

Jojo2(1)で は マ ス タ ワ ー カ 型 を も と に し た 階 層 構 造 を 定 義 し て お り,計 算 資 源 の 動 的 な 変 化 を 前 提 と し た プ ロ グ ラ ミ ン グ モ デ ル を 提 供 し て い る .Phoenix(2) 階 層 型 の ネット ワ ー ク に 適 応 可 能 な 並 列 計 算 ラ イ ブ ラ リ で あ り,WANに お い て 独 自 のAPIを 用 い た 集 合 通 信 を 可 能 と す る .Jojo2Phoenixと も に 計 算 環 境 が 動 的に変化することを想定している点ではDNASと同じ

で あ る が ,環 境 の 変 化 に 応 じ て 動 的 に 通 信 ト ポ ロ ジ を 変 化 さ せ る こ と は で き ず,ま た 計 算 に 用 い る ノ ー ド の 負荷率などの取得をアプリケーションから行うことで,

計 算 資 源 の 状 況 に よって ア プ リ ケ ー ション の 動 作 を 柔 軟 に 変 化 さ せ る こ と は で き な い .

7.

まとめと今後の課題

本 論 文 で は ,グ リッド の 計 算 資 源 の シ ス テ ム 情 報 と ア プ リ ケ ー ション デ ー タ を 簡 易 に 取 得 で き る 機 能 を 持 つ グ リッド ミ ド ル ウェアDNASを 提 案 し た .ユ ー ザ は DNASを 用 い る こ と で ,シ ス テ ム の 動 的 変 化 に 対 応 で き る ア プ リ ケ ー ション の 開 発 と 連 携 を 行 う こ と が で き る .ま た ,DNASは 通 信 ト ポ ロ ジ の 動 的 再 構 成 機 能 と ス レッド 生 成 数 の 制 限 な ど の 機 能 を 有 し ,そ れ ぞ れ が 正 常 に 動 作 す る こ と を 確 認 し た .

今 後 の 課 題 と し て は 以 下 が 挙 げ ら れ る .

グリッドでよく用いられる実アプリケーションを

DNASで実装し,データ通信のオーバヘッドに関 す る 検 討 を 行 う

異 な る 複 数 の ユ ー ザ の ア プ リ ケ ー ション 同 士 を 連 携 さ せ る こ と を 考 え た 場 合 ,ユ ー ザ 認 証 の 仕 組 み をDNASに 追 加 す る 必 要 が あ る

現 在 の 実 装 で は ,最 上 位 ノ ー ド に 障 害 が 起 き た 場 合 に つ い て は 対 応 し て い な い .そ の 対 策 と し て,DNAS起動時に最上位ノードのみを他のノー ド と 区 別 し て お き ,も し 最 上 位 ノ ー ド に 障 害 が 発生した場合は,最上位ノードが持っていた下位 ノードの内の1つが最上位ノードとなり,他の下 位 ノ ー ド は 新 し い 最 上 位 ノ ー ド を 上 位 ノ ー ド と し て 自 動 的 に 登 録 す る 仕 組 み を 作 成 す る こ と が 挙 げ ら れ る

3.6節 で 述 べ た ア プ リ ケ ー ション の 制 御 機 構 に つ いては,condor(8)などの既存のジョブスケジュー リングシステムを利用することで,グリッドの計 算資源をより効率的に利用できるようにする.ま た,複数のノードを用いてアプリケーションを実 行 し て い る 場 合 ,計 算 に 用 い て い る ノ ー ド の ア プ リ ケ ー ション が 中 断 す る と ,ア プ リ ケ ー ション 全 体 の 挙 動 に 影 響 を 与 え る 可 能 性 が あ る .そ の た め ,負 荷 の 高 い ノ ー ド か ら 負 荷 低 い 別 の ノ ー ド に ア プ リ ケ ー ション を 自 動 的 に 委 譲 さ せ る 機 構 を 作 成 す る

5.2節 で 述 べ たDNASが 構 成 す る 通 信 ト ポ ロ ジ は ,ノ ー ド 数 に 対 し て 階 層 が 深 く な る 可 能 性 が あ る .ま た ,ノ ー ド の 追 加 ,削 除 を 行った 場 合 も 同 様 の 可 能 性 が あ る た め ,任 意 の タ イ ミ ン グ で 通 信 ト ポ ロ ジ を 均 等 な 深 さ の 階 層 に す る た め に 再 構 成 す る 機 能 が 必 要 で あ る

参考文献

(8)

(1) 青 木 仁 志,中 田 秀 基,田 中 康 司,松 岡 聡: 動 的 な ノ ー ド 群 構 成 を 備 え た 階 層 型 グ リッド 環 境: Jojo2, 進 的 計 算 基 盤 シ ス テ ム シ ン ポ ジ ウ ムSACSIS2006, pp.101-108 (2006).

(2) Hideo Saito, Kenjiro Taura, Takashi Chikayama:

Collective Operations for Wide-area Message Pass- ing Systems Using Adaptive Spanning Trees, 情 報 処理学会論文誌コンピューティングシステムVol.46 No. SIG 12 , pp. 373-383 (2005).

(3) Yusuke Tanimura, Tomyuki Hiroyasu, Mitsunori Miki: Development of Master-Worker System for The Computational Grid,IPSJ Transactions on Ad- vanced Computing Systems, Vol.45, No.06 pp. 197- 207 (2004).

(4) 折戸 俊彦,廣安 知之,三木 光範: グリッド環境にお け るDNAS2の 実 行 テ ス ト お よ び そ の 検 討, 先 進 的 計 算 基 盤 シ ス テ ム シ ン ポ ジ ウ ムSACSIS2005Vol, No.5, pp. 260-261.

(5) 青 木 仁 志 ,中 田 秀 基 ,松 岡 聡: 大 規 模 グ リッド 環 境 下 で のJojoの 評 価, 先 進 的 計 算 基 盤 シ ス テ ム シ ン ポ ジ ウ ムSACSIS2005Vol, No.5, pp. 266.

(6) Yoshio Tanaka, Hiroshi Takemiya, Hidemoto Nakada and Satoshi Sekiguchi. Design, implementation and performance evaluation of GridRPC programming middleware for a largescale computational Grid. Pro- ceeding of 5th IEEE/ACM International Workshop on Grid Computing (2004).

(7) 中田秀基,高木浩光,松岡聡,長嶋雲兵,佐藤三久, 口智嗣. Ninfに よる広域分散並列計算.情報処理学 会 論 文 誌vol.39, no.6, pp. 1818-1826 (1998).

(8) Michael Litzkow, Miron Livny, and Matt Mutka.

Condor - A Hunter of Idle Workstations, Proceedings of the 8th International Conference of Distributed Computing Systems, pp.104-111 (1988).

(9) I. Foster and C. Kesselman: Globus: A Metacomput- ing Infrastructure Toolkit, International Journal of Supercomputer Applications, Vol.11, No.2, pp. 115- 128 (1997).

Fig. 3 Dynamic restructuring of communication topology ノ ー ド に 対 し て ,下 位 ノ ー ド の リ ス ト か ら 無 作 為 に 選 択 し た 1 台 を 移 動 先 の ノ ー ド の 情 報 と し て 送 信 す る .情 報 を 受 信 し た 下 位 ノ ー ド は 上 位 ノ ー ド の 情 報 を 代 替 ノ ー ド と し て 登 録 し ,受 信 し た 情 報 の ノ ー ド に 対 し て 接 続 を 試 み る
Table 1 Experimental environment(PC Cluster)
Fig. 7 の 左 図 の 状 態 で node3 の DNAS デ ー モ ン を 停 止 さ せ た . 通 信 ト ポ ロ ジ の 再 構 成 が 行 わ れ た 結 果 , node5 は node1 に 接 続 先 を 変 更 し , Fig
Table 3 Experimental environment(PC Cluster)

参照

関連したドキュメント

腐植含量と土壌図や地形図を組み合わせた大縮尺土壌 図の作成 8) も試みられている。また,作土の情報に限 らず,ランドサット TM

当社は、お客様が本サイトを通じて取得された個人情報(個人情報とは、個人に関する情報

Giuseppe Rosolini, Universit` a di Genova: [email protected] Alex Simpson, University of Edinburgh: [email protected] James Stasheff, University of North

「系統情報の公開」に関する留意事項

Google マップ上で誰もがその情報を閲覧することが可能となる。Google マイマップは、Google マップの情報を基に作成されるため、Google

排出量取引セミナー に出展したことのある クレジットの販売・仲介を 行っている事業者の情報

排出量取引セミナー に出展したことのある クレジットの販売・仲介を 行っている事業者の情報

(ECシステム提供会社等) 同上 有り PSPが、加盟店のカード情報を 含む決済情報を処理し、アクワ