更新程式環境到wildfly18+openjdk11-phase3: 伺服器環境升級準備

URL Link //n.sfs.tw/14562

2020-03-07 21:59:52 By jung

目前環境:
Oracle Server JRE 8uxxx

Wildfly 10.0.0.Final (2016-01-29)Widlfly 10.1.0.Final(2016-08-19)

升級後環境:

OpenJ9 (jdk-11.0.6+10_openj9-0.18.1 AdoptOpenJDK LTS ) Large Heap

Wildfly 18.0.1Final(2019-11-14)

在IDP程式尚未測試正常前,可先將環境預先準備好,等到程式更新正常,就可直接升級相關套件

 

Step1: 設定檔均放在/opt/settings/

§ 縣市登入下拉選單(xxx.xml)

§ MongoDB 主機 IP(mongo.properties)

§ MongoDB 資料庫屬性檔(sysconfig.properties)

§ 萬用驗證碼(wildcard.properties)

§ 資料庫連線資料(db.properties)

並將這些檔案的所屬群組及擁有者都改為:wildfly

 

Step2-1: 將jdk11 & wildfly套件解壓縮到指定目錄

 

tar zxvf OpenJDK11U-jre_x64_linux_openj9_linuxXL_11.0.6_10_openj9- 0.18.1.tar.gz -C /opt/

ln -s /opt/jdk-11.0.6+10-jre/ /opt/jdk11

 

 

Step2-2: 編輯/etc/profile,將JAVA目錄改為jdk11

 

export JAVA_HOME="/opt/jdk11"

 

如果已經在/etc/profile.d/目錄下有java.sh等相關設定,需再修改

修改後,使用

source /etc/profile

可用 java -version 檢查是否生效

正確為下圖

 

Step2-3: 匯入 TWCA 根憑證與中繼憑證

(憑證路徑依原本 ssl.conf 的路徑即可)

匯入根憑證需要輸入keystore密碼

keytool -import -trustcacerts -alias TWCAROOT -cacerts -file /etc/pki/tls/certs/root.cer

keytool -import -trustcacerts -alias TWCAUCA -cacerts -file /etc/pki/tls/certs/uca.cer

 

Step3-1: 解壓縮wildfly18套件

 

tar zxvf wildfly-18.0.1.Final.tar.gz -C /opt/
ln -s wildfly-18.0.1.Final/ wildfly18
chown -R wildfly:wildfly /opt/wildfly18
chown -R wildfly:wildfly /opt/wildfly-18.0.1.Final

 

Step3-2: 修改wildfly18設定檔

cp /opt/wildfly18/docs/contrib/scripts/init.d/wildfly.conf /etc/default/wildfly18

wildfly18設定檔須命名為wildfly,以配合systemd內的執行檔

在此先用wildfly18,正式上線時再改名

修改檔案內容為:

JAVA_HOME="/opt/jdk11"
JBOSS_HOME="/opt/wildfly18"
JBOSS_USER=wildfly
JBOSS_MODE=standalone
JBOSS_CONFIG=standalone-full-ha.xml
STARTUP_WAIT=60
SHUTDOWN_WAIT=60
JBOSS_CONSOLE_LOG="/var/log/wildfly/console.log"
JBOSS_OPTS="-b 127.0.0.1"

 

Step 3-3: 複製wildfly18啟動檔到/etc/init.d/,取代原本wildfly啟動檔

cp /opt/wildfly18/docs/contrib/scripts/init.d/wildfly-init-redhat.sh /etc/init.d/wildfly18
 
在此先改檔名為wildfly18,正式上線時可拷貝覆蓋
 
執行
 
systemctl daemon-reload
 
到此,環境準備完成,正式上線時,需修改下列檔案:
1. /etc/profile or /etc/profile.d/java.sh, source /etc/profile
2. /etc/default/wildfly18 rename to wildfly
3. /etc/init.d/wildfly18 rename to wildfly
4. systemctl daemon-reload
5. systemctl enable wildfly && systemctl restart wildfly
 
之後要發布程式時,需修改執行命令路徑:
sh /opt/wildfly18/bin/jboss-cli.sh --connect controller=127.0.0.1 -c "deploy CncResource.war"
如果wildfly18正常,需再設定wildfly使用的記憶體上限
位於
/opt/wildfly18/bin/standalone.conf
修改
JAVA_OPTS="-Xms1024m -Xmx2048m -XX:MetaspaceSize=2048M -XX:MaxMetaspaceSize=4096m....
 
終於要進入修改程式的最後步驟了~未完待續~
 
先記錄一下,要改的檔案很多...
POM @cncauthserver&CncResource: cnclibs 1.1.7 & EduDataType 1.0.6.5
POM @xxauth: cnclibs 1.1.7 & EduDataType 1.0.6.5
new package: "relation"@xxauth
new class: "xxRelation.java"@xxauth
new file: "relation.spi.ITSRelation"@META-INF.service package
 
implement new method:
  doAuthenticatewSeatNo
  doSyncDatawSeatNo
 
file modified:
  CNCAPIwSeatNoResource.java@CncResource
  CNCOauthwSeatNoResource.java@CncResource
  xxSyncData.java@xxauth
  xxauth.java@xxauth
  AuthDemo.java@cncauthdemo
  CNCXXAccountSource.java@cncaccountdatasource
  XXDataRequest.java@cncaccountdatasource