• 沒有找到結果。

實作一個在UNIX環境上的資源監控系統

N/A
N/A
Protected

Academic year: 2021

Share "實作一個在UNIX環境上的資源監控系統"

Copied!
39
0
0

加載中.... (立即查看全文)

全文

(1)

國立交通大學

資訊學院 資訊學程

碩 士 論 文

實 作 一 個 在 UNIX 環 境 上 的 資 源 監 控 系 統

Implementing a resource monitoring system on UNIX

environment

研 究 生 : 王 鵬 翔

指 導 教 授 : 王 豐 堅 教 授

(2)

實 作 一 個 在 UNIX 環 境 上 的 資 源 監 控 系 統

Implementing a resource monitoring system on UNIX

environment

研 究 生 : 王 鵬 翔 Student: Peng-Hsiang Wang 指 導 教 授 : 王 豐 堅 Advisor: Dr. Feng-Jian Wang

國 立 交 通 大 學

資 訊 學 院 資 訊 學 程

碩 士 論 文

A Thesis

Submitted to College of Computer Science National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Master of Science

in

Computer Science Apr 2010

Hsinchu, Taiwan, Republic of China

(3)

實 作 一 個 在 UNIX 環 境 上 的 資 源 監 控 系 統 學 生 : 王 鵬 翔 指 導 教 授 : 王 豐 堅 國 立 交 通 大 學 資 訊 學 院 資 訊 學 程 碩 士 班 摘 要 在 UNIX 環 境 中 , 同 時 使 用 多 台 的 工 作 站 , 若 不 能 有 效 的 分 配 負 載 , 不 僅 造 成 工 作 站 使 用 率 低 , 還 會 導 致 服 務 品 質 不 佳 。 為 了 提 高 使 用 率 , 許 多 使 用 者 會 採 用 Load Sharing 系 統 來 改 善 。 然 而 , 市 面 上 的 Load Sharing 系 統 皆 只 針 對 CPU 的 utilization 來 做 管 理 , 使 用 對 象 侷 限 在 designer 的 batch job, 對 其 它 工 作 站 資 源 ( 例 如 : Memory) 及 使 用 者 的 便 利 則 考 慮 不 多 。 在 本 篇 論 文 中,我 們 提 供 了 一 套 資 源 監 控 系 統 給 所 有 使 用 者。它 可 以 掌 握 所 有 工 作 站 資 源 的 使 用 狀 態 , 讓 使 用 者 輕 鬆 地 挑 選 可 利 用 的 工 作 站 來 作 業 , 減 少 因 多 人 共 用 一 台 工 作 站 導 致 其 它 工 作 站 閒 置 的 情 況 發 生 。 這 套 資 源 監 控 系 統 以 perl/Tk 來 撰 寫,架 構 為 client-server,它 提 供 直 覺 且 友 善 的 GUI 介 面 給 使 用 者 。 同 時 它 採 用 socket 方 式 來 傳 遞 資 訊 , 並 每 60 秒 更 新 資 訊 一 次 。 除 了 上 述 功 能 的 提 供 外 , 我 們 也 根 據 軟 體 的 使 用 性 、 容 錯 能 力 、 效 能 及 重 複 使 用 性 分 析 , 確 保 它 的 品 質 。 關 鍵 字 : 負 載 共 用 , 電 子 設 計 自 動 化 , 資 源 監 控

(4)

Implementing a resource monitoring system on UNIX environment

Student: Peng-Hsiang Wang Advisor: Dr. Feng-Jian Wang

Degree Program of Computer Science

National Chiao Tung University

ABSTRACT

In an UNIX environment, if the loads cannot be distriputed effectively, the execution in multiple workstations might have several defects, e.g., low usage rate in workstations, poor service quality, etc. Currently, many users apply load sharing system to enhance the usage rate. However, commercial systems of resource sharing managements are based on CPU utilization and their functions work on the management of designer ’s batch jobs only. To user, the usability and resource accessing of other workstations are less concerned.

In this thesis, we descri be a resource monitoring system, RMS, to solve above problems. RMS is designed to monitor the usage of all the workstation resources. By providing an intuitive and friendly interface, RMS can help reduce the overall loading in the whole system since the available

workstation(s) can be easily selected to work. The second part in RMS is to update related information in each workstation (e.g., CPU status, memory) every 60 seconds. This part can clear the garbage process/memory and help increase utilization too. RMS is developed with perl/Tk and based on

client-server architecture, where socket method is used for data exchage. Finally, we also analyze usability, fault tolerance, efficiency and reusability to ensure its quality.

(5)

誌 謝

首 先 感 謝 我 的 指 導 教 授 王 豐 堅 老 師 在 學 生 就 學 期 間 耐 心 地 給 予 指 導 與 彈 性 的 研 討 時 間 。 再 者 感 謝 口 試 委 員 吳 毅 成 教 授 、 梁 德 容 教 授 及 黃 俊 龍 教 授 願 意 擔 任 學 生 的 口 試 委 員 , 並 且 在 口 試 時 , 提 供 學 生 在 研 究 上 可 以 再 改 善 的 寶 貴 意 見 , 使 本 論 文 得 以 修 改 得 更 完 善 。 對 在 職 進 修 的 研 究 生 而 言,同 時 有 工 作 上 和 課 業 上 的 雙 重 壓 力,所 以 必 須 感 謝 公 司 主 管 張 念 祖 在 學 生 就 學 期 間 工 作 上 的 安 排 , 以 及 溫 坤 龍 同 仁 、 石 惠 如 同 仁 的 協 助 , 使 得 學 生 得 以 順 利 完 成 學 業 。 最 後 , 要 感 謝 我 的 家 人 一 直 給 我 無 限 的 支 持 , 讓 我 能 夠 專 心 學 習 , 而 無 後 顧 之 憂 。

(6)

目 錄

中 文 摘 要 ... i 英 文 摘 要 ... ii 誌 謝 ... iii 目 錄 ... iv 表 目 錄 ... v 圖 目 錄 ... vi 第 一 章 、 緒 論 ... 1 1.1 動 機 ... 1 1.2 目 的 ... 2 1.3 章 節 簡 介 ... 2 第 二 章 、 背 景 ... 3

2.1 UNIX 環 境 之 主 流 Load Sharing 系 統 比 較 ... 3

2.2 UNIX 環 境 之 Load Sharing 系 統 的 缺 點 ... 5

第 三 章 、 設 計 與 架 構 ... 7 3.1 設 計 概 念 與 目 標 ... 7 3.2 資 源 監 控 系 統 架 構 ... 8 3.3 使 用 者 介 面 ... 10 3.4 資 源 監 控 系 統 設 計 方 式 ... 12 3.5 程 式 流 程 圖 ... 14 第 四 章 、 實 作 ... 18 4.1 開 發 環 境 需 求 ... 18 4.2 實 作 結 果 ... 18 4.3 資 源 監 控 系 統 的 品 質 ... 23 第 五 章 、 結 論 及 未 來 方 向 ... 27 5.1 結 論 ... 27 5.2 未 來 方 向 ... 27 參 考 文 獻 ... 29

(7)

表 目 錄

(8)

圖 目 錄

圖 3.1 資 源 監 控 系 統 架 構 圖 ... 8 圖 3.2 網 路 環 境 結 構 圖 ... 9 圖 3.3 資 源 監 控 系 統 程 式 結 構 圖 ... 9 圖 3.4 資 源 監 控 系 統 管 理 介 面 圖 ... 10 圖 3.5 資 源 監 控 系 統 執 行 流 程 圖 1 ... 13 圖 3.6 資 源 監 控 系 統 執 行 流 程 圖 2 ... 14 圖 3.7 RMS-Server Process 流 程 圖 ... 15 圖 3.8 Registry_Update Process 流 程 圖 ... 15 圖 3.9 Client_Invoke Process 流 程 圖 ... 16 圖 3.10 RMS-Client Process 流 程 圖 ... 16 圖 3.11 RIP 流 程 圖 ... 17 圖 4.1 資 源 監 控 系 統 群 組 圖 ... 19 圖 4.2 資 源 監 控 系 統 工 具 區 圖 ... 19 圖 4.3 資 源 監 控 系 統 View 設 定 圖 ... 20 圖 4.4 資 源 監 控 系 統 adminfo 功 能 圖 ... 20 圖 4.5 OS 及 EDA 測 試 結 果 圖 ... 21 圖 4.6 OS 及 Utility 測 試 結 果 圖 ... 21 圖 4.7 資 源 監 控 系 統 help 說 明 圖 ... 21 圖 4.8 資 源 監 控 系 統 mark 說 明 圖 ... 22 圖 4.9 資 源 監 控 系 統 主 機 狀 態 區 圖 ... 22 圖 4.10 資 源 監 控 系 統 CPU 顆 數 設 定 圖 ... 23

(9)

第 一 章 、 緒 論

1.1 動 機

