本節介紹已知的管理問題以及相關的解決方案。
叢集建立時,Communications Server 會為其隨機指定 1026 到 45556 之間的活動訊號連接埠。對於預設叢集 (亦即 Communications Server 安裝所建立的預設叢集),系統會隨機選取介於 0 至 45556 之間的數字。叢集建立程序不會精確偵測是否已有其他服務使用該活動訊號連接埠。
如果自動叢集建立配置選取了與另一服務 (已使用該連接埠) 衝突的活動訊號連接埠,請將叢集活動訊號連接埠更新為系統未使用的連接埠。
要變更叢集的活動訊號連接埠,請使用下列 asadmin 指令:
asadmin set cluster-name.heartbeat-port= newportnumber
在執行 64 位元 Linux 的 NFS 伺服器上,asadmin create-domain 指令在嘗試於掛載 Network File System (NFS) 的檔案系統上建立網域時可能會失敗。
無已知解決方案。
自動重建大型記錄檔時,觀察到回應時間略為增加的情形。
修改記錄程式設定中「檔案自動重建限制」和「檔案自動重建時間限制」的值,可以將效能降低情形減至最低。這些特性的值會視您的應用程式和環境而定。
針對 IBM Message Queue 產品部署常規 RA 配接卡失敗。server.policy 檔案授予的權限如下。
grant { permission java.util.logging.LoggingPermission "control"; permission java.util.PropertyPermission "*", "read,write"; } |
變更 server.policy 檔案中的權限,如下所示:
grant codeBase "file:${com.sun.aas.installRoot}/lib/install/applications/adminapp/-" { permission java.util.logging.LoggingPermission "control"; }; |
在某些情況下,系統會將安裝在 DAS 上但需與特定實例同步的檔案,真的傳送至其他實例。
無已知解決方案。
即使啟動期間失敗的元件並不重要,asadmin start-cluster 指令仍會顯示過多訊息。請參閱下列不重要元素 (與叢集中的實例有關) 失敗時產生的指令輸出範例:
./asadmin start-cluster --port 9898 cluster1 Please enter the admin user name>admin Please enter the admin password> The clustered instance, instance2, was successfully started. error 0 [#|2008-07-17T14:58:16.496+0200|WARNING|sun-appserver9.1|javax.jms| _ThreadID=10;_ThreadName=main; _RequestID=90bbbe3a-d654-4480-b295-7e317d945a4a;|[C4003]: Error occurred on connection creation [localhost:37676]. - cause: java.net.ConnectException: Connection refused|#] error 1 [#|2008-07-17T14:58:17.517+0200|WARNING|sun-appserver9.1|javax.jms| _ThreadID=10;_ThreadName=main; _RequestID=90bbbe3a-d654-4480-b295-7e317d945a4a;|[C4003]: Error occurred on connection creation [localhost:37676]. - cause: java.net.ConnectException: Connection refused|#] error 2 [#|2008-07-17T14:58:30.596+0200|WARNING|sun-appserver9.1| javax.enterprise.system.container.ejb| _ThreadID=13;_ThreadName=pool-1-thread-4;TimerBean; _RequestID=5954a044-df06-4a3e-902a-0c40b4b6cddb; |EJB5108:Unable to initialize EJB Timer Service. The likely cause is the database has not been started or the timer database table has not been created.|#] error 3 [#|2008-07-17T14:58:32.512+0200|WARNING|sun-appserver9.1| javax.enterprise.resource.resourceadapter|_ThreadID=10;_ThreadName=main; __CallFlowPool;_RequestID=90bbbe3a-d654-4480-b295-7e317d945a4a;| RAR5005:Error in accessing XA resource with JNDI name [__CallFlowPool] for recovery|#] The clustered instance, instance1, was successfully started. error 0 [#|2008-07-17T14:58:21.117+0200|WARNING|sun-appserver9.1| javax.enterprise.system.container.ejb| _ThreadID=13;_ThreadName=pool-1-thread-4;TimerBean; _RequestID=30827d9a-72ac-4854-b216-06494b6a9fb5; |EJB5108:Unable to initialize EJB Timer Service. The likely cause is the database has not been started or the timer database table has not been created.|#] error 1 [#|2008-07-17T14:58:23.106+0200|WARNING|sun-appserver9.1| javax.enterprise.resource.resourceadapter| _ThreadID=10;_ThreadName=main;__CallFlowPool; _RequestID=b41d76fa-0203-49f7-a2ae-83bf242d3e7a; |RAR5005:Error in accessing XA resource with JNDI name [__CallFlowPool] for recovery|#] Command start-cluster executed successfully. |
無已知解決方案。可以略過這些 (異常) 訊息。
依預設,在 as-install/lib/package-appclient.xml 中,asenv.conf 指向的 domain1 之 AS_ACC_CONFIG 變數有一個程序內定值。如果刪除 domain1 並建立新網域,則不會使用新網域名稱更新 AS_ACC_CONFIG 變數,這將導致 package-appclient 程序檔失敗。
執行下列動作之一:
保留 domain1 的完整,並在周圍建立其他網域。
移除 domain1 並使用新網域名稱替代 as-install/lib/package-appclient.xml 中 domain1 的程序內定值。
如果沒有 domain1,則每次建立新網域時均必須執行此作業。
在 Application Server 上可以配置 J2SE 1.4.x、5.0 或更高版本。啟動 JMX 代理程式是 J2SE 5.0 平台不可或缺的功能。如果您在伺服器啟動時明確設定系統特性,則會啟動此功能。
範例值包含︰
name="com.sun.management.jmxremote" value="true" name="com.sun.management.jmxremote.port" value="9999" name="com.sun.management.jmxremote.authenticate" value="false" name="com.sun.management.jmxremote.ssl" value="false" |
在配置 JMX 特性並啟動伺服器之後,會在 Application Server Virtual Machine 上啟動新的 jmx-connector 伺服器。此作業會產生不良副作用,即負面影響管理功能,並且 Application Server 管理主控台和指令行介面可能會產生未預期的結果。問題在於在內建 jmx-connector 伺服器和新的 jmx-connector 伺服器之間存在某些衝突。
在使用 jconsole (或其他任何 JMX-compliant 用戶端) 時,考量重複使用透過 Application Server 啟動程序檔啟動的標準 JMX 連接器伺服器。
伺服器啟動後,server.log 中會顯示與下行類似的文字。您可連接至其中指定的 JMXService URL,並在成功提供憑證之後執行相同的管理/配置作業,例如:
[#|2004-11-24T17:49:08.203-0800|INFO|sun-appserver-ee8.1| javax.enterprise.system.tools.admin|_ThreadID=10;|ADM1501: Here is the JMXServiceURL for the JMXConnectorServer: [service:jmx:rmi:///jndi/rmi://hostname:8686/management/ rmi-jmx-connector]. This is where the remote administrative clients should connect using the JSR 160 JMX Connectors.|#] |
在文件中未說明 .asadmintruststore 檔案。如果伺服器管理員的 home 目錄中不存在此檔案,則升級在此伺服器上代管的某些應用程式時,可能會遇到嚴重錯誤。
如果可能,應由安裝此伺服器的使用者執行 asadmin start-domain domain1 指令。
如果未由該使用者執行,則應從安裝使用者的 home 目錄中,將 .asadmintruststore 移動或複製到執行使用者的 home 目錄。
請注意,如果將此檔案從安裝使用者的 home 目錄移動 (而非複製) 到執行使用者的 home 目錄,您可能會遇到應用程式升級問題 (例如在錯誤 6309079、6310428 和 6312869 中說明的問題),因為在升級/安裝使用者 (在 Java ES 中一般為 root) 的 home 目錄中將不再包含 .asadminstruststore 檔案。
Communications Server 叢集實例的預設 MQ 整合模式為 LOCAL。當 Communications Server 的安裝位置 (PATH) 很長 (顯示為「not short」) 時,imqbrokerscv.exe 便會在叢集實例啟動時當機。此問題屬於 imqbrokersvc 中的記憶體分配問題。
叢集實例的 JMS 服務類型必須從預設的 LOCAL 變更為 REMOTE。在此配置中,所有實例都指回 DAS 代理程式。請依照以下說明在 REMOTE 模式中配置叢集。
當使用 REMOTE 模式時,所有實例均使用一個代理程式 (DAS),因此在 Communications Server 叢集啟動時,不會建立任何代理程式叢集。如需詳細資訊,請參閱 http://www.glassfishwiki.org/gfwiki/attach/OnePagersOrFunctionalSpecs/as-mq-integration-gfv2.txt 單頁短文第 4.1 節第 iii 點的「自動叢集」。上述功能將無法使用!
依據您的環境修改連接埠與密碼檔案。請注意,在以下說明中,叢集名稱為 racluster,DAS 管理連接埠為 5858,DAS JMS 連接埠為 7676。
修改叢集配置,將 JMS 類型變更為 REMOTE。
as-install/bin/asadmin.bat set --port 5858 --user admin --passwordfile \ as-install/bin/password_file racluster.jms-service.type=REMOTE |
建立與 DAS JMS 主機對應的 JMS 主機。
as-install/bin/asadmin.bat create-jms-host --port 5858 --user admin --passwordfile \ as-install/bin/password_file --target racluster --mqhost localhost --mqport 7676 \ --mquser admin --mqpassword admin dashost |
將預設 JMS 主機設定為在上一步驟中建立的 DAS JMS 主機。
as-install/bin/asadmin.bat set --port 5858 --user admin --passwordfile \ as-install/bin/password_file racluster.jms-service.default-jms-host=dashost |
移至 [配置] -> [cluster-name-config] -> [Java 訊息服務] -> [JMS 主機]。
按一下 [新增] 以建立新的 JMS 主機,將其命名為 dashost。
輸入與 DAS 的 JMS 服務對應的配置設定,預設設定如下所示︰
主機名稱:localhost
連接埠︰ 7676
管理使用者︰ admin
密碼︰ admin
依據您 DAS JMS 服務的需要修改上述設定。
瀏覽回 [Java 訊息服務] 標籤,然後將 JMS 服務類型變更為 REMOTE (預設為 LOCAL)。
從 [default-jms-host] 下拉式清單中選擇 [dashost]。
儲存變更,然後啟動節點代理程式或叢集。
當嘗試使用某些不支援的瀏覽器顯示 [記錄統計監視] 頁面中的圖表時,可能會丟出以下錯誤︰
Error loading jmaki.widgets.jmaki.charting.line.Widget : id=form1:jmaki_chart11 Script: http://easqelx5.red.iplanet.com:4848/resources/jmaki/charting/ \ line/component.js (line:5437). Message: area.initialize is not a function |
使用支援的瀏覽器。請參閱瀏覽器,以取得 Communications Server 支援的瀏覽器清單。
在 AIX 作業系統上,嘗試使用自訂主密碼建立網域失敗,同時會顯示以下錯誤:
keytool error (likely untranslated): java.lang.NullPointerException Enter keystore password: New keystore password: |