2011年1月26日 星期三

[Oracle BPM/SOA 基礎] 安裝BPM/SOA Suite 11gR1PS3

這是小弟一系列Oracle Fusion Middleware教學文件的第一站,有鑑於網路上面鮮有繁體中文版本的Fusion Middleware技術資料,本系列文章將會針對整個Fusion Middleware各種不同產品提供說明。

本文先針對Business Process Management (BPM) 與Service-Oriented Architecture (SOA)這部分產品安裝進行說明。在安裝之前,各位請先花一點時間看一下簡單的產品架構說明,這會幫助各位了解產品安裝過程的各個步驟。

架構說明

首先,Oracle Fusion Middleware產品線的主要使用Java做為核心語言,也因此,幾乎所有的產品底層都會需要一個application server(OSGi或非集中化架構的除外),Oracle採用的是WebLogic Server做為此底層JEE Container,這也是待會在執行安裝步驟之時,你會需要先進行WebLogic Server安裝的主要原因。

而針對【整合】這個主題,Oracle的核心產品就是SOA Suite,如下圖所示,簡單來說他是一個套餐產品,內容包含了企業內部在整合多個現存系統所需要的元件:BPEL、Mediator、Service Bus、Rule Engine、人工流程、B2B與BAM... 等等。這些元件在跨系統整合過程中各自扮演了不同的角色,我也將在這一系列的之後技術文章簡單介紹各主要元件的使用。


那SOA又怎麼會和BPM扯在一起呢?



Oracle對於BPM產品的概念是:商業流程本身除了人工作業之外,也存在了許多現有系統的作業整合,也因此,BPM基本上與SOA算是互補的概念:SOA需要在企業中找到一個清楚的需求定位,在這部分BPM可以做為一清晰的需求與藍圖;相對的,BPM在落實的階段需要一個現存系統作業整合的實踐,在這部分SOA提供了完整的協助。

因此,Oracle的BPM產品採用了基於SOA產品做為底層的一種設計架構,你可以看到這張架構圖中,中間核心的部分是由SOA架構那邊偷來的:


開始安裝吧!

安裝之前,請先確認你的系統環境,由上面所提供的架構圖中你不難猜到,這個產品本身的memory footprint應該不小,基本上我會強烈建議各位採用64-bit的OS環境,配合最少4GB記憶體做為你的開發用環境。開發過程中你將會需要一個IDE -- JDeveloper(開發用... 廢話!),一個database(紀錄流程執行與歷史資料所需),以及一個開發server(SOA/BPM Suite 的instance,沒錯... 現在的版本你沒辦法在IDE上面直接測試,一定要一個server作部署與測試)。你可以在這邊找到Oracle的system configuration certification。

我的安裝步驟範例將會以Windows 7 + Oracle DB 11gR2作為基準,並且按照下列步驟安裝產品:下載所有產品 --> JDK安裝 --> 資料庫儲存庫設定 --> 開發server安裝 --> IDE安裝 --> 驗證安裝

下載所有產品
你需要下載下列的軟體已執行安裝。(請注意:Oracle所有產品你都可以在OTN網站免費下載測試使用,你可以在這邊找到BPM11gR1PS3版本產品下載的連接,這裡找到Oracle DB的產品下載)
  1. JDK 64-bit:到這邊找個最新的版本吧。
  2. RCU (Repository Creation Utility):GUI應用程式,安裝BPM/SOA所需schema到你的資料庫之中,你會需要到Window 32bit JVM的選項之下才看得到下載的位置。
  3. WebLogic Server generic版:64bit Windows的安裝檔。
  4. SOA Suite:有兩個大檔案...
  5. JDeveloper:IDE.... again... 廢話....
  6. JDeveloper extension:你需要兩個extension來開發BPM/SOA流程,SOA extension與BPM extension。

JDK安裝
這部分不用說明吧...

資料庫儲存庫設定:
基本上Oracle SOA/BPM Suite現在支援Oracle DB、MS SQL與IBM DB2做為後端的資料庫主機,在此我不描述資料庫的安裝步驟,你可以選擇任何一個你習慣的資料庫來安裝,也可以沿用你現有的資料庫,省掉資料庫安裝的步驟,只是請注意,你的資料庫需要符合特定Oracle BPM/SOA產品所需的版本。
  1. 解壓縮ofm_rcu_win_11.1.1.4.0_disk1_1of1.zip檔至<rcuHome>目錄之中。
  2. 執行<rucHome>\BIN\rcu.bat,你會看到一個圖形化執行介面,執行下一步吧!
  3. 選擇建立儲存領域,下一步。
  4. 根據你資料庫的類型設定對應的連線資訊,下一步。
  5. 選擇元件:你只需要打勾起"SOA與BPM Infrastrature",有一些其他必需的部分會被自動選取,RCU接下來會在你的資料庫中產生四個schema,分別是DEV_ORABAM、DEV_SOAINFRA、DEV_ORASDPM與DEV_MDS,開頭的"DEV"就是你所選定的前置碼。
  6. 提供密碼並設定表格空間:這兩個步驟請給定連接schema的密碼,下一步之後,接受所有預設的表格空間設定,再下一步RCU就會自動幫你產生所有的schema。
開發server安裝:
如先前架構部分所提到的,BPM/SOA Suite底層是架構在WebLogic Server之上,所以在安裝開發server時需要有三個主要步驟:首先須先把WebLogic Server安裝完成;其次將BPM/SOA Suite安裝至此WebLogic之上;最後一個步驟就是執行configuration wizard產生BPM/SOA執行所需的WebLogic domain,我們一步一步來看看安裝的方式:

安裝WebLogic Server
  1. 執行WebLogic Generic安裝檔
    在command prompt之下執行 > java -jar wls1034_generic.jar
    在GUI介面出現後選擇"建立新的Middleware本位目錄",並指定你所要安裝的目錄位置,未來你所延伸安裝的其他Fusion Middleware元件,如BPM/SOA和WebCenter... 等等,都會被放置在此目錄之下
  2. 註冊安全更新
    既然是測試所用,你可以跳過這一步,不要勾選接受安全更新
  3. 選擇安裝類型
    選一般即可,這樣會安裝WebLogic Server還有Coherence元件(都是SOA必要元件)
  4. JDK選擇
    按下"瀏覽"按鍵,選一下你在一開始所安裝的JDK目錄,此目錄會出現在本地JDK欄位之中
  5. 選擇產品安裝目錄、選擇捷徑位置與安裝摘要
    接下來的這三個步驟,只要接受預設值,按下一步即可。
  6. 安裝開始執行,等待囉...
安裝BPM/SOA server
  1. 解壓縮ofm_soa_generic_11.1.1.4.0_disk1_1of2.zipofm_soa_generic_11.1.1.4.0_disk1_2of2.zip兩個壓縮檔至同一個目錄,你會在該目錄之下看到Disk1 ~ Disk5五個子目錄。
  2. 執行Disk1\setup.exe,此時安裝程式會提問你的JDK/JRE目錄位置,指定為你所安裝的JDK路徑吧!
  3. 略過【歡迎】與【安裝軟體更新】步驟
    選擇略過軟體更新,並按下一步,在系統通過先決條件檢查之後進入【指定安裝位置】選項。
    如果你之前WebLogic Server有成功備安裝的話,你將可以在Oracle Middleware本位目錄的下拉選單之中選到之前所安裝的middleware本位目錄。下面的Oracle本位目錄代表的就是你SOA Suite將在middleware本位目錄之下所被安裝的目錄位置。以下列畫面為例:我的middleware本位目錄是指定在e:\ofm11gr1ps3,Oracle本位目錄是在Oracle_SOA1,代表我的BPM/SOA Suite的binary執行檔與library都會被存放在e:\ofm11gr1ps3\Oracle_SOA1之下 (註:其實還是會有一些其他的目錄會在安裝過程中產生於middleware本位目錄之下,如oracle_common。但是通常是存放不同元件所共用的檔案,SOA特定資料都會存放在Oracle_SOA1之下)
  4. 應用程式伺服器
    此步驟將會偵測Middleware本位目錄之中的應用程式伺服器安裝。由於從PS3版本之後,Oracle BPM/SOA開始支援其他廠商的application server做為底層的JEE container (例如:IBM WebSphere),所以你可以看到畫面之中,安裝程式抓出Middleware本位目錄之中有WebLogic Server安裝於此,若你使用IBM WebSphere做為底層的container,在此畫面之中你將看到WebSphere供你選擇。
  5. 安裝摘要
    就看一下,按下安裝就可以開始等待了...