在 探 討 一 個 系 統 效 率 的 時 候 , 資 源 的 使 用 並 不 只 有 CPU, 還 包 含 Memory、 Disk 等 , 甚 至 作 業 系 統 的 版 本 也 是 ; 在 過 去 已 有 許 多 演 算 法 被 提 出 ( [4], [5], [6], [7], [8], [10], [12], [14], [15], [16], [17], [18]), 雖 然 這 些 方 法 各 有 其 特 色 、 分 析 及 論 證 , 但 end-user 要 的 卻 不 是 這 樣 。 在 UNIX-like 的 環 境 下 , 我 們 觀 察 到 : 1) designer 常 需 要 simulation, 所 以 需 要 強 大 的 運 算 主 機 資 源 2) layout 人 員 要 做 繪 圖 , 圖 中 包 含 大 量 的 component, 所 以 需 要 較 大 的 記 憶 體 資 源 3) 對 使 用 EDA( Electronic Design Automation) 人 員 而 言 , 常 發 生 某 些 vendor 因 併 購 或 淘 汰 , 不 再 支 援 某 些 產 品 , tool 無 法 更 新 , 或 者 當 初 購 買 時,license 綁 定 在 某 主 機 上,故 只 能 綁 定 在 某 些 platform、版 本、 主 機 上 執 行,也 有 最 新 的 EDA 只 支 援 到 某 些 platform、版 本 情 況 發 生 4) 當 在 趕 計 劃 的 尖 峰 時 刻 , 資 源 使 用 率 高 ,資 源 搶 佔 情 形 嚴 重 , end-user 常 反 應 資 源 使 用 不 足 , 並 質 疑 IT 人 員 讓 許 多 主 機 閒 置 而 未 釋 出 給 使 用 者 。

雖 然 在 UNIX-like 的 環 境 下 , 市 面 上 已 有 許 多 Load Sharing 的 工 具 [3], [13], [25], [26], [27],但 大 都 是 針 對 需 要 CPU 運 算 的 Batch Job 作 處 理,對 非 Batch Job 則 沒 有 幫 助,只 能 解 決 上 述 第 1 點,再 則 , 隨 著 科 技 的 進 步 , 現 在 的 主 機 大 多 已 非 單 一 CPU 的 主 機 , 雙 CPU, 甚 至 更 多 CPU 的 主 機 已 漸 漸 普 及,而 多 CPU 主 機 則 帶 來 一 些 執 行 上 的 差 異 , 一 般 來 說 , 有 的 Load Sharing 管 理 系 統 , 在 分 配 CPU 資 源 時 , 皆 是 以 CPU 平 均 值 來 決 定 分 配 的 , 然 而 , 以 此 方 法 略 顯 不 足 。 舉 例 來 說 , 有 二 台 主 機 , 甲 台 主 機 為 雙 CPU 主 機 , 而 乙 台 為 8 CPU 主 機 ; 當 甲 主 機 其 中 一 顆 CPU 被 使 用 , 其 平 均 值 為 50%; 而 乙 主 機 其 中 6 顆 CPU 被 使 用 時 , 其 平 均 值 為 75%; 若 依 現 有 Load Sharing 管 理 系 統 , 下 一 個 工 作 會 被 分 配 到 甲 主 機 , 而 事 實 上 乙 主 機 比 甲 主 機 的 資 源 更 為 寬 裕 。 更 進 一 步 說 , 在 企 業 內 大 都 還 留 有 舊 型 主 機 , 食 之 無 味 , 棄 之 可 惜 , 如 果 一 個 需 要 大 量 運 算 的 job 被 分 配 到 舊 主 機 , 它 需 要 花 較 多 的 時 間 來 執 行 。 所 以 , 若 能 提 供 一 個 簡 單 直 觀 的 工 具 , 讓 end-user 能 掌 握 當 下 所 有 主 機 與 詳 細 的 資 源 使 用 情 形 , 包 含 硬 體 Spec.及 每 顆 CPU 的 使 用 情 形 , 以 方 便 其 尋 找 可 利 用 之 主 機 , 一 則 可 提 高 負 載 平 衡 , 二 則 可 讓 end-user 解 除 資 源 利 用 不 足 的 疑 慮 或 不 公 平 ?

(10)

1.2 目 的

對 於 以 上 的 不 便 與 限 制 , 我 們 提 供 了 一 個 動 態 的 資 源 監 控 系 統 ( Resource Monitor System, RMS) 來 解 除 Batch Job 的 限 制 。 該 資 源 監 控 系 統 隨 時 確 認 主 機 存 活 狀 態,有 效 掌 握 所 有 主 機 資 源 的 使 用 狀 態 , 並 且 依 作 業 平 台 ( Solaris、 Linux、 HP) 及 記 憶 體 大 小 ( 24GB 以 下 、 32GB、 64GB 以 上 ) 來 分 類 , 讓 使 用 者 可 快 速 地 找 到 可 利 用 的 資 源 。 而 此 資 源 監 控 系 統 是 一 個 獨 立 系 統 , 對 於 之 前 已 建 立 的 Load Sharing 管 理 系 統 沒 有 任 何 衝 突 , 仍 可 繼 續 使 用 , 不 會 浪 費 已 有 建 置 成 本 。

1.3 章 節 簡 介

本 篇 論 文 的 內 容 大 致 如 下 第 二 章 將 對 背 景 做 些 介 紹 , 包 含 現 有 Load Sharing 系 統 工 具 的 比 較 及 使 用 上 的 優 缺 點 。 第 三 章 則 詳 細 說 明 本 資 源 監 控 系 統 的 設 計 架 構 及 運 作 方 式 。 第 四 章 會 說 明 此 資 源 監 控 系 統 的 實 作 結 果 及 性 能 分 析 。 第 五 章 將 會 作 些 討 論 並 提 到 此 系 統 未 來 的 可 改 善 目 標 。

(11)

第 二 章 、 背 景

在 UNIX 環 境 下 , 目 前 市 面 上 已 有 許 多 Load Sharing 系 統 [13], 其 優 點 包 括 可 平 行 處 理 job、動 態 負 載 平 衡、GUI 模 組 化、容 錯 性 佳、彈 性 排 程 、 授 權 機 制 等 , 功 能 相 當 強 大 ; 但 亦 有 不 足 的 地 方 , 比 如 source code 不 開 放 、 價 錢 昂 貴 、 限 定 執 行 的 作 業 平 台 、 只 能 處 理 batch job 等 。

2.1 UNIX 環 境 之 主 流 Load Sharing 系 統 比 較

表 2.1 對 目 前 市 場 上 二 套 主 流 的 Load Sharing 管 理 軟 體 作 比 較 [26], [27],第 一 套 為 LSF( Load Share Facility),第 二 套 為 SGE( SUN Grid Engine) 系 統 。 表 2.1 LSF 及 SGE 比 較 表 LSF SGE 異 質 平 台 支 援 支 援 SUN、 Apple MacOS、HP、IBM AIX、 Linux、Windows、NEC SX-8、 SGI Irix 支 援 SUN、 Apple MacOS、HP、IBM AIX、 Linux、 Windows 產 品 支 援 Platform 專 門 24x7 支 援 提 供 技 術 資 料 庫 及 使 用 web 支 援 可 靠 度 和 容 錯 有 check-pointing, job failure 會 重 新 執 行 , fail-over 時 保 證 0 downtime, 可 靠 度 和 容 錯 度 高 有 容 錯 能 力 且 可 靠 度 佳 規 模 大 小 目 前 已 超 過 2000 個 客 戶 使 用 , 包 含 100 以 上 cluster, 200,000 顆 CPU, 500,000 active jobs 規 模 最 大 可 到 63,000 顆 CPU 報 表 使 用 LSF 本 身 提 供 的 accounting 來 收 集 資 料 , 精 確 度 較 高 使 用 UNIX 提 供 的 accounting 來 收 集 資 料 價 格 價 格 昂 貴 , 以 CPU 顆 數 來 計 算 有 免 費 版 及 Enterprise 版 本 ,

(12)

Enterprise 版 的 價 格 相 比 LSF 也 較 低 在 表 2.1 中 , 我 們 從 下 述 六 個 角 度 出 發 去 判 斷 彼 此 的 優 劣 1. 異 質 平 台 支 援

LSF 支 援 的 作 業 平 台 包 含 支 援 SUN、Apple MacOS、HP、IBM AIX、 LINUX、 Windows( 2000、 XP、 Vista、 2003、 2008)、 NEC SX-8、 SGI Irix 等 。

SGE 可 執 行 主 機 的 作 業 平 台 包 含 SUN、Apple MacOS、HP、IBM AIX、 Linux、Windows( 2000、XP),但 Master 主 機 必 須 要 為 SUN 或 Linux。 2. 產 品 支 援 Platform 公 司 的 LSF 產 品,有 專 門 人 員 作 每 天 24 小 時 的 即 時 技 術 服 務 , 也 有 web portal 提 供 服 務 。 SGE 則 提 供 技 術 資 料 庫 及 使 用 web 服 務 , 但 沒 有 每 天 24 小 時 即 時 服 務 , 所 以 不 一 定 可 立 即 解 決 使 用 者 的 問 題 。 3. 可 靠 度 和 容 錯

LSF 有 check-pointing, 若 job failure, 將 自 動 重 新 執 行 , 且 若 主 機 fail-over 時 , 保 證 0 downtime , job 不 會 因 軟 硬 體 錯 誤 而 遺 失 , 可 靠 度 和 容 錯 度 高 。

SGE 也 有 不 錯 的 容 錯 能 力 及 可 靠 度,但 偶 爾 會 有 job 執 行 失 敗 情 況 發 生 。

4. 規 模 大 小

LSF 目 前 已 超 過 2000 個 客 戶 使 用 , 包 含 100 以 上 cluster, 200,000 顆 CPU, 500,000 active jobs。

SGE 其 規 模 最 大 可 管 理 到 63,000 顆 CPU。 5. 報 表

在 收 集 job 的 running 和 complete 資 料 中 , LSF 使 用 本 身 提 供 的 accounting 系 統 , 精 確 度 較 高 , 且 報 表 能 力 強 , 可 依 使 用 者 、 主 機 、 EDA license 的 使 用 等 條 件 , 製 作 出 華 麗 的 報 表 。

SGE 則 使 用 UNIX 提 供 的 accounting 來 收 集 資 料,其 報 表 能 力 比 較 陽 春 。

6. 價 格

(13)

CPU 的 二 倍 , 所 以 整 體 建 置 費 用 昂 貴 。

SGE 則 分 免 費 版 及 Enterprise 版,即 使 是 Enterprise 版,其 建 置 費 用 也 比 LSF 低 。 由 表 2.1 的 比 較 表 可 知 LSF 比 SGE 在 許 多 方 面 有 優 勢,功 能 性 較 SGE 強 大 , 但 並 不 意 味 著 LSF 就 可 以 完 全 取 代 SGE。 何 況 , 除 了 功 能 性 外 , SGE 也 有 相 對 優 點 , 比 如「 價 格 」: LSF 須 花 錢 購 買 , 且 價 格 不 斐 , 對 數 量 眾 多 的 主 機,整 體 建 置 費 用 較 為 昂 貴,而 SGE 有 免 費 版 及 Enterprise 版 本,只 要 些 許 花 費 與 客 製 化,就 能 達 到 類 似 效 能,僅 管 它 有 較 多 限 制。 而 且 隨 著 Linux 的 廣 泛 使 用 、 功 能 的 提 昇 、 報 表 功 能 的 加 強 、 EDA tool 的 support 等 多 項 功 能 提 升,近 年 來 SGE 的 市 佔 率 已 有 相 當 的 提 升,「 價 格 」 永 遠 是 企 業 的 主 要 考 量 之 一 。

2.2 UNIX 環 境 之 Load Sharing 系 統 的 缺 點

除 前 一 節 所 說 UNIX 環 境 之 缺 點 外 , 我 們 亦 從 end-user 與 system administrator 這 兩 個 角 度 , 分 析 其 使 用 上 的 缺 陷

1. End-user 方 面

( 1) 現 有 Load Sharing [13, 26, 27] 系 統 中 , 要 submit 的 job 必 須 為 batch job, 若 不 是 , 則 無 法 使 用 此 Load Sharing 系 統 處 理 。 ( 2) 現 有 Load Sharing 系 統 會 限 制 在 某 些 作 業 平 台 上 才 有 支 援 。 ( 3) 使 用 者 只 能 掌 握 部 分 的 主 機 狀 態,無 法 全 面 掌 握 目 前 所 有 主 機 的 狀 態 。 ( 4) 需 要 資 源 監 控 系 統 提 供 立 即 的,且 更 為 詳 盡 的 主 機 資 源 使 用 狀 態 , 包 含 每 顆 CPU 的 使 用 情 形 、 軟 體 版 本 , 及 硬 體 Spec.等 , 以 協 助 使 用 者 開 發 。 2. System administrator 方 面

( 1)必 須 用 其 Load Sharing 管 理 系 統 的 方 法 或 指 令 來 submit job, 若 有 使 用 者 不 遵 照 規 則 , 則 可 能 出 現 資 源 搶 佔 情 形 。

( 2) 建 置 費 用 高 昂 , 企 業 可 能 先 只 利 用 些 許 數 量 的 computing nodes 建 立 此 Load Sharing 系 統 。

( 3) source code 不 開 放 或 有 限 制 , 客 製 化 能 力 有 限 。 在 UNIX 環 境 中 , 現 有 的 Load Sharing 系 統 皆 針 對 CPU 的

(14)

utilization 做 管 理 , 對 於 電 腦 主 機 其 它 資 源 ( 如 : Memory) 則 無 能 為 力,市 面 上 也 看 不 到 能 提 高 其 它 資 源 使 用 率 的 軟 體,鑒 於 以 上 的 種 種 缺 點 , 我 們 將 提 供 一 個 工 具 來 解 決 上 述 的 問 題 。 這 一 工 具 除 了 保 障 現 有 Load Sharing 運 行 架 構 正 常 外 , 它 也 讓 所 有 使 用 者 能 容 易 監 控 所 有 主 機 資 源 ,以 達 到 互 補 之 效 。換 句 話 說 , 這 一 工 具 將 讓 使 用 者 輕 鬆 地 尋 找 可 利 用 之 主 機 來 執 行 , 以 提 高 工 作 效 率 。

(15)

第 三 章 、 設 計 與 架 構

3.1 設 計 概 念 與 目 標

本 資 源 監 控 系 統 不 但 要 與 原 有 的 load sharing 系 統 達 到 互 補 之 效,而 且 最 好 還 能 給 所 有 人 員 使 用,並 非 侷 限 load sharing 使 用 人 員 , 因 此 , 考 慮 多 方 需 求 , 我 們 對 其 使 用 者 展 開 意 見 調 查 ,希 望 資 源 監 控 系 統 能 提 供 哪 些 功 能 及 目 標 , 以 下 為 調 查 結 果 , 整 理 如 下 1. System Administrator 方 面 ( 1) 確 認 資 源 監 控 系 統 運 作 時 不 會 有 dead lock 現 象 。 ( 2) 確 認 資 源 監 系 統 運 作 時 不 會 當 機 。 ( 3) 需 有 良 好 的 使 用 性 , 容 易 學 習 及 使 用 。 ( 4) 需 有 良 好 的 效 率 , 能 快 速 的 提 供 資 訊 給 使 用 者 。 ( 5) 精 簡 空 間 的 使 用 , 不 會 因 持 續 執 行 而 讓 使 用 空 間 成 長 。 ( 6) 錯 誤 發 生 後 的 回 復 能 力 , 亦 即 若 系 統 有 非 預 期 的 因 素 而 中 斷 , 需 能 快 速 回 復 服 務 。 ( 7) 可 再 次 使 用 性 , 亦 即 容 易 移 植 , 相 容 性 高 , 且 維 護 容 易 。 ( 8) 若 新 增 主 機 時 , 可 自 動 抓 取 新 主 機 之 所 有 Hardware spec., 並 更 新 至 主 機 資 訊 檔 。 ( 9) 因 主 機 保 留 或 benchmark, 為 避 免 不 相 關 人 員 誤 選 , 提 供 可 依 群 組 來 設 定 主 機 觀 看 權 限 , 讓 相 關 之 群 組 人 員 才 可 看 到 該 主 機 。 2. End-User 方 面

( 1) 提 供 所 有 主 機 之 各 項 資 源 使 用 資 訊 ( CPU、 memory、 swap、 users… )及 軟 硬 體 資 訊( OS、kernel version、memory size、 CPU Qty… )。 ( 2)提 供 系 統 資 訊 即 時 更 新 及 定 時 更 新 功 能,定 時 更 新 時 間 為 每 60 秒 更 新 一 次 。 ( 3) 為 方 便 使 用 者 尋 找 主 機 , 各 項 狀 態 區 的 欄 位 ( 如 主 機 名 稱 、 memory、 swap… 等 ) 可 依 升 /降 冪 排 列 。 ( 4) 因 所 提 供 的 主 機 資 訊 眾 多 , 使 用 者 可 依 個 人 喜 好 , 來 決 定 哪 些 資 訊 要 顯 示 。 ( 5) 為 避 免 畫 面 呈 現 過 寬 或 過 長 , CPU 欄 位 可 依 個 人 喜 好 , 來 設 定 每 列 要 顯 示 之 CPU 顆 數 。 ( 6) 所 有 主 機 狀 態 區 的 欄 位 可 依 個 人 喜 好 , 來 設 定 其 顯 示 的 順 序 。 ( 7) 除 可 使 用 GUI 使 用 外 , 亦 提 供 此 系 統 之 command-line mode,

(16)

可 將 資 源 監 控 系 統 的 資 訊 , 以 文 字 方 式 , 提 供 給 有 需 要 的 使 用 者 自 行 利 用 , 並 提 供 help 說 明 。 ( 8) 為 簡 化 使 用 者 操 作 程 序 , 使 用 者 在 決 定 好 要 使 用 的 主 機 後 , 可 直 接 點 畫 面 中 選 該 主 機 名 稱 , 將 連 至 該 主 機 並 開 啟 xterm, 即 可 開 始 作 業 。 ( 9) 因 主 機 隨 時 會 保 留 給 其 它 計 劃 使 用 , 故 提 供 保 留 主 機 提 示 功 能 , 以 減 少 其 它 使 用 者 搶 占 主 機 資 源 。

3.2 資 源 監 控 系 統 架 構

