下列系統資源功能及增強功能已增加到 Solaris 10 8/07 發行版本中。
Sun 的 BrandZ 技術提供建立非全域標記區域的架構,這些區域包含非原生的作業環境。標記區域是非全域區域的簡易延伸,可提供相同的已隔離安全環境,而且所有的標記管理都可透過目前區域結構的延伸執行。
目前可用的標記是 lx 標記,也就是 Linux 應用程式的 Solaris 容器。這些非全域區域針對執行 Solaris 作業系統的 x86 或 x64 機器提供 Linux 應用程式環境。
lx 標記包含在非全域區域中安裝 CentOS 3.5 至 3.8 或 Red Hat Enterprise Linux 3.5 至 3.8 所需的工具。在 32 位元或 64 位元模式中執行 Solaris 作業系統的機器可以執行 32 位元的 Linux 應用程式。
如需更多資訊,請參閱「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」中的第 III 部分「Branded Zones」。
另請參閱以下線上手冊:
brands(5)
lx(5)
更多整合的資源管理和區域功能,讓透過 zonecfg 指令使用系統的資源管理功能更便利。您指定的資源配置會在區域啟動時自動建立。您不再需要執行與設定資源管理相關的任何手動步驟。
zonecfg 指令可用來配置全域區域的資源管理設定。
全區域的資源控制項可以使用全域特性名稱這種比較好的方法進行設定。還提供下列新專案與區域資源控制項:
zone.max-locked-memory
zone.max-msg-ids
zone.max-sem-ids
zone.max-shm-ids
zone.max-shm-memory
zone.max-swap - 可透過限定的記憶體資源,針對區域提供交換限定。
project.max-locked-memory - 可取代 project.max-device-locked-memory
已增加在區域中設定預設排程的一些方法,例如新的排程類別特性。
已增強資源池。您可以增加在區域啟動時動態建立的暫存池。該池是透過 dedicated-CPU 資源進行配置的。
clear 子指令可用來清除選擇性設定的值。
透過改善 rcapd(1M),即可使用全域區域的增強實體記憶體限定。這些限制是透過限定的記憶體資源進行配置的。
此功能可用來限定 lx 已標記區域和原生區域的實體記憶體。如需更多資訊,請參閱lx Branded Zones: Solaris Containers for Linux Applications。
已改善程序常駐大小 (RSS) 計算。資源限定常駐程式 rcapd 和 prstat 指令已經過改善。
如需更多資訊,請參閱:
「prstat(1M) 線上手冊」
「zonecfg(1M) 線上手冊」
「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」
根據是為區域指定了專用的 IP 實例,還是與全域區域共用 IP 層配置和狀態,現在可以使用兩種不同的方式配置 IP 網路。IP 類型是使用 zonecfg 指令進行配置的。
預設值為共用 IP 類型。這些區域會連線至與全域區域相同的 VLAN 或相同的 LAN,並且共用 IP 層。lx 標記區域被配置為共用 IP 區域。如需更多資訊,請參閱lx Branded Zones: Solaris Containers for Linux Applications。
專用 IP 區域中可使用完整 IP 層級功能。如果區域必須獨立於網路的 IP 層,則區域可以具有專用 IP。專用 IP 區域可用來合併必須在不同 VLAN 或不同 LAN 上,以不同子網路進行通訊的應用程式。
如需更多資訊,請參閱:
「zonecfg(1M) 線上手冊」
「zones(5) 線上手冊」
「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」
如需配置資訊,請參閱「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」中的第 17 章「Non-Global Zone Configuration (Overview)」和「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」中的第 18 章「Planning and Configuring Non-Global Zones (Tasks)」。
如需功能元件的資訊,請參閱「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」中的第 26 章「Solaris Zones Administration (Overview)」和「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」中的第 27 章「Solaris Zones Administration (Tasks)」。
Solaris Zones 啟動增強功能現在支援做為 boot 和 reboot 一部分的啟動引數。目前支援的啟動引數如下:
-m <smf_options>
-i </path/to/init/>
-s
啟動引數可以下列方式傳送:
global# zoneadm -z myzone boot -- -m verbose
global# zoneadm -z myzone reboot -- -m verbose
myzone# reboot -- -m verbose
您也可以在 zonecfg 指令中使用新的 bootargs 特性來永久指定啟動引數:
zonecfg:myzone> set bootargs="-m verbose"
除非以 reboot、zoneadm boot 或 zoneadm reboot 指令覆寫,否則將套用此設定。
如需有關啟動引數和 bootargs 特性的更多資訊,請參閱:
「zoneadm(1M) 線上手冊」
「zonecfg(1M) 線上手冊」
「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」
為限制非全域區域中程序使用的 System V 資源總數量,現在包含下列全區域的資源控制項:
zone.max-shm-memory
zone.max-shm-ids
zone.max-msg-ids
zone.max-sem-ids
可透過 zonecfg 指令的 add rctl 資源特性為非全域區域設定資源控制項。
若要限制全域區域的使用,可透過 prctl 指令設定資源控制項。
如需更多資訊,請參閱:
「prctl(1) 線上手冊」
「zonecfg(1M) 線上手冊」
「System Administration Guide: Solaris Containers-Resource Management and Solaris Zones」
Solaris 系統會在已安裝區域的情況下,自動為每個非全域區域附加全域的唯一識別碼。在全域區域和非全域區域上,都可藉由 zoneadm list -p 指令來擷取此識別碼。使用者將區域本身視做資產,可利用區域唯一識別碼進行資產追蹤。此識別碼還可在下列動作中用於區域識別:
區域移動。
區域重新命名。
任何不會破壞區域內容的事件。
如需更多資訊,請參閱「zoneadm(1M)」。
自本發行版本開始,使用者可以使用新的 zoneadm 功能將區域標記為「不完整」。這個新的 zoneadm 功能透過可更新區域內容的管理軟體,能夠記錄嚴重或永久區域失敗狀態。
如需更多資訊,請參閱「zoneadm(1M)」。
現在只要將 dtrace_proc 和 dtrace_user 權限指定給某個非全域區域,就能在該區域中使用 Dtrace。DTrace 供應程式和動作僅限於區域的範圍內。具有 dtrace_proc 權限,就能使用 fasttrap 和 pid 供應程式。具有 dtrace_user 權限,就能使用「profile」和「syscall」供應程式。
您可以使用 zonecfg 指令的 limitpriv 特性,將這些權限增加至可在非全域區域使用的權限集中。
非全域區域的可配置權限提供非全域區域上的權限簡介。
如需有關區域配置、指定區域權限及使用 DTrace 公用程式的更多資訊,請參閱: