您可以合併使用收集器、資訊清單與選取元,以便在執行時期為專案或步驟選擇一個伺服器資源。
有三個不同的資料物件可讓系統動態選擇伺服器,分別如下:
- 收集器:這個物件定義一組內容,以供系統從伺服器資源中收集,或指派給伺服器資源。系統會在檢查伺服器資源的內容時,執行收集器。所收集的內容值會儲存在資訊清單中。
- 資訊清單:是特定伺服器的內容清單。其中含有因執行收集器而產生的結果。
- 選取元:這是一份內容與比較項的清單,例如,MEM_TOTAL = 512。系統可以比較選取元的內容與資訊清單,看看是否有伺服器符合特定選取元的需求。專案和步驟會指定一個選取元,以作為其中一個內容。在專案或步驟執行時,會將選取元與所有已定義伺服器資源的資訊清單進行比較,以便選擇要在其中執行的伺服器資源。
下列範例顯示如何建立和使用簡式選取元:
- 建立一個名為 Mercury 的伺服器資源,並讓它與代理程式產生關聯。
- 建立一個名為 Mercury 的選取元。將它設為使用 BF_NAME = Mercury 來選取伺服器。
- 建立一個名為 Lincoln 的專案。將 Mercury 選取元指派給它。
在您執行 Lincoln 專案時,系統就會選取名為 Mercury 的伺服器資源。如果該伺服器資源無法使用,專案就會失敗。
下列範例顯示如何設定從一組伺服器中動態選取伺服器:
- 建立一個名為 RAMSIZE 的收集器。將它設為收集內建內容 MEM_TOTAL。
- 建立伺服器資源,並與主機產生關聯。將每一個設為使用收集器 RAMSIZE。
- Mercury 主機,具有 512 MB RAM
- Mars 主機,具有 1 GB RAM
- Jupiter 主機,具有 3 GB RAM
- 建立一個名為 BigRam 的選取元。將它設為選取一個「標準內容」:內容=MEM_TOTAL,運算子=GE(大於或等於),以及值=2048。MEM_TOTAL 以 MB 表示。這個選取元只會選取 RAM 為
2 GB 或以上的主機。
- 建立一個名為 SmallRam 的選取元。將它設為選取「標準內容」:內容=MEM_TOTAL、運算子=GE(大於或等於),以及值=256。此選取元只會選取 RAM 為 256 MB 或以上的主機。
- 建立兩個專案:
- HighMaint:將這個專案設為使用選取元 BigRam。
- LowMaint:將這個專案設為使用選取元 SmallRam。
當您執行 HighMaint 時,系統會選擇 Jupiter 伺服器,因為只有它符合至少 2 GB RAM 的選取元需求。
當您執行 LowMaint 時,系統會從這三個可用的伺服器資源中挑選任一個。
如果您之後為主機新增一個名為 Neptune 且擁有 2 GB RAM 的伺服器資源,則在 HighMaint 專案下次執行時,便會為該專案選取 Neptune 或 Jupiter。如果 Jupiter 因某些原因而關閉,就會選取 Neptune。因為只剩下它符合選取元。