Solaris Resource Manager 1.3 系統管理指南

辭彙表

Solaris Resource Manager 產品中介紹數種新的概念,其中有幾個方面與 Solaris 的其他部份的原理類似。

為了簡化本文的說明並且避免混淆,在此為下列辭彙做一個定義。

累計 (accrue)

就固定以及可更新資源而言,它們有一個累計使用量屬性,就是一段時間內對應的使用量屬性整合。

作用中 (active)

如果有任何處理附加在一個 lnode 上,或是附加至其任何一個後代之上的話,此 lnode 即處於作用中的狀態。一個作用中的 lnode 無法移除。

admin user

一位使用者,其 lnode flag.admin 求值到 setadmin 此類使用者可以修正其排程群組之內的 lnode。另請參見群組管理員

管理員

任何執行包括維護系統等功能的人。Solaris Resource Manager 提供各種功能,可以授權管理性的任務而不需要放棄超級使用者的權限。亦請參閱 管理 使用者、超級使用者uselimadm 使用者群組管理員 ,以及 授權管理

配置的配分

依照一種特定的 lnode 樹階層、配分以及作用中的 lnode 設置,將可用 CPU 資源的部份長期分配給一位使用者。

祖先 (ancestor)

一個 lnode 被定義為另一個 lnode 的祖先,從第一個 lnode 的 sgroup 屬性開始參考,一直連續下去,直到最終參考到另一個 lnode。因此後來的 lnode 便會是第一個 lnode 的後代或是成員。

附加的 (attached)

使用者登入時,其 PAM 模組處理會附加至對應其 UID 的 lnode 之上。根據預設,任何後續產生的處理都會被附加至相同的 lnode 上。處理所附加的 lnode 可以用來決定處理的限制、CPU 權利、權限等。

屬性 (attribute)

一個 lnode 的資料欄位。所有 lnode 都有相同的內部結構,因此所有的使用者都會有相同的一組屬性。屬性可以是系統、使用者(僅由使用者模式程式所使用)或是領域。這些不同類型的屬性會有不同的欄位號碼。系統屬性會直接由 kernel 使用,例如控制資源的數值變數,如處理、記憶體大小以及在 kernel 層級控制系統權限的旗標。使用者屬性可以由管理員隨時新增,而現有的使用者屬性可以隨時加以修正,條件是不影響使用屬性的程式。設置來源檔中不需要宣告領域屬性,因為領域一旦宣告之後會自動定義。

批次工作量 (batch workload)

線上交易處理 (OLTP) 以及決策支援系統 (DSS) 工作量之間的一種結合物。一個批次工作量可以包括許多可重覆的資料庫交易,而每一個又含有極重的計算工作在內。

運算

放置到系統資源用量上的限制。

運算

將限制放置到系統資源用量上的程序。

中央管理員 (central administrator)

中央管理員是系統的 root 使用者(或超級使用者)。root lnode 總是位於排程樹的頂端。中央管理員對所有使用者及資源的管理負有統籌性的責任,但是可以將管理性權限賦予一般的使用者以將某些管理性責任授權給其他人。通常中央管理員會決定資源配置給身為 root lnode 的子群組,並將管理權限賦予那些群組的標頭,因而解除他們本身的管理重任。

子節點 (child)

一個直接在排程樹中另一個 lnode 之下的 lnode 就是該 lnode 的子節點。如果第一個 lnode 的 sgroup 屬性設定為第二個 lnode 的 UID,那麼一個 lnode 便是另一個 lnode 的子節點。反之,後面的 lnode 就會被視為前者的雙親或群組標頭。

消減 (decay)

可更新資源定期的使用量減少。除了 CPU 使用量的所有資源,其消減是一個固定的量,會規律性地從使用量屬性中除去。而 CPU 使用量則使用一種呈倍數的消減方式。

有效配分 (effective share)

一個 lnode 目前有效的配分是由其配置的配分,以及其 cpu.usage 屬性而定。

權利 (entitlement)

配置給特定使用者的 CPU 時間總量。

欄位數目 (field number)

