您可以利用某些特定的變數來自訂 Liberty 環境,以支援將產品二進位檔和共用資源放在唯讀檔案系統中。
關於這項作業
您可以在 server.env 檔中,配置下列清單中的 Liberty 特定環境變數來自訂 Liberty 環境。
${wlp.install.dir} 配置變數有一個推斷的位置,其一律設為包含啟動 Script 之目錄的母項。
- WLP_USER_DIR
這個環境變數可用來指定 ${wlp.user.dir} 的替代位置。
這個變數必須是一個絕對路徑。
如果指定這個變數,執行時期環境會在指定的目錄中尋找共用資源和伺服器定義。
${server.config.dir} 相當於 ${wlp.user.dir}/servers/serverName。
如果未指定這個環境變數,${wlp.user.dir} 會設為 ${wlp.install.dir}/usr。
- WLP_OUTPUT_DIR
這個環境變數可用來指定伺服器產生的輸出,例如日誌、workarea 目錄及產生的檔案等的替代位置。
logs 目錄中的檔案包括 console.log、messages.log 和任何產生的 FFDC 檔案。所產生的檔案包括以 server dump 或 server javadump 指令來建立的伺服器傾出。這個變數必須是一個絕對路徑。
如果指定了這個環境變數,${server.output.dir} 會設為 WLP_OUTPUT_DIR/serverName 的對等項目。
如果沒有指定這個環境變數,${server.output.dir} 就與 ${server.config.dir} 相同。
當使用伺服器指令時,伺服器程序會利用輸出目錄作為其現行工作目錄。
WLP_ZOS_PROCEDURE這個環境變數可供指定一個 STC 程序的名稱,用來將伺服器作為一項
z/OS® 啟動作業來啟動,而不是作為一項「UNIX 系統服務」背景程序來啟動。
依預設,指令埠會維持啟用,以便能夠繼續從伺服器 Script 來管理伺服器。此外,也可以選擇性地手動停用指令埠,以限制只能從 z/OS 操作員主控台來管理伺服器,請參閱指定 Liberty 引導內容。
WLP_ZOS_JOBNAME
除了
WLP_ZOS_PROCEDURE 變數,也可以使用這個環境變數,針對以
z/OS 啟動作業形式啟動的 Liberty 伺服器,指定一個工作名稱。
- WLP_DEBUG_ADDRESS
當您以除錯模式來執行伺服器時,這個環境變數可用來指定替代埠。預設值是 7777。
當在除錯模式下從伺服器指令執行 Liberty 時,會設定下列值:JAVA_DEBUG="-Dwas.debug.mode=true -Dcom.ibm.websphere.ras.inject.at.transform=true
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${WLP_DEBUG_ADDRESS}"。不過,如果您是從 ws-server.jar JAR 執行檔或內嵌 Liberty 伺服器 SPI 來執行 Liberty,您必須使用相同的設定,以啟用 Liberty 的除錯模式。
您可以在 server.env 檔中指定
WLP_OUTPUT_DIR、WLP_USER_DIR 和 WLP_DEBUG_ADDRESS 環境變數。您也可以在 jvm.options 檔中指定 JVM 選項。server.env 和 jvm.options 這兩個檔案都只有在您使用伺服器管理 Script 時才會運作。如果您使用 ws-server.jar JAR 執行檔來啟動伺服器,則不支援這些檔案。
程序
- 利用 server.env 檔來指定環境變數。
您可以在安裝和伺服器層次上,利用
server.env 檔來指定
JAVA_HOME、
WLP_USER_DIR 和
WLP_OUTPUT_DIR 之類的環境變數。
例如:
# 使用特定的 Java 二進位
JAVA_HOME=/opt/ibm/java-i386-60/jre
# JAVA_HOME=c:\Java
註: - server.env 檔只支援 key=value 配對。
- 系統不處理空白行及開頭為 # 字元的字行。
- 沒有跳出字元;所有字元都是文字,包括反斜線和前端及尾端空格。
- 等號 "=" 兩旁不應空格。
- 不支援 Shell 及變數擴充。
- WLP_USER_DIR 只能指定在 ${wlp.install.dir}/etc/server.env 檔中,因為這個變數的用途是指定其餘配置所在的位置。
找到及合併其餘配置之後,不預期也不支援其他位置有進一步的配置。
伺服器管理 Script 會在下列兩個位置搜尋 server.env 檔:${wlp.install.dir}/etc/server.env 和 ${server.config.dir}/server.env。
如果這兩個檔案都存在,兩個檔案的內容會合併起來;伺服器層次檔案中的值優先於執行時期層次檔案中的值。
您也可以在 Shell 環境中指定這些環境變數,但 server.env 檔優先於這些變數。
- 利用 jvm.options 檔來自訂 JVM 選項。
您可以使用執行時期和伺服器層次的
jvm.options 檔來指定其他伺服器啟動選項,例如
-X 引數。當透過伺服器管理 Script 來起始啟動、執行及除錯等動作時,會套用這些選項。
請務必每行只指定一個選項。
例如:
# 將資料堆大小上限設為 1024m。
-Xmx1024m
# 設定系統內容。
-Dcom.ibm.example.system.property=ExampleValue
# 啟用類別載入的詳細輸出。
-verbose:class
# 啟用詳細記憶體回收。
-verbose:gc
# 指定 IBM Java 虛擬機器專用的替代詳細記憶體回收日誌。
-Xverbosegclog:verbosegc.log
# 指定 HotSpot Java 虛擬機器 (JVM) 專用的其他詳細記憶體回收選項。
-Xloggc:verbosegc.log
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
![[16.0.0.4 以及更新版本]](../ng_v16004plus.gif)
您可以在下列位置中建立多個
jvm.options 檔案:
- ${wlp.install.dir}/usr/shared/jvm.options
- ${server.config.dir}/configDropins/defaults/jvm.options
- ${server.config.dir}/jvm.options
- ${server.config.dir}/configDropins/overrides/jvm.options
在伺服器啟動之前,這些檔案會以從上到下順序加以合併,並作為伺服器的 JVM 選項。如果這些檔案都不存在,則會讀取
${wlp.install.dir}/etc/jvm.options。
註: - 請勿用引號括住內容值。
- 系統不處理空白行及開頭為 # 字元的字行。
- 沒有跳出字元;所有字元都是文字,包括反斜線和前端及尾端空格。
- 等號 "=" 兩旁不應空格。
- 不支援 Shell 及變數擴充。
下一步
如果您使用伺服器 Script 來啟動 Liberty 伺服器,現行階段作業中的所有作業系統環境變數都可供使用。如果您使用 MBean 或「管理中心」來啟動伺服器,唯一可以使用的環境變數,是那些可供正在該系統上執行的遠端指令使用的變數。