產生BPM/SOA所需的domain
  1. 執行configuration wizard
    在command prompt中執行<Middleware_Home>\wlserver_10.3\common\bin\config.cmd
  2. 選擇新增WebLogic網域
  3. 選取網域來源
    記得勾選 "Oracle BPM Suite for developers - 11.1.1.0 [Oracle_SOA1]" 以及 "Oracle Enterprise Manager - 11.1.1.0 [oracle_common]",其他必須的componet將會被自動勾選。
  4. 指定網域名稱與位置
    給一個你喜歡的網域名,這邊我所使用的是bpm_domain,預設的網域位置將被放在你的<Middleware_Home>\user_projects\domains之下。這邊特別說明一下,Oracle BPM/SOA Suite的網域概念是沿用WebLogic Server的,也就是前面的WebLogic Server與SOA Suite Server的安裝步驟都是安裝執行所需要的binary data,但是你可以在任何一台有安裝此binary data的機器上面產生一至多個domain,執行多個server(有些是跑SOA,有些是跑JEE Container only),各自使用不同的configuration (如listen不同的port或有不同的JDBC設定)。
  5. 下一步,給定密碼
    給一個你管理所需的使用者帳號與密碼。
  6. 設定伺服器啟動模式與JDK
    選擇"開發模式",並使用預設所選擇的JDK。
  7. 設定JDBC元件綱要
    此步驟將使用之前RCU所產生的database schema,你可以選擇介面下面所列出來的四個元件綱要,各自指定之前已經產生的DEV_SOAINFRA、DEV_ORASDPM與DEV_MDS schema的資料庫連接方式

    等待測試元件綱要完成
  8. 選取選擇性組態
    在開發server的架構之下,我們當然希望環境越單純越好,因此,我們希望只有一台JVM被啟動即可以完成所有的開發動作。當然,若是在未來建置上線系統的時候,你可能會考慮有多台的server,分開管理server、SOA server、與一般WebLogic server至不同的JVM,甚至還會考慮建立叢集環境。
    你只需要選擇"管理伺服器"即可,我們會將所有的component塞到這個server之中。
  9. 設定管理伺服器
    你可以指定你的server所聽的TCP port,預設值是7001
  10. 確定組態摘要,OK的話就開始建立domain了!
IDE安裝:
  1. 執行jdevstudio11114install.exe
  2. 選擇先前安裝WebLogic Server與BPM/SOA Suite的Middleware本位目錄。
  3. 選擇產品與元件
    選擇產品與元件時,記得將JDeveloper Studio與Application Development Framework Runtime都要選起來。
  4. 選擇JDK
    這一步驟你應該會想要按下"瀏覽",選擇之前所安裝的JDK 64-bit版本吧... 但是,不知為什麼,那個按鈕是裝飾用的,按不下去,你一定得要使用JDeveloper所包綑的JDK...#@%$^%

    不過沒關係,等安裝結束之後,我會告訴你怎麼切換JDeveloper使用64-bit JDK。
  5. 確認產品安裝目錄,並確認安裝概要
    基本上,就是一直下一步,直到看到開始安裝就可以開始等待囉!
  6. 切換使用64-bit JDK
    • 完成安裝之後,你的JDeveloper會被安裝至<Middleware_home>\jdeveloper目錄之下。
    • 使用你的文字編輯器打開<Middleware_home>\jdeveloper\jdev\bin\jdev.conf檔。
    • 找到一行類似:SetJavaHome e:\ofm11gr1ps3\jdk160_21,你只要將e:\ofm11gr1ps3\jdk160_21換成你64-bit JDK目錄位置即可。
  7. 安裝JDeveloper SOA extension
    • 啟動JDeveloper:<Middleware_home>\jdeveloper\jdeveloper.exe
    • Menu中選擇Help --> Check For Updates
    • 在搜尋列中打入SOA,你會發現SOA Composite Editor的選項,選擇他並選Next開始下載,下載完成之後,JDeveloper會要求關閉,當重新開啟之後,SOA Composite Editor便已安裝完成了。
  8. 安裝JDeveloper BPM extension
    • 重複上一步驟,到搜尋列時打入BPM,你會發現BPM Studio 11g的選項,重複下載與重開JDeveloper的過程,當重新開啟之後,BPM Studio便已安裝完成了。

驗證安裝

現在我們該啟動剛才安裝的所有軟體,試試看是否正常運作了!
  1. 首先,先確認你的資料庫正常啟動執行
  2. 啟動BPM/SOA server
    • 使用command prompt執行下列指令:
      > cd <Middleware_Home>\user_projects\domains\bpm_domain
      > startWebLogic.cmd
    • 正常啟動時間會花4分鐘左右,請耐心等到出現下列字串於螢幕上即代表server已經啟動完成
      資訊: FabricProviderServlet.stateChanged SOA Platform is running and accepting requests
  3. 連接server管理介面
    • 使用browser連接URL: http://<your_soa_host>:7001/em
    • 使用產生domain所指定的帳號與密碼登入
    • 當你見到此畫面時,恭喜! 你已經完成server安裝了!














沒有留言: