工作負載分區 (Workload Partition, WPAR) 是 AIX 中擁有獨立 init 進程的隔離執行環境,對使用者呈現如獨立 AIX 系統。本文聚焦 WPAR 類型、建立方式與 DB2 安裝配置關鍵點,內容同樣適用於 Oracle、IDS、WebSphere、SAP 等產品部署。
| 類型 | 特徵 | 檔案系統 | 生命週期 |
|---|---|---|---|
| 系統 WPAR | 完整獨立環境(/、/usr、/opt、/var、/tmp、/home) | 可共享全域 /usr、/opt(唯讀);或私有 /usr、/opt;或 NFS 掛載遠端根檔案系統 | 持久運行,類似獨立 LPAR |
| 應用程式 WPAR | 僅執行單一啟動腳本 | 完全使用全域環境檔案系統 | 腳本結束即終止 |
mkwpar -n shared_wpar
檔案系統映射:
/dev/fslv00 -> /wpars/shared_wpar
/opt -> /wpars/shared_wpar/opt (namefs)
/usr -> /wpars/shared_wpar/usr (namefs)
/proc -> /wpars/shared_wpar/proc (namefs)
/dev/fslv01 -> /wpars/shared_wpar/home
/dev/fslv02 -> /wpars/shared_wpar/tmp
/dev/fslv03 -> /wpars/shared_wpar/var

mkwpar -l -N interface=en0 address="IP" netmask=255.255.255.192 broadcast=9.2.60.255 -n "wpar_name"
全域環境提供邏輯卷建立私有 /usr、/opt:
/dev/fslv04 -> /wpars/private_wpar
/dev/fslv05 -> /wpars/private_wpar/home
/dev/fslv06 -> /wpars/private_wpar/opt
/dev/fslv07 -> /wpars/private_wpar/tmp
/dev/fslv08 -> /wpars/private_wpar/usr
/dev/fslv09 -> /wpars/private_wpar/var
/proc -> /wpars/private_wpar/proc (namefs)

/usr/sbin/mkwpar -A -F -s -r -n remote_wpar -f remote_wpar.cf
規格檔 remote_wpar.cf 定義掛載點、NFS 主機:
network: interface=en0 netmask=255.255.255.192 address=9.2.65.91
general: privateusr=yes
mount: dev=/remote_wpar directory=/ vfs=nfs host=janet01
mount: dev=/remote_wpar/usr directory=/usr vfs=nfs host=janet01
mount: dev=/remote_wpar/opt directory=/opt vfs=nfs host=janet01
mount: dev=/remote_wpar/var directory=/var vfs=nfs host=janet01
mount: dev=/remote_wpar/home directory=/home vfs=nfs host=janet01
mount: dev=/remote_wpar/tmp directory=/tmp vfs=nfs host=janet01
NFS 伺服器端建立並匯出檔案系統:
crfs -v jfs2 -g ${VG} -m /remote_wpar -A yes -a size=${SZ}
# ... 重複對應 /usr /opt /var /home /tmp
mknfsexp -d /remote_wpar -B -a 0 -v 3 -t rw -r *.ibm.com
# ... 重複匯出各子目錄

startwpar remote_wpar 啟動clogin 或 telnet 登入 WPARmount "ImageServer":/DB2Images /mntdb2_install(可指定非預設安裝路徑)lslpp -l | grep db2 驗證檔案集mkuser test; mkuser testfc; /DB2/instance/db2icrt -a SERVER -s ESE -w 64 -u testfc testwparexec 建立應用程式 WPAR,傳遞建立實例腳本:wparexec -N interface=en0 address="IP" netmask=255.255.255.192 broadcast=9.2.60.255 \
-n "App_WPAR_Name" /absolute/path/createdb2instance
腳本 createdb2instance:
mkuser test
mkuser testfc
/DB2/instance/db2icrt -a SERVER -s ese -w 64 -u testfc test
結果:應用程式 WPAR 存在;DB2 實例建於全域檔案系統,內含 WPAR 的 IP/DNS;後續以 wparexec 啟動應用程式連接該實例。
/etc/hosts 包含 WPAR IP 與 DNS 名稱