1. client-server model 在 網 路 上 使 用 應 用 程 式 時 有 一 個 共 同 的 機 制 , 就 是 client-server model。 因 為 計 算 機 以 及 網 路 的 速 度 比 人 類 的 反 應 速 度 快 的 多 , 在 二 台 機 器 間 如 果 想 要 建 立 聯 繫 , 在 沒 有 一 方 處 於 等 待 的 情 況 下 , 單 純 的 靠 剛 好 雙 方 一 起 連 結 的 機 率 進 乎 於 零 , 所 以 必 需 有 一 方 在 啟 動 系 統 時 便 處 於 等 待 狀 態 , 等 待 其 它 主 機 發 出 需 求 , 並 在 接 到 需 求 後 給 予 回 應 , 這 便 是 client-server model, 而 本 資 源 監 控 系 統 便 是 採 用 此 架 構 , 如 圖 3.1 所 示 。 圖 3.1 資 源 監 控 系 統 架 構 圖 提 出 需 求 的 主 機 為 client 端,亦 即 在 本 系 統 裡,所 有 主 機 皆 為 RMS-client, 數 量 為 m, 而 回 應 需 求 的 主 機 則 為 RMS-server, 只 有 一 台 , 而 有 使 用 者 ( 不 論 幾 人 ) 執 行 本 資 源 監 控 系 統 GUI 程 式 的 主 機 , 稱 為 RMS-user, 數 量 為 n, 則 n <= m。

(17)

2. 建 置 環 境 在 執 行 EDA 軟 體 過 程 中 , 需 長 時 間 執 行 , 甚 至 有 些 少 數 job 執 行 時 間 可 達 數 星 期 之 久 , 執 行 途 中 若 遇 當 機 , 則 會 影 響 設 計 週 期 , 故 業 界 在 執 行 EDA 軟 體 時 , 多 採 用 在 較 穩 定 的 UNIX 系 統 環 境 上 作 業 。 本 建 置 環 境 也 以 UNIX 環 境 為 主 。 本 資 源 監 控 系 統 網 路 環 境 如 圖 3.2, 所 有 主 機 都 透 過 ethernet 網 路 連 接 , 中 間 並 無 防 火 牆 阻 擋 , 所 有 主 機 皆 為 UNIX 作 業 系 統 。 圖 3.2 網 路 環 境 結 構 圖 3. 程 式 結 構 本 資 源 監 控 系 統 程 式 建 構 於 UNIX 環 境 之 上 , 其 結 構 圖 如 圖 3.3, 程 式 語 言 採 用 perl 搭 配 TK 撰 寫 而 成 , 程 式 執 行 中 , 我 們 只 讓 主 機 資 訊 檔 ( registry table) 更 新 儲 存 , 其 餘 所 有 資 訊 皆 存 於 RMS-server 的 記 憶 體 中 。 這 麼 做 是 因 為 本 資 源 監 控 系 統 定 義 spec. 時 , 其 中 更 新 主 機 資 源 使 用 資 訊 須 在 60 秒 內 。 為 了 達 成 目 標 , 在 資 料 儲 存 時,要 儘 量 避 免 開 關 檔 的 動 作。如 此 一 來,即 使 RMS-client 數 量 愈 來 愈 多 , 也 不 會 使 儲 存 設 備 的 loading 增 加 , 導 致 執 行 速 度 降 低。另 外,目 前 傳 遞 資 訊 以 SNMP 或 socket 方 式 為 主,經 過 測 試 , 在 安 裝 SNMP package 之 後 , 有 些 作 業 系 統 會 有 問 題 , 甚 至 造 成 無 法 正 常 開 機 , 所 以 我 們 採 用 socket 方 式 [11]來 傳 遞 資 訊 。 圖 3.3 資 源 監 控 系 統 程 式 結 構 圖

(18)

3.3 使 用 者 介 面

為 了 簡 化 end-user 使 用 上 的 複 雜 度 , 達 到 容 易 掌 控 所 有 主 機 系 統 資 源 狀 態,操 作 介 面 的 設 計 上 尤 為 重 要。我 們 的 工 具 介 面 具 有 下 述 特 點 1. 提 供 一 個 友 善 的 管 理 介 面 , 讓 使 用 者 一 目 瞭 然 , 容 易 上 手 。 2. 盡 量 減 少 或 消 除 一 些 重 複 的 步 驟 , 以 簡 化 管 理 。 3. 讓 管 理 介 面 具 彈 性 能 力 , 可 依 個 人 喜 好 調 整 及 設 定 顯 示 結 果 。 4. 管 理 系 統 可 隨 時 使 用 , 並 可 長 時 間 提 供 服 務 , 不 需 另 花 時 間 管 理 。 這 個 工 具 介 面 由 一 個 二 維 的 目 錄 ( 群 組 , 工 具 ) 來 決 定 要 顯 示 的 訊 息 。

在 群 組 這 一 部 分 , 它 包 含 六 個 群 組( dms、 down、 mis、 queue、 rd、 reserve), 每 一 個 主 群 組 會 包 括 一 系 列 基 本 次 群 組 , 依 作 業 系 統 種 類 ( Solaris、 HP、 redhat) 及 memory 大 小 ( 24G 以 下 、 32G、 64G 以 上 ) 來 區 分 。

而 工 具 方 面,本 系 統 包 括 一 組 各 自 獨 立 的 工 具( 訊 息 欄、現 在 時 間 、 View、 adminfo、 refer、 reload、 資 訊 更 新 倒 數 時 間 、 Exit)。

我 們 在 螢 幕 顯 示 的 訊 息 如 圖 3.4 所 示

圖 3.4 資 源 監 控 系 統 管 理 介 面 圖

1. 工 具 區 : 置 於 第 一 列 , 提 供 一 些 資 訊 及 設 定 , 總 共 八 個 項 目 , 說 明 如 下 :

(19)

( 1) 訊 息 欄 : 當 游 標 點 選 群 組 或 移 至 主 機 狀 態 欄 之 欄 頭 時 , 會 顯 示 簡 短 提 示 。

( 2) 現 在 時 間 。

( 3) View: 可 設 定 主 機 的 哪 些 資 訊 要 顯 示 , 目 前 default顯 示 6個 欄 位 值 , 包 含 主 機 名 稱 、 各 CPU使 用 狀 態 、 目 前 使 用 者 人 數 、 每 5, 10, 15分 鐘 之 load average值 、 memory之 使 用 狀 態 ( used/available)、 保 留 主 機 給 計 劃 使 用 ( project name/deadline)。

( 4) adminfo: 顯 示 各 project的 開 始 日 期 及 結 束 日 期 。

( 5) refer: 包 含 四 項 , 第 一 項 為 linux作 業 系 統 版 本 及 EDA軟 體 之 間 , 搭 配 的 測 試 結 果 , 第 二 項 為 linux作 業 系 統 版 本 及 公 司 開 發 的 應 用 程 式 , 其 搭 配 的 測 試 結 果 , 第 三 項 為 本 系 統 功 能 及 操 作 說 明 , 第 四 項 為 mark的 簡 寫 符 號 說 明 。 ( 6) reload: 立 即 更 新 主 機 狀 態 資 訊 。 ( 7) 資 訊 更 新 倒 數 時 間 : 資 源 監 控 系 統 每 60秒 鐘 主 動 更 新 資 訊 一 次 , 這 裡 顯 示 更 新 資 訊 之 倒 數 秒 數 。 ( 8) exit: 離 開 程 式 。 2. 群 組 區 : 置 於 左 邊 的 方 塊 ( 欄 ) 中 。 我 們 資 源 監 控 系 統 有 主 群 組 及 次 群 組 , 以 所 有 主 機 功 能 及 規 格 來 分 類 。 分 類 如 下 ( 1) 主 群 組 : 以 功 能 性 分 組 , 可 分 為 ① dms: 給 非 RD人 員 使 用 , 例 如 layout人 員 。 ② down: 已 當 機 或 無 法 提 供 服 務 的 主 機 。

③ mis: 給 mis人 員 使 用 , 可 benchmark主 機 或 提 供 某 些 專 門 服 務 。

④ queue: 專 門 跑 load sharing的 主 機 , 例 如 LSF或 SGE。 ⑤ rd: 給 rd人 員 使 用 。

⑥ reserve: 保 留 給 特 殊 需 求 的 人 員 使 用 , 例 如 趕 tape-out。 ( 2) 次 群 組 : 以 作 業 系 統 、 Memory或 特 殊 用 途 來 分 類 , 可 分 為

① 作 業 系 統 : HP、 Solaris、 Linux( redhat)。 ② memory: 24GB以 下 、 32GB、 64GB及 以 上 。 ③ 特 殊 用 途 : 專 門 給 某 一 個 project或 提 供 某 種 服 務 之 用 , 例 如 版 本 控 制 服 務 。 當 主 群 組 被 點 到 之 後 , 其 次 群 組 即 被 展 開 , 如 圖 3.3所 示 , dms 被 點 開 之 後 , 其 內 部 8個 次 群 組 顯 示 出 來 。 當 使 用 者 點 到 一 次 群 組 時 , 該 次 群 組 的 label就 變 成 黃 色 , 同 時 右 邊 主 機 狀 態 區 方 塊 會 顯

(20)

示 此 次 群 組 的 訊 息 。 3. 主 機 狀 態 區 : 右 邊 的 方 塊 ( 紅 色 線 包 圍 ) 區 , 顯 示 根 據 view 選 擇 的 主 機 資 源 使 用 狀 態 。 圖 3.4 的 例 子 是 我 們 在 view 設 定 的 default 選 項 。 本 區 第 一 列 主 要 顯 示 資 訊 的 名 稱。圖 3.4 顯 示( HOST、CPU、USERS、LOAD AVERAGE、 MEM、 RESERVE), 而 第 二 列 以 後 , 則 依 欄 位 顯 示 在 該 次 群 組 之 各 主 機 的 狀 態 值 。 這 個 顯 示 資 訊 有 三 個 較 特 別 的 地 方 ( 1) 為 了 方 便 使 用 者 尋 找 想 要 的 主 機,我 們 提 供 了 讓 所 有 欄 位 都 可 進 行 排 序 的 功 能 。 其 模 式 如 下 , 在 第 一 列 的 欄 位 點 選 時 , 資 源 監 控 系 統 將 以 此 欄 位 為 第 一 key 值,而 以 上 次 所 選 的 欄 位 為 第 二 key 值 進 行 排 序,重 複 點 選 時,則 反 覆 進 行 升 /降 冪 的 排 序 。 ( 2) 在 使 用 者 找 到 可 用 主 機 後,為 簡 化 使 用 者 的 操 作 程 序,有 提 供 自 動 連 線 功 能 ; 亦 即 在 資 源 監 控 系 統 HOST 欄 位 中 , 使 用 者 點 選 欄 位 下 方 之 主 機 名 稱 後 , 可 連 線 至 此 該 主 機 並 開 啟 xterm, 即 可 開 始 作 業 。

( 3) 因 現 在 主 機 的 CPU 顆 數 不 一,由 1 顆 CPU 到 8 顆 CPU 皆 有,為 了 讓 顯 示 畫 面 不 會 因 CPU 欄 位 顯 示 過 寬 或 過 長,使 用 者 在 第 一 列 的 CPU 欄 位 點 選 “ 滑 鼠 右 鍵〝 時,螢 幕 會 出 現 一 小 視 窗 以 調 整 要 顯 示 之 CPU 列 數,亦 即 多 少 顆 為 一 列 顯 示,超 過 則 為 下 一 列 。 因 此 , 資 源 監 控 系 統 操 作 介 面 非 常 直 覺 , 容 易 使 用 , 即 使 是 新 手 也 沒 有 適 應 問 題 , 另 外 , 我 們 還 提 供 help 功 能 , 裡 面 有 更 詳 細 的 使 用 說 明 給 使 用 者 。

3.4 資 源 監 控 系 統 設 計 方 式

為 了 讓 資 源 監 控 系 統 能 從 所 有 主 機 上 收 集 資 訊 , 並 將 這 些 資 訊 傳 遞 給 使 用 者 , 我 們 根 據( server/client/user)分 別 設 定 了 其 相 對 應 的 角 色 來 負 責 各 自 對 應 的 任 務 , 下 面 依 序 說 明 其 功 能 1. RMS-Server: 此 主 機 會 執 行 三 支 獨 立 運 作 的 程 式 ( 1) RMS-Server Process:

(21)

在 資 源 監 控 系 統 開 始 時 , 先 執 行 RMS-Server Process, 此 process 會 呼 叫 另 外 二 支 process( Client_Invoke Process 和 Registry_Update Process), 並 且 負 責 功 能 有 二 ① 接 收 RMS-Client所 傳 來 的 現 在 主 機 資 源 使 用 資 訊 。 ② 若 有 RMS-User 發 出 需 求 , 則 此 process 會 把 所 有 主 機 資 源 使 用 資 訊 傳 給 RMS-User, 如 圖 3.5 和 3.6 所 示 。 ( 2) Client_Invoke process: Client_Invoke Process 被 啟 動 後 , 負 責 的 功 能 有 二 ① 會 根 據 主 機 資 訊 檔 ( Registry Table) 的 資 料 , 在 設 定 的 所 有 主 機 上 啟 動 RMS-Client Process。 ② 定 時 向 RMS-Server 要 現 在 正 常 的 主 機 資 源 使 用 資 訊 , 並 比 對 主 機 資 訊 檔 的 所 有 主 機,以 找 出 哪 些 主 機 未 啟 動 RMS-Client Process, 並 將 它 重 啟 。 ( 3) Registry_Update Process: Registry_Update Process 被 啟 動 後 , 負 責 定 時 檢 查 主 機 資 訊 檔 ( Registry Table) 是 否 有 更 新 , 若 有 新 增 主 機 , 則 會 半 自 動 抓 取 新 主 機 之 Hardware Spec., 並 更 新 至 主 機 資 訊 檔 。 圖 3.5 資 源 監 控 系 統 執 行 流 程 圖 1

(22)

圖 3.6 資 源 監 控 系 統 執 行 流 程 圖 2 2. RMS-Client

RMS-Client Process 在 被 Client_Invoke Process 喚 起 後 , 主 要 負 責 定 時 將 該 主 機 的 資 源 使 用 狀 態 回 報 給 RMS-Server,所 以 每 一 台 主 機 都 會 有 這 樣 一 支 固 定 的 RMS-Client Process 來 負 責 此 事 , 換 句 話 說 , 所 有 的 主 機 皆 為 RMS-Client。

3. RMS-User

基 本 上 , 所 有 主 機 皆 為 RMS-Client, 而 有 使 用 者 在 某 一 主 機 上 執 行 Resource Indicator Program( RIP) 時 , 則 該 執 行 主 機 則 稱 為 RMS-User。其 負 責 的 功 能 是 將 最 新 的 主 機 資 源 使 用 狀 態,依 使 用 者 的 設 定 , 呈 現 於 管 理 介 面 上 ; 並 定 時 向 RMS-Server 要 求 最 新 的 資 源 使 用 資 訊 , 更 新 於 它 的 使 用 者 畫 面 上 , 如 圖 3.4。

3.5 程 式 流 程 圖

1. RMS-Server 將 包 含 三 支 process,( 1) RMS-Server Process ( 2) Registry_Update Process ( 3) Client_Invoke Process, 而 要 啟 動 整 個 資 源 監 控 系 統 的 源 頭 RMS-Server Process, 我 們 在 RMS-Server 主 機 上 設 定 一 個 cron job, 並 且 每 5 分 鐘 執 行 一 次 RMS-Server Process, 以 下 依 序 說 明 其 流 程 圖

( 1) RMS-Server Process 流 程 圖:負 責 處 理 RMS-Client / RMS-User 的 需 求

(23)

圖 3.7 RMS-Server Process 流 程 圖

( 2) Registry_Update Process 流 程 圖 : 負 責 抓 取 新 增 主 機 之 H/W Spec.

(24)

( 3) Client_Invoke Process 流 程 圖 : 負 責 喚 起 RMS-Client Process

圖 3.9 Client_Invoke Process 流 程 圖

2. RMS-Client 只 有 一 支 RMS-Client Process, 主 要 負 責 把 主 機 資 源 使 用 狀 態 定 時 回 報 給 RMS-Server, 其 流 程 圖 如 下

(25)

3. RMS-User 則 有 一 支 Resource_Indicator Program( RIP), 功 能 為 以 GUI 或 command-line mode 方 式 , 將 資 訊 呈 現 給 使 用 者 , 其 流 程 圖 如 下 : 其 中 以 引 數 來 判 斷 的 呈 現 方 式 是 以 command-line mode 或 是 GUI 方 式

(26)

第 四 章 、 實 作

4.1 開 發 環 境 需 求

1. 作 業 系 統 : CentOS 4.7 2. 軟 體 : perl 5.8.8 3. 安 裝 工 具 : Tk-804.028 Tk-MK-0.17 rxvt-2.6.4

4.2 實 作 結 果

根 據 第 三 章 所 定 義 的 規 格 , 我 們 成 功 實 作 出 本 資 源 監 控 系 統 , RMS-Server 啟 動 Registry_Update Process 及 Client_Invoke

Process, 並 處 理 RMS-Client 和 RMS-User 的 需 求 ; RMS-Client 則 把 主 機 現 在 的 資 源 使 用 狀 態 , 定 時 回 報 給 RMS-Server; 最 後 , RMS-User 則 可 執 行 Resource Indicator Program( RIP) 來 檢 視 所 有 主 機 的 資 源 使 用 狀 態 ; 定 義 的 各 角 色 都 按 照 其 所 設 定 的 功 能 來 運 作 。

1. 群 組 區

資 源 監 控 系 統 群 組 區 包 含 主 群 組 及 次 群 組,主 群 組 以 功 能 性 來 分 組 , 分 別 為 dms、 down、 mis、 queue、 rd、 reserve 等 ; 次 群 組 以 作 業 系 統 、 Memory( 24GB 以 下 、 32GB、 64GB 及 以 上 ) 或 特 殊 用 途 來 分 類 , 結 果 如 圖 4.1 所 示

(27)

圖 4.1 資 源 監 控 系 統 群 組 圖 2. 工 具 區 ( 1) View 功 能 如 圖 4.2 上 方 黃 色 區 塊 所 示,點 選 此「 View」按 鈕 可 設 定「 主 機 狀 態 區 」 的 欄 位 , 當 按 下 ( 選 上 )「 View」 按 鈕 時 , 其 設 定 視 窗 如 圖 4.3 所 示 , 左 邊 藍 色 區 域 為 所 有 可 顯 示 的 項 目 , 右 邊 紅 色 區 域 則 是 已 選 定 的 項 目 , 並 且 可 調 整 顯 示 的 順 序 。 以 圖 4.3 為 例 , 其 結 果 如 圖 4.2。 圖 4.2 資 源 監 控 系 統 工 具 區 圖

(28)

圖 4.3 資 源 監 控 系 統 View 設 定 圖 ( 2) adminfo 功 能

應 end-user 的 要 求 , 我 們 提 供 adminfo 功 能 。 如 圖 4.2 之 綠 色 區 塊 所 示 之「 adminfo」按 鈕,當 end-user 按 下「 adminfo」 按 鈕 時 , 此 功 能 可 顯 示 現 在 執 行 中 的 計 劃 有 哪 些 , 其 開 始 和 結 束 的 日 期 等 , 如 圖 4.4 所 示 圖 4.4 資 源 監 控 系 統 adminfo 功 能 圖 ( 3) refer 功 能 如 圖 4.2 紅 色 區 塊 所 示 之 「 refer」 按 鈕 , 當 按 下 「 refer」 按 鈕 之 後 , 會 出 現 四 個 選 項 , 第 一 項 為 linux 作 業 系 統 版 本 及 EDA 軟 體 間 , 搭 配 的 測 試 結 果 , 如 圖 4.5, 第 二 項 為 linux 作 業 系 統 版 本 及 公 司 開 發 的 應 用 程 式 , 其 搭 配 的 測 試 結 果 , 如 圖 4.6,第 三 項 為 本 系 統 功 能 及 操 作 說 明,如 圖 4.7,第 四 項 為 mark 的 簡 寫 符 號 說 明 , 如 圖 4.8。 其 中 第 一 、 二 項 對 end-user 來 說 最 為 重 要 , 因 作 業 環 境 中 有 許 多 種 的 O.S,而 執 行 的 EDA 工 具 不 但 種 類 繁 多,而 且 時 常 更

(29)

新 , 故 有 許 多 種 版 本 , 所 以 O.S 和 EDA 的 搭 配 很 重 要 , 若 版 本 不 符 合 , 可 能 執 行 失 敗 , 徒 然 浪 費 開 發 時 間 。

圖 4.5 OS 及 EDA 測 試 結 果 圖

圖 4.6 OS 及 Utility 測 試 結 果 圖

(30)

圖 4.8 資 源 監 控 系 統 mark 說 明 圖 ( 4) 即 時 和 定 時 更 新 如 圖 4.2 藍 色 區 域 所 示,資 源 監 控 系 統 提 供 即 時 和 定 時 的 資 訊 更 新 , 左 邊 的 「 reload」 鈕 為 即 時 更 新 , 點 選 時 , 資 源 監 控 系 統 會 立 即 和 RMS-Server 要 最 新 的 主 機 資 源 使 用 資 訊,並 顯 示 於 螢 幕 上 , 而 右 邊 的 秒 數 倒 數 顯 示 , 則 為 定 時 更 新 , 資 源 監 控 系 統 會 定 時 每 60 秒 更 新 一 次 。 3. 主 機 狀 態 區 ( 1) 排 序 功 能 如 圖 4.9 藍 色 區 域 所 示 , 當 end-user 點 選 此 區 域 任 一 欄 頭 時,則 會 依 所 選 擇 的 欄 位 為 key 值,進 行 排 序;若 重 覆 點 選 時 , 則 反 覆 進 行 升 /降 冪 排 序 。 圖 4.9 資 源 監 控 系 統 主 機 狀 態 區 圖

(31)

( 2) CPU 顆 數 顯 示 設 定 如 圖 4.9 紅 色 區 域 所 示 , 當 end-user 在 CPU 欄 頭 按 滑 鼠 右 鍵 時 , 其 設 定 視 窗 如 圖 4.10, 此 功 能 可 依 個 人 喜 好 設 定 每 列 要 顯 示 的 CPU 顆 數 , 以 避 免 畫 面 顯 示 過 寬 或 過 長 。 圖 4.10 資 源 監 控 系 統 CPU 顆 數 設 定 圖 ( 3) 自 動 登 入 並 開 啟 視 窗 如 圖 4.9 綠 色 區 域 所 示,當 end-user 在 選 定 的「 主 機 名 稱 」 點 選 時 ,可 連 至 該 主 機 並 開 啟 xtem 視 窗 來 進 行 作 業,此 功 能 為 簡 化 使 用 者 操 作 程 序 。

4.3 資 源 監 控 系 統 的 品 質

1. Usability 一 般 而 言 usability 是 根 據 end-user 的 使 用 經 驗 來 決 定 好 壞 。 這 裡 我 們 根 據 1) Easy learning 2) Memorability 3) level of automations 來 說 明 本 系 統 較 高 的 usability。 ( 1) Easy learning 本 資 源 監 控 系 統 非 常 直 覺 且 友 善 的,所 以 不 需 要 特 別 經 過 訓 練 , 也 不 需 要 非 常 有 經 驗 的 使 用 者 才 可 執 行 , 即 使 是 新 手 , 從 未 使 用 過 類 似 的 軟 體 , 也 能 立 即 上 手 。 另 外 , 資 源 監 控 系 統 還 提 供 help 使 用 說 明 , 若 要 詳 細 了 解 所 有 功 能 則 可 點 選 此 鈕 , 從 開 始 到 完 全 了 解 本 系 統 , 只 需 五 分 鐘 即 可 。 ( 2) Memorability 因 使 用 者 需 掌 握 所 有 主 機 狀 態,以 方 便 作 業,在 執 行 此 資 源 監 控 系 統 時 , 只 需 一 個 指 令 , 操 作 簡 單 , 容 易 記 , 重 複 使 用 率 非 常 高 , 不 需 重 新 學 習 ; 使 用 此 資 源 監 控 系 統 的 end-user, 習

(32)

慣 固 定 開 啟 它 , 並 放 置 桌 面 , 不 再 關 閉 。 (3)level of automations 在 system administrator 方 面 , 此 資 源 監 控 系 統 只 需 執 行 一 個 指 令 即 可 啟 動 , 之 後 便 可 提 供 服 務 , 完 全 自 動 化 收 集 並 更 新 資 訊 。 而 在 新 增 主 機 時 , 也 只 需 提 供 基 本 名 稱 及 群 組 設 定 , 即 可 自 動 抓 取 其 它 資 訊 , 管 理 上 非 常 方 便 。 在 end-user 方 面 , 只 需 一 個 指 令 即 可 開 啟 , 主 機 資 訊 將 會 自 動 更 新 , 完 全 自 動 化 , 除 了 在 設 定 個 人 喜 好 外 , 其 餘 均 不 需 動 手 , 操 作 上 非 常 簡 單 , 不 需 進 行 教 育 訓 練 。 2. 容 錯 此 項 功 能 在 系 統 遇 到 非 預 期 中 執 行 失 敗 的 時 候 , 能 儘 快 的 或 不 中 斷 的 回 復 並 提 供 服 務 , 以 下 將 對 錯 誤 回 復 能 力 加 以 說 明 ( 1) RMS-Server 為 避 免 此 程 式 被 誤 砍 而 沒 有 提 供 服 務 , 故 在 RMS-Server 的 主 機 上 , 會 設 定 一 個 cron job, 此 job 每 五 分 鐘 會 執 行 一 次 RMS-Server 的 程 式,而 執 行 此 程 式 時,會 先 檢 查 是 否 重 複 執 行, 若 未 執 行 , 則 會 啟 動 它 , 反 之 , 則 跳 過 。

( 2) RMS-Client

在 RMS-Client 檢 查 方 面 , 則 由 Client_Invoke Process 來 負 責 檢 查 RMS-Client Process 是 否 已 執 行 ; 而 Client_Invoke Process 在 RMS-Server Process 啟 動 時 , 便 立 即 被 喚 起 , 以 專 門 檢 查 所 有 RMS-Client 的 process 是 否 已 執 行,它 每 五 分 鐘 執 行 一 次 檢 查 , 因 此 , 若 RMS-Client 的 process 被 誤 砍 , 它 會 invoke RMS-Client 的 process。

( 3) RMS-User RMS-User 有 一 支 獨 立 的 應 用 程 式 ( RIP), 功 能 主 要 為 監 控 所 有 主 機 的 資 源 使 用 狀 態 , 若 程 式 呈 僵 屍 狀 態 , 並 不 影 響 他 人 或 整 個 資 源 監 控 系 統 的 運 作 , 只 需 重 新 下 個 指 令 再 開 啟 即 可 , 而 新 開 啟 的 程 式 一 開 始 便 會 檢 查 舊 有 程 式 是 否 存 在 , 若 有 , 則 會 一 併 刪 除 , 避 免 多 重 開 啟 程 式 。 ( 4) dead lock

(33)

在 資 源 監 控 系 統 所 用 到 的 資 源 方 面,共 用 的 資 源 只 有 儲 存 設 備 ; 因 原 先 在 設 計 時 , 就 刻 意 避 免 開 關 檔 的 動 作 , 只 有 主 機 資 訊 檔 需 要 儲 存 , 而 此 部 分 也 只 有 RMS-Server會 用 到 , 所 以 並 無 資 源 搶 占 情 形 , 也 不 會 有 dead lock現 象 。 ( 5) 當 機 資 源 監 控 系 統 在 運 作 時 , 會 執 行 一 些 程 式 ( 例 RMS-Server Process、 RMS-Client Process、 Client_Invoke Process、 Registry_Update Process… 等 ), 而 這 些 process都 有 各 自 的 檢 查 機 制,若 程 式 被 誤 砍,會 自 動 重 啟,所 以 不 會 影 響 程 式 運 作 。 此 外,這 些 程 式 執 行 時 所 需 的 memory很 小,不 會 隨 時 間 而 增 加 memory使 用 量 , 可 長 時 間 服 務 。 因 係 獨 立 系 統 , 所 以 不 會 妨 礙 機 器 正 常 運 作 。 而 在 停 機 維 護 過 後 , 重 新 啟 動 資 源 監 控 系 統 時 , 也 非 常 簡 單 , 只 需 執 行 一 個 指 令 即 可 恢 復 。 3. Efficiency 一 個 系 統 的 efficiency 評 估 應 該 含 有 時 間 和 空 間,亦 即 包 含 系 統 執 行 速 度 和 使 用 的 空 間 , 以 下 依 序 說 明 ( 1) processing time 執 行 時 間 主 要 dependent on 主 機 速 度 , 經 過 測 試 , 在 第 一 次 開 啟 資 源 監 控 系 統 時,在 約 200 台 linux 主 機 上,CPU 速 度 在 2~3GHz 的 測 試 結 果 , 約 花 1.8 秒 的 時 間 。 而 在 以 後 的 定 時 資 訊 更 新 時 間 裡 , 處 理 的 時 間 更 少 , 約 花 0.5 秒 即 可 , 主 要 在 資 訊 傳 遞 及 圖 形 重 繪 , 其 CPU loading 非 常 輕 , 故 整 體 執 行 效 能 非 常 好 。 ( 2) Space 對 於 本 資 源 監 控 系 統 的 空 間 需 求 說 明 如 下 ① 資 源 監 控 系 統 程 式 本 資 源 監 控 系 統 的 所 有 程 式 及 相 關 設 定 檔 其 佔 用 的 空 間 在 1MB 內 , 只 要 設 定 auto-mount, 讓 所 有 主 機 皆 能 讀 取 執 行 此 程 式 即 可 。 ② log 儲 存 因 採 用 socket 的 方 式 , 讓 資 源 監 控 系 統 不 存 放 任 何 log, 所 有 資 訊 均 儲 存 於 記 憶 體 , 所 以 不 需 硬 體 儲 存 空 間 ,

(34)

而 執 行 時 所 需 的 memory, 也 只 有 幾 mb 而 已 。 4. Reusability 對 於 資 源 監 控 系 統 的 resuability 包 含 以 下 說 明 ( 1) Portability 資 源 監 控 系 統 非 常 容 易 移 植,只 需 將 系 統 相 關 程 式 複 製 到 新 Unix/Linux 系 統 上 , 並 設 定 主 機 資 訊 檔 及 主 機 間 的 執 行 權 限 , 即 可 開 始 運 作 , 因 資 源 監 控 系 統 與 其 它 程 式 間 並 無 相 依 性 問 題 , 可 避 免 程 式 相 互 干 擾 , 所 以 方 便 管 理 及 維 護 。 ( 2) Compatibility 資 源 監 控 系 統 可 安 裝 在 任 何 SUN、 HP、 Linux 主 機 上 , 相 容 性 高,但 並 不 適 用 於 windows、MacOs 等 其 它 作 業 系 統。使 用 上 , 建 議 SUN 使 用 solaris 5.8 以 上,HP 則 為 11.x 以 上,而 Linux 則 使 用 kernel 2.6 以 上 較 佳 。 ( 3) Extensibility 因 本 資 源 監 控 系 統 之 程 式 主 體 架 構 明 確 , 程 式 內 容 均 模 組 化,並 且 精 簡。若 欲 新 增 功 能,或 者 修 改 使 用 介 面 都 非 常 容 易 , 具 彈 性 , 本 資 源 監 控 系 統 維 護 上 不 複 雜 , 即 使 交 由 其 它 管 理 者 維 護 也 不 困 難 。

(35)

第 五 章 、 結 論 及 未 來 方 向

5.1 結 論

在 本 文 中 , 我 們 已 詳 細 說 明 並 且 圖 示 此 資 源 監 控 系 統 的 設 計 架 構 及 運 作 方 法 , 透 過 角 色 的 定 義 , 讓 各 個 process 負 責 各 自 的 功 能 ,來 掌 控 所 有 運 算 系 統 的 資 源 ,再 把 資 訊 提 供 給 使 用 者 。 依 照 規 格 定 義 ,我 們 實 作 出 一 功 能 良 好 , 且 效 能 佳 的 資 源 監 控 系 統 , RMS-Client 可 定 時 的 回 報 主 機 資 源 使 用 狀 態 給 RMS-Server, 而 良 好 的 使 用 者 介 面 , 可 定 時 /即 時 地 從 RMS-Server 取 得 所 有 主 機 資 源 使 用 狀 態 , 讓 即 使 是 職 場 新 手 也 能 快 速 上 手 , 一 覽 無 遺 的 掌 控 所 有 資 源 , 也 可 根 據 工 作 所 需 , 快 速 的 找 到 可 利 用 的 主 機 來 作 業 , 善 用 主 機 資 源 , 使 用 上 沒 有 限 制 。 在 本 次 實 作 中 , 為 了 讓 所 有 end-user 都 能 使 用 本 系 統 , 我 們 也 和 各 方 面 的 使 用 者 進 行 討 論 , 包 含 designer、 layout 人 員 和 其 它 使 用 人 員 ( 如 mis、 客 戶 ), 功 能 上 盡 可 能 達 到 各 方 所 需 , 故 群 組 的 規 劃 和 資 訊 結 果 的 呈 現 等 , 都 是 討 論 後 所 得 的 結 果 , 所 以 , 在 系 統 完 成 上 線 後 , 確 實 解 決 使 用 者 尋 找 主 機 的 問 題,提 昇 主 機 使 用 率,最 終 得 到 大 家 的 認 同 及 贊 賞 。

此 系 統 為 獨 立 運 作,若 再 搭 配 原 有 之 LSF 或 SUN Grid Engine 系 統 , 不 但 不 會 浪 費 之 前 的 建 置 費 用,還 可 讓 主 機 使 用 率 提 昇,達 到 互 補 的 作 用 。

5.2 未 來 方 向

目 前 提 供 的 資 源 監 控 系 統 可 清 楚 顯 示 所 有 主 機 的 資 源 使 用 狀 態 , 有 效 地 提 昇 主 機 的 使 用 率,但 隨 著 時 間 的 過 去,作 業 環 境 及 使 用 習 慣 的 改 變 , 有 以 下 五 點 可 進 行 改 善 , 使 用 介 面 更 為 友 善 1. 使 用 multicast 方 法 當 初 在 設 計 建 置 初 期,考 慮 當 時 的 使 用 者 習 慣,因 SUN 工 作 站 性 能 較 穩 定 , 大 部 分 使 用 者 只 在 SUN 主 機 登 入 , 故 會 在 此 主 機 上 執 行 此 資 源 監 控 系 統 , 而 其 它 主 機 執 行 的 可 能 性 及 次 數 較 少 , 因 此 資 源 監 控 系 統 採 用 socket 方 式 來 做 資 訊 的 交 換;但 時 過 境 遷,隨 著 Linux 系 統 的 速 度 及 穩 定 性 大 幅 增 加 , 及 資 源 監 控 系 統 的 大 量 使 用 , 現 在

(36)

主 機 loading 已 大 為 分 散 了 , 使 用 者 也 不 在 侷 限 在 某 些 特 定 系 統 上 登 入 , 所 以 期 望 在 下 一 版 的 管 理 系 統 可 改 用 multicast 的 方 式 來 改 進 , 可 提 高 效 能 。

2. 使 用 流 量 分 析 工 具