設置檔中指定的,由屬性所使用的陣列槽。

固定資源 (fixed resource)

一種供應量有限的資源。

旗標 (flag)

一種和布林變數類似的特別屬性,不過此種屬性可能有下面四種值之一:設定清除群組,或 承繼。Solaris Resource Manager 使用旗標來控制權限。

群組 (group)

在 Solaris Resource Manager 中,此詞通常指的是一個排程群組。請參見排程群組

群組管理員(group administrator)

在群組最頂端的 lnode 稱為一個群組的標頭 lnode。一位群組管理員即為對其所帶領的排程群組的成員具有管理權限的群組標頭。藉由設定一個群組標頭的 flag.admin 旗標而賦予其子節點管理員的身份。如此一來,他們便能建立與刪除其群組內使用者的 lnode,控制其群組內部的資源及權限配置,並且進一步將管理責任授權給群組標頭。群組標頭並非其所帶領的群組成員之一。

群組標頭 (group header)

請參見群組管理員

群組迴圈 (group loop)

當一個 lnode 成為使用中時,所有其雙親直到 root lnode 都會一起啟動。當一個 lnode 成為作用中的時,從其雙親一直上到 root lnode 也都會一起被啟用。這個處理的結果,如果其中一個 lnode 被認定有已經遇到的雙親,就表示 kernel 已發現了一個群組迴圈。

閒置 lnode (idle lnode)

累計未使用 CPU 時間的一個特別的 lnode。此功能有助於會計方面的用途。預設的使用者姓名為 srmidle,其 UID 為 41

承繼(inherit)

可賦予旗標屬性的一個值。求值一個本身的值是 inherit 的旗標時,會求值其雙親 lnode 中相同的旗標以決定實際的數值。這是一種環結式的處理。如果在 root lnode 上的旗標被設定為 inherit,那麼其最終值就是預設值。一個旗標的求值結果永遠是 setclear

kernel

作業系統的核心,支援系統呼叫、檔案系統及處理排程。Solaris Resource Manager 包括兩個 kernel 模組及數個 kernel 分支,以及使用者層級(非 kernel)的程式及程式庫常式。

枝葉 node (leaf node)

一個沒有子的 lnode。

限制 (limit)

與使用量屬性有關的一個數值屬性。可以用來防止一位使用者對某種資源的使用量超過該資源的限制。限制共有兩種:硬限制及軟限制。

  • 如果資源佔用或配置的嘗試會超出限制的使用量,硬限制便會使嘗試失敗。

  • 而軟限制通常不會直接限制使用量,但是會代表一個特定的時間,那時使用者會被告知其使用量,並且被要求要減少使用量。

一個零的限制為特例,表示沒有任何限制。

限制資料庫 (limits database)

Solaris Resource Manager 用來執行所有資源控制的使用者資訊資料庫。其中包含每個 UID 一個 lnode,藉由使用 UID 作為檔案直接索引的方式來存取。

lnode

限制 lnode 是 Solaris Resource Manager 用來保存所有每位-使用者資料的一種長度固定的結構,其中的資料不在密碼映射保存資料的範圍之內。它是一種磁碟上保存於 lnode 檔的結構,由 kernel 在必要時讀寫。每個獨特的 UID 至少都有一個單一的 lnode。具有相同 UID 的不同帳號會使用同一個 lnode。

lnode 資料庫 (lnode database)

Solaris Resource Manager 所用的所有 lnode 在磁碟之上的副本,由 UID 定位。

丟失的 lnode(lost lnode)

setuid() 系統呼叫無法附加一個處理至對應系統呼叫的目標 UID 的 lnode 時所用的特別 lnode,通常是因為該 lnode 並不存在。預設的使用者名稱為 srmlost,其中的 UID 為 42

通知 (notification)

遞送給 Solaris Resource Manager 常駐程式 limdaemon 的所有訊息都是一個通知訊息。某些通知訊息對limdaemon 來說有特殊的意義。

孤立行 (orphan)

一個沒有雙親 lnode 的 lnode。亦即 lnode 的 sgroup 屬性中所指定的 UID本身並不對應至一個 lnode。

other lnode

如果一位名為 other 的使用者有一個帳號,而該帳號也有一個 lnode 的話,那麼該 lnode 會作為超級使用者或 uselimadm 使用者以 limadm 指令所建立的新 lnode 雙親的預設值。系統指派的名稱 srmother 是無法變更的。

實體記憶體的一個部分。

進入頁

將檔案中的資料一次讀取一頁至 記憶體。

出頁

將頁重新部署到實體記憶體以外的區域。

雙親 (parent)

排程樹中一個 lnode 的群組標頭。

密碼對映

系統使用一個如 NIS 或 NIS+ 的名稱服務時所維護的使用者帳號 Solaris 環境資料庫。

同層 (peer)

一個 lnode 的排程群組之內的另一個 lnode,群組的雙親除外。

可更新資源 (renewable resource)

一種資源單位會隨著時間過去而愈來愈多的資源。例如 CPU 使用量或連結時間。

root lnode

UID 0 的 lnode。這個 lnode 是整個 lnode 樹狀結構的頂端,而其他所有的 lnode 皆為其成員。

排程群組 (scheduling group)

Solaris Resource Manager 允許所有使用者組成一個全系統的排程群組階層,這個階層通常也能對應使用此系統的整個組織結構。之所以使用"排程群組"一詞的目的,是為了只使用簡化的"群組"一詞,以避免與現有的 UNIX 群組概念混淆,即使排程群組的用法比單單排程的用法還要常見。Solaris Resource Manager 群組不需要與 UNIX /etc/group 檔中定義的群組相同。

階層任何層級上的一個排程群組可以被視為一位單一使用者。亦即指派給一個排程群組的資源限制可以應用於該群組內所有群組及使用者的淨使用量。

排程樹 (scheduling tree)

root lnode 為領頭的 lnode 樹,特別地指出各個 lnode 間的親子關係、CPU 配分的配置、以及 Solaris Resource Manager 排程器如何決定處理執行率。

配分 (share)

定義一個 lnode 的 CPU 權利比例相較於其雙親及同層 lnode 的一種方法。CPU 配分的概念就好比是公司的股份一樣;擁有多少不重要,真正重要的是與其他持股人相較之下所擁有的股分多寡。

SHR 排程器 (SHR scheduler)

負責根據管理概要檔中的設計來配置資源的模組。

Solaris Resource Manager 登入階段作業 (Solaris Resource Manager login session)

與 Solaris Resource Manager 所知曉的任何類似于登入的系統連結,需要 Solaris Resource Manager 以及各種辨證使用者並賦予其存取權的 '閘道' 程式之間的合作。

子管理員 (sub-administrator)

flag.uselimadm 旗標設定的使用者。他們是 root 的協助者,而且他們可以執行任何 limadm 指令,如同 root 一樣。

超級使用者 (superuser)

知道 root 密碼的人便稱為超級使用者。如果處理是以一個為 0 的有效 UID 在執行的話,便擁有超級使用者的權限。

最頂層的群組 (topmost group)

其群組標頭為 root 的任何群組。

單位 (units)

一種特定資源的基本量。Solaris Resource Manager 內的數值是以三種單位類型來代表:定標、原始或內部。

使用量 (usage)

一種數值屬性,每當使用者佔用或被配置某些資源時,此屬性會增加。每當任何資源被釋出時,固定資源的使用量便會減少。而每當執行一個消減時,可更新資源的使用量會減少。

uselimadm 使用者 (uselimadm user)

一位使用者,其 lnode 旗標的 uselimadm 屬性為 set。使用者因而對於 Solaris Resource Manager 管理擁有和超級使用者相同的權限。

使用者屬性 (user attribute)

請參見屬性

使用者模式 (user-mode)

UNIX 系統上普通程式及程序執行代碼的方式。而另一種 kernel 模式則是由系統呼叫、裝置驅動程式以及 SYS 類別排程器所使用。Solaris Resource Manager 有數種可以在使用者模式中執行的元件,以及可以在 kernel 模式中執行的元件。