之前的 JBoss 的 JBoss EAP6 Domain Mode Setup 與 JBoss EAP6.x Standalone Mode Cluster Configuration 都在 Windows 平台上作測試,現在起將拋棄 微軟 擁抱 Linux,因為後續的資料庫也是使用 Oracle DataBase,因此 Linux 平台選擇 Oracle Linux,大致的安裝過程可以查看 Oracle Linux Install Using LVM 。
安裝檔下載:
1. Oracle Linux 的來源可從下面取得:
https://edelivery.oracle.com/linux
2. 下載JDK:
Oracle的官網可以下載到最新的JDK版本,官網網址如下:http://www.oracle.com/technetwork/java/javase/downloads/index.html
所有的版本:http://www.oracle.com/technetwork/java/archive-139210.html
3. 指令:
會使用到 rpm 或 yum 的安裝移除令,可以參考 yum 基本介紹和參數說明
安裝 JDK 方法一開始(建議以此方法為主):
1. 查詢 Oracle Linux 預設的 openJDK : OracleLinux7.1_x86_64 所搭配的 Java 是 openJDK ,用 rpm -qa | grep java 查詢後將它移除
[root@localhost ~]# rpm -qa | grep java |
2. 移除 openJDK ,可以使用 yum remove java* 或者 rpm -e package_name 指令
[root@localhost ~]# yum remove java* Loaded plugins: langpacks Resolving Dependencies --> Running transaction check ---> Package java-1.7.0-openjdk.x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 will be erased --> Processing Dependency: java-1.7.0-openjdk for package: icedtea-web-1.5.2-0.el7.x86_64 ---> Package java-1.7.0-openjdk-headless.x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 will be erased ---> Package javapackages-tools.noarch 0:3.4.1-6.el7_0 will be erased --> Processing Dependency: jpackage-utils for package: rhino-1.7R4-5.el7.noarch --> Processing Dependency: jpackage-utils for package: rhino-1.7R4-5.el7.noarch --> Processing Dependency: jpackage-utils for package: tagsoup-1.2.1-8.el7.noarch --> Processing Dependency: jpackage-utils >= 1.6 for package: tagsoup-1.2.1-8.el7.noarch --> Processing Dependency: jpackage-utils for package: jline-1.0-8.el7.noarch --> Running transaction check ---> Package icedtea-web.x86_64 0:1.5.2-0.el7 will be erased ---> Package jline.noarch 0:1.0-8.el7 will be erased ---> Package rhino.noarch 0:1.7R4-5.el7 will be erased ---> Package tagsoup.noarch 0:1.2.1-8.el7 will be erased --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Removing: java-1.7.0-openjdk x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 @anaconda/7.1 493 k java-1.7.0-openjdk-headless x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 @anaconda/7.1 90 M javapackages-tools noarch 3.4.1-6.el7_0 @anaconda/7.1 155 k Removing for dependencies: icedtea-web x86_64 1.5.2-0.el7 @anaconda/7.1 1.8 M jline noarch 1.0-8.el7 @anaconda/7.1 72 k rhino noarch 1.7R4-5.el7 @anaconda/7.1 1.0 M tagsoup noarch 1.2.1-8.el7 @anaconda/7.1 140 k Transaction Summary ================================================================================ Remove 3 Packages (+4 Dependent packages) Installed size: 94 M Is this ok [y/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Erasing : icedtea-web-1.5.2-0.el7.x86_64 1/7 Erasing : rhino-1.7R4-5.el7.noarch 2/7 Erasing : jline-1.0-8.el7.noarch 3/7 Erasing : tagsoup-1.2.1-8.el7.noarch 4/7 Erasing : 1:java-1.7.0-openjdk-1.7.0.75-2.5.4.2.0.1.el7_0.x86_64 5/7 Erasing : 1:java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.0.1.el7_0.x 6/7 Erasing : javapackages-tools-3.4.1-6.el7_0.noarch 7/7 Verifying : 1:java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.0.1.el7_0.x 1/7 Verifying : icedtea-web-1.5.2-0.el7.x86_64 2/7 Verifying : tagsoup-1.2.1-8.el7.noarch 3/7 Verifying : rhino-1.7R4-5.el7.noarch 4/7 Verifying : 1:java-1.7.0-openjdk-1.7.0.75-2.5.4.2.0.1.el7_0.x86_64 5/7 Verifying : jline-1.0-8.el7.noarch 6/7 Verifying : javapackages-tools-3.4.1-6.el7_0.noarch 7/7 Removed: java-1.7.0-openjdk.x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 java-1.7.0-openjdk-headless.x86_64 1:1.7.0.75-2.5.4.2.0.1.el7_0 javapackages-tools.noarch 0:3.4.1-6.el7_0 Dependency Removed: icedtea-web.x86_64 0:1.5.2-0.el7 jline.noarch 0:1.0-8.el7 rhino.noarch 0:1.7R4-5.el7 tagsoup.noarch 0:1.2.1-8.el7 Complete! |
3. 使用 rpm 指令安裝 jdk-8u45-linux-x64.rpm
[root@localhost tmp]# rpm -ivh jdk-8u45-linux-x64.rpm 正在準備… ################################# [100%] Updating / installing... 1:jdk1.8.0_45-2000:1.8.0_45-fcs ################################# [100%] Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... tools.jar... localedata.jar... jfxrt.jar... plugin.jar... javaws.jar... deploy.jar... [root@localhost tmp]# java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) [root@localhost tmp]# javac -version javac 1.8.0_45 |
利用 rpm 安裝完的 JDK,根目錄會在 /usr/java/jdk1.8.0_45
[root@localhost java]# pwd /usr/java [root@localhost java]# ls -l 總計 4 lrwxrwxrwx. 1 root root 16 8月 17 16:36 default -> /usr/java/latest drwxr-xr-x. 9 root root 4096 8月 17 16:36 jdk1.8.0_45 lrwxrwxrwx. 1 root root 21 8月 17 16:36 latest -> /usr/java/jdk1.8.0_45 |
4. 編輯「/etc/profile」檔案。這個profile檔案裡寫的指令在系統開機時會自動執行。
使用「export」指令來設定Java相關的系統環境變數。要設定的變數有「JAVA_HOME」、「JRE_HOME」、「PATH」、 「CLASSPATH」。「JAVA_HOME」為JDK的目錄,就是剛剛複製到「/usr/lib」目錄中的JDK目錄,「JRE_HOME」為 JRE(Java Runtime Environment)的目錄,JDK有包含JRE,位置就在JDK目錄下的「jre」目錄。「PATH」變數為系統尋找指令(檔案)的路徑,將 「JAVA_HOME」變數和「JRE_HOME」變數加進原先的「PATH」變數前。「CLASSPATH」變數為Java尋找Java程式所使用到的 Class路徑,路徑可以是目錄也可以是.jar檔案,將目前的目錄「.」和「$JAVA_HOME/lib」與「$JAVA_HOME/jre /lib」加進變數中吧!
範例如下:
export JAVA_HOME=/usr/java/jdk1.8.0_45 export JRE_HOME=/usr/java/jdk1.8.0_45/jre export ANT_HOME=/opt/apache-ant-1.7.0 export JBOSS_HOME=/opt/jboss-eap-6.3 export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$ANT_HOME/bin export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JRE_HOME/lib |
重新關機後,就可以生效。
安裝 JDK 方法二開始(特殊需求時使用):
Step 01:將 jdk-8u45-linux-x64.tar.gz 解壓縮在 /opt/jdk1.8.0_45
Step 02:編輯「/etc/profile」檔案。這個profile檔案裡寫的指令在系統開機時會自動執行。
export ANT_HOME=/opt/apache-ant-1.7.0 export JAVA_HOME=/opt/jdk1.8.0_45_x64 export JRE_HOME=/opt/jdk1.8.0_45_x64/jre export JBOSS_HOME=/opt/jboss-eap-6.3 export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH:$ANT_HOME/bin export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JRE_HOME/lib |
重新關機後,就可以生效。
安裝 JBoss EAP 開始:
1. 到 https://access.redhat.com/downloads/ 下載 jboss-eap-6.3 的 zip 檔,並解壓縮放在 /opt/jboss-eap-6.3
2. 執行 /opt/jboss-eap-6.3/bin/add-user.sh 增加管理 JBoss EAP Server 的帳號
3. 執行 /opt/jboss-eap-6.3/bin/standalone.sh 就可以手動啟動 JBoss EAP , 並可以在本機輸入網址 http://localhost:9990/console/ 進入管理.
在 Oracle Linux 上建立 JBoss EAP 的 Service
1. 編輯 $JBOSS_HOME/bin/init.d/jboss-as.conf ,檔案內容至要少有 JBOSS_HOME & JBOSS_USER 這兩個變數的設定。
範例如下:
# General configuration for the init.d scripts, # not necessarily for JBoss AS itself. # The username who should own the process. # JBOSS_USER=root JBOSS_HOME=/opt/jboss-eap-6.3 |
2. 將 $JBOSS_HOME/bin/init.d/jboss-as.conf 複制到 /etc/jboss-as 目錄,與 $JBOSS_HOME/bin/init.d/jboss-as-standalone.sh 複制到 /etc/init.d
Copy the modified configuration file to the /etc/jboss-as directory. [user@host init.d]$ sudo mkdir /etc/jboss-as [user@host init.d]$ sudo cp $JBOSS_HOME/bin/init.d/jboss-as.conf /etc/jboss-as/ Copy the start-up script to the /etc/init.d directory. [user@host init.d]$ sudo cp $JBOSS_HOME/bin/init.d/jboss-as-standalone.sh /etc/init.d |
3. 修改 /etc/init.d/jboss-as-standalone.sh 內容,如紅色標注部份,因為 JAVA_HOME 已在前面有設定了, 所以不用再作判斷。
#!/bin/sh . . . |
4. 註冊 JBoss 為 Service
[user@host init.d]$ sudo chkconfig --add jboss-as-standalone.sh |
5. 執行指令 setup 檢查 JBoss EAP 的服務是否有設為自動啟動( [*] jboss-as-standalone.sh),若沒有則按空白鍵作設定。這樣啟 OS 時,JBoss EAP 就會自動帶啟。
[root@localhost ~]# setup |
4. 手動啟動/停止/重啟 JBoss
[root@localhost ~]# sudo service jboss-as-standalone start [stop] [restart] [status] [root@localhost ~]# sudo service jboss-as-standalone |
參考:
http://magiclen.org/linux-jdk/
https://docs.oracle.com/javase/7/docs/webnotes/install/linux/linux-jdk.html
http://wei-meilin.blogspot.tw/2012/10/jeap-6-red-hat-linux-service.html
https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6.1/html/Installation_Guide/Install_JBoss_Enterprise_Application_Platform_6_Red_Hat_Enterprise_Linux_Service.html
https://access.redhat.com/documentation/en-US/JBoss_Enterprise_Application_Platform/6.3/html/Installation_Guide/Install_JBoss_Enterprise_Application_Platform_6_Red_Hat_Enterprise_Linux_Service.html
[user@host init.d]$
sudo chkconfig --add jboss-as-standalone.sh
留言列表