可 考 量 系 統 可 搭 配 流 量 分 析 工 具 , 如 : MRTG, 來 觀 看 所 有 主 機 之 CPU、 Memory 的 歷 史 使 用 狀 態 , 由 此 可 分 析 主 機 使 用 的 loading, 進 而 評 估 因 業 務 成 長 , 主 機 資 源 何 時 進 入 高 峰 期 , 以 便 事 前 添 購 運 算 主 機 或 memory 較 大 的 主 機。然 而,要 注 意 的 是,因 需 記 錄 log 資 訊 , 會 產 生 開 關 檔 的 動 作 , 更 可 能 大 幅 度 的 拖 慢 執 行 速 度 , 若 再 加 上 設 計 方 法 不 良 , 甚 至 可 能 會 來 不 及 在 60 秒 內 更 新 的 情 況 發 生 , 且 log 資 訊 會 愈 來 愈 多 , 則 會 影 響 現 有 執 行 效 率 及 使 用 空 間 , 故 需 加 以 評 估 。 3. 新 增 filter 功 能 目 前 此 資 源 監 控 系 統 已 有 排 序 功 能 , 但 可 再 新 增 filter 功 能 , 讓 使 用 者 可 針 對 想 要 的 條 件 來 尋 找 主 機 , 例 如 查 詢 CPU 速 度 在 多 少 Hz 以 上 ? Memory 在 多 少 GB 以 上 ? kernel 的 版 本 多 少 ? 要 執 行 某 個 EDA tool 時 , 建 議 的 主 機 有 哪 些 ? 等 諸 如 此 類 條 件 的 設 定 , 以 快 速 尋 找 符 合 條 件 之 主 機 。 4. Failover 功 能 雖 然 此 資 源 監 控 系 統 在 migration 時,設 定 相 當 容 易,但 仍 不 俱 有 failover 功 能 , 未 來 可 新 增 failover 功 能 , 讓 資 源 監 控 系 統 在 server 有 問 題 時 , 可 自 動 的 尋 找 適 當 的 主 機 來 接 手 , 以 正 常 提 供 服 務 , 讓 自 動 化 更 為 完 善 。 5. 其 它 程 式 語 言 設 計

目 前 資 源 監 控 系 統 採 用 perl 來 撰 寫 , 未 來 可 考 慮 以 Java、 web 或 flash 方 式 來 設 計 , 讓 使 用 者 介 面 更 方 便 使 用 , 唯 要 評 估 其 執 行 效 能 是 否 符 合 預 期 。

(37)

參 考 文 獻

1. NetApplications inc., 〝 Top Operating System Share Trend, 〝 NetApplications, Market Share Report, August 2009.

2. M.J. Litzkow, M. Livny and M. W. Mutka, “Codor – A Hunter of Idle

Machines,〝 in proceedings of 8th International Conference on Distributed

Computing Systems, pp. 104-111, 1988.

3. Dave Field, Deron Johnson, Don Mize, Robert Stober, “Scheduling to

Overcome the Multi-Core Memory Bandwidth Bottleneck,〝 HP & Platform

Whitepaper, November 2007.

4. Yongwei Wu, Yulai Yuan, Guangwen Yang, Weimin Zheng, “Load predic tion using hybrid model for computational grid,〝 Proceedings of the 8th

IEEE/ACM International Conference on Grid Computing, September 2007.

5. Kinshuk Govil, Dan Teodosiu, Yongqiang Huang, Mendel Rosenblum, “Cellular disco: resource management using virtual clusters on

shared-memory multiprocessors,〝 Transactions on Computer Systems

(TOCS) , Volume 18 Issue 3, August 2000.

6. Matthieu Lemerre, Vincent David, Guy Vidal-Naquet, “A communication mechanism for resource isolation,〝 Proceedings of the Second Workshop on

Isolation and Integration in Embedded Systems, March 2009.

7. Umit Rencuzogullari, Sandhya Dwardadas, “Dynamic adaptation to available resources for parallel computing in an autonomous network of workstations,〝 Proceedings of the eighth ACM SIGPLAN symposium on

Principles and practices of parallel programming, July 2001.

8. Eitan Frachtenberg, Fabrizio Petrini, Juan Fernandez, Scott Pakin, Salvador Coll, “STORM: lightning-fast resource management,〝 Proceedings of the

2002 ACM/IEEE conference on Supercomputing, November 2002.

9. Aravind Menon, Jose Renato Santos, Yoshio Turner, G. (John) Janakiraman, Willy Zwaenepoel, “Diagnosing performance overheads in the xen virtual machine environment,〝 Proceedings of the 1st ACM/USENIX international

conference on Virtual execution environments, June 2005.

10. Timothy Wood, Ludmila Cherkasova, Kivanc Ozonat, Prashant Shenoy, “Profiling and modeling resource usage of virtualized applications,

〝 Proceedings of the 9th ACM/IFIP/USENIX International Conference on

Middleware, December 2008.

11. Hideki Eiraku, Yasushi Shinjo, Calton Pu, Younggyun Koh, Kazuhi ko Kat o, “Fast networking with socket-outsourcing in hosted virtual machine

environments,〝 Proceedings of the 2009 ACM symposium on Applied

(38)

12. Fernando Rodríguez, Felix Freitag, Leandro Navarro, “On the use of intelligent local resource management for improved virtualized resource provision: challenges, required features, and an approach,〝 Proceedings of

the 2nd workshop on System-level virtualization for high performance computing, March 2008.

13. Alexandru V Staicu, Jacek R. Radzikowski, and Nguyen Nguyen , Suboh A. Suboh, “CONCEPTUAL COMPARATIVE STUDY OF JOB

MANAGEMENT SYSTEMS,〝 A Report for the NSA LUCITE Task Order

Productive Use of Distributed Reconfigurable Computing, February 21,

2001.

14. Kevin J. Barker, Nikos P. Chrisochoides, “An Evaluation of a Framework for the Dynamic Load Balancing of Highly Adaptive and Irregular Parallel Applications,〝 Proceedings of the 2003 ACM/IEEE conference on

Supercomputing, November 2003.

15. Erik Putrycz, “Design and implementation of a portable and adaptable load balancing framework,〝 Proceedings of the 2003 conference of the Centre

for Advanced Studies on Collaborative research, October 2003.

16. Weiguang Shi, M. H. MacGregor, Pawel Gburzynski, “Load balancing for parallel forwarding,〝 Transactions on Networking (TON) , Volume 13

Issue 4, August 2005.

17. David R. Karger, Matt hias Ruhl, “Simple efficient load balancing

algorithms for peer-to-peer systems,〝 Proceedings of the sixteenth annual

ACM symposium on Parallelism in algorithms and architectures, June

2004.

18. Junwei Cao, “Self-Organizing Agents for Grid Load Balancing,

〝 Proceedings of the 5th IEEE/ACM International Workshop on Grid

Computing, November 2004.

19. M.H. Jansen-Vullers, M. Netjes and H.A. Reijers,“Innovation, management & strategy: Business process redesign for effective e-commerce,

〝 Proceedings of the 6th international conference on Electronic commerce, 2004.

20. ANDRZEJ CICHOCKI and MAREK RUSINKIEWICZ, “Providing

Transactional Properties for Migrating Workflows,〝 Mobile Networks and Applications, Volume 9 Issue 5, 2004.

21. Bastin Tony Roy Savarimuthu, Maryam Purvis, Martin Fleurke,

“Monitoring and controlling of a multi – agent based workflow system, 〝 Proceedings of the second workshop on Australasian information security, Data Mining and Web Intelligence, and Software

(39)

22. UNIX International Waterview Corporte Center, “Performance

management acti vities within UNIX international,〝 SIGMETRICS Performance Evaluation Review , Volume 21 Issue 2, December 1993 23. Donna Spencer, “usability & information architecture〝 , Step Two

DESIGNS, 2004/11.

24. Marc Clifton, “What Is A Framework〝 THE CODE PROJECT, Design and

Architecture, 3 Nov 2003.

25. Sun microsystems, “Grid Engine Portal,〝 Sun microsystems, Whitepaper

Grid Engine Portal, 21 Jul 2007.

26. Sun Microsystems. Sun Grid Engine. http://www.sun.com/software/sge/. 27. Platform Computing. Platform Load Sharing Facility( LSF) .

數據

表 2.1 對 目 前 市 場 上 二 套 主 流 的 Load Sharing 管 理 軟 體 作 比 較   [26], [27],第 一 套 為 LSF( Load Share Facility),第 二 套 為 SGE( SUN  Grid Engine) 系 統 。   表 2.1    LSF 及 SGE 比 較 表   LSF  SGE  異 質 平 台 支 援   支 援 SUN、 Apple  MacOS、HP、IBM AIX、 Linux、Windows、NEC  SX-8、 SGI I
圖 3.4  資 源 監 控 系 統 管 理 介 面 圖
圖 3.6  資 源 監 控 系 統 執 行 流 程 圖 2
圖 3.7 RMS-Server Process 流 程 圖
+7

參考文獻

相關文件

Microphone and 600 ohm line conduits shall be mechanically and electrically connected to receptacle boxes and electrically grounded to the audio system ground point.. Lines in

Proceedings of the 19th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval pp.298-306.. Automatic Classification Using Supervised

The min-max and the max-min k-split problem are defined similarly except that the objectives are to minimize the maximum subgraph, and to maximize the minimum subgraph respectively..

Hofmann, “Collaborative filtering via Gaussian probabilistic latent semantic analysis”, Proceedings of the 26th Annual International ACM SIGIR Conference on Research and

Experiment a little with the Hello program. It will say that it has no clue what you mean by ouch. The exact wording of the error message is dependent on the compiler, but it might

Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, pp... Annealed

[23] Tiantong You, Hossam Hassanein and Chi-Hsiang Yeh, “PIDC - Towards an Ideal MAC Protocol for Multi-hop Wireless LANs,” Proceedings of the IEEE International Conference

Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference