文章目錄
- 1.環境需求
- 2.安裝步驟
- 3.服務啟動
- 1.服務部署
- 2.監控設定
- 3.服務調用與監控資料查看
- 1.遇到的問題描述
- 2.排除問題的方法
本文只代表作者在一定階段的認識與理解,謝謝!
一、寫作前提
我負責的一個項目,現已經開發完畢,部署方式如所示:
我方開發的項目是部署在香港的Portal,需要外網,它會通過特殊的通訊通道與客戶內網的SAP系統進行直接的資訊互動,包括資訊的相互讀寫。客 戶的SAP Team考慮到對相關請求與安全監控等因素,要求在Portal與SAP之間的資訊互動增加一個通訊監控服務。經討論,需要在Portal與SAP之間增 加一個AppFabric服務,Hosting一個WCF服務建議雙邊通訊,並收AppFabric監控訪問請求相關資訊,因此資訊部署結構如下:
本文主要描述如何安裝AppFabric、配置,以及如何建立測試的服務和實施資訊監控,具體見下面具體描述。
二、本文內容
本文依據實現的項目需求,講解如果安裝、部署設定AppFabric進行WF及WCF的監控,以及本次部署過程中的問題排除方法,內容主要包含如下:
1. AppFabric的安裝
2.AppFabric的部署
3.本次部署過程中的問題排除
4.總結
5.代碼下載(下載)
三、AppFabric的安裝1.環境需求
硬體環境:
略過,目前所有的硬體環境幾乎都支援,最好支援64位作業系統。
系統內容:
Windows 7
Windows Vista SP2
Windows Server 2008 SP2
Windows Server 2008 R2
具體環境需求可參考微軟官方說明(AppFabric)(本文下載的是:WindowsServerAppFabricSetup_x64_6.1.exe):
http://www.microsoft.com/zh-cn/download/details.aspx?id=15848
或下面的安裝說明網站:
http://msdn.microsoft.com/zh-cn/library/hh334371%28v=azure.10%29#%E4%B8%AD%E5%9B%BD%EF%BC%88%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87%EF%BC%89
2.安裝步驟
下載完WindowsServerAppFabricSetup_x64_6.1.exe後,下面需要做的工作就是進行AppFabric Server的安裝,安裝部署如下(因為本機已經安裝完畢,因此,本文中的圖片來自互連網,特此聲明):
1)開啟安裝程式,進行安裝嚮導首頁
2)點擊“下一步”,進入服務功能組件選項(在我的項目中只選擇了“託管服務”)
3)安裝完成之後,將開啟IIS管理器,點擊任何一個IIS中的網站,將看到右邊“功能視圖”中會新增顯示“AppFabric”功能區域
至此,我們完成了AppFabric軟體的安裝。開啟“開始”菜單下的“所有程式”,點擊“Windows Server AppFabric”下的“配置AppFabric”,將彈出如下頁面:
點擊“下一步”
我的“監控提供者”選擇的是SqlClient,然後點擊後面的“配置”,進行資料庫配置頁面,中的兩個“監控提供者”都需要配置,否則通不允許進行下一步。
點擊“確定”之後,點擊“下一步”,進行配置完成介面。
當上述部署完成之後,其實,它已經為我們建立了相關的資料庫、表及相關預存程序等資訊,並且在代理中建立了相關計劃任務用於系統資訊的監控與收集。
3.服務啟動
在軟體安裝完成後,需要啟動相關服務,其中有些服務可能需要修改,本文所遇到的問題即是存在於服務的許可權(後面會進行詳細介紹)。
點擊“開始”菜單,進入“管理工具”,開啟“服務”,在服務中需要啟動如下服務:
1)AppFabric 工作流程管理服務
2)AppFabric 事件收集服務
3)SQL Server Agent (MSSQLSERVER),本系統安裝的是MS SQL Server 2008 R2
其中,1)和2)是安裝AppFabric後自動產生的。
四、AppFabric的部署
AppFabric Server安裝成功後,需要進行的操作即是進行服務的託管及監控的設定及監控資料查看。
1.服務部署
本文將對WCF及WF服務進行託管,程式樣本來自於“部落格園”的“2012”(樣本下載)。此樣本將在AppFabric Server中Hosting WCF及WF服務,然後建立一個MVC的Web Project進行服務的調用。
首先下載執行個體,將檔案解壓到D:\ Contoso
1、 資料庫[使用SQL Server Managerment Studio]
建立一個新的資料庫contoso
使用D:\Contoso\contoso.sql建立架構和初始資料
然後給BUILTIN\IIS_IUSRS賦予許可權
2、 應用編譯[VS2010]
編譯D:\Contoso\ Claims.sln
3、 應用部署[inetmgr]
點擊“開始”下的“運行”,輸入“Inetmgr”,啟動IIS管理。
部署Web App,即我未來系統中的VIP Portal:
應用程式集區使用ASP.net 4.0整合模式
AppFabric Web連接埠89【這個可變】,路徑 D:\Contoso\Claims.Web\Claims.Web
部署需要託管的WCF及WF服務:
AppFabric Services連接埠90【需要變需要修改相關設定檔才能只能工作】,路徑 D:\Contoso\Contoso.Services
在AppFabric Services新加應用程式,具體對應路徑:
AppraisalService.WCF –> D:\Contoso\Contoso.Services\AppraisalService.WCF
BillingService.WCF -> D:\Contoso\Contoso.Services\BillingService.WCF
CarRentalService.WCF -> D:\Contoso\Contoso.Services\CarRentalService.WCF
ProcessClaimService.WF -> D:\Contoso\Contoso.Workflows\ProcessClaimService
其中,AppFabric Services的進階設定中的“已啟用協議”需要加上net.pipe,AppFabric管理需要],並且應用程式集區使用ASP.net 4.0整合模式
配置好後的效果:
根據我本次的部署,雖然我們在AppFabric Services的進階設定中的“已啟用協議”需要加上net.pipe,但是在實際啟動AppFabric的WCF和WF服務時,會報未正確設定net.pipe。因此,我們需要額外增加如下配置。
點擊AppFabric Services,在右邊操作的編輯網站下,點擊“綁定”,在彈出的視窗中,如果類型下沒有“net.pipe”,則需要我們點擊“添加”,在彈出的視窗中,選擇類型為“net.pipe”,然後綁定資訊輸入*,點擊“確定”即可。
2.監控設定
點擊AppFabric Services,在右邊管理WCF和WF服務上,點擊“配置”,將開啟配置視窗,如所示:
在此頁面可以進行相關監控的參數化設定作業。
3.服務調用與監控資料查看
至此,所有的部署就已經完成了,下面要做的事情,就是啟用開啟Web Application,形成對WF及WCF的調用,確認AppFabric是否對相關服務進行監控。
1)開啟流程器,http://localhost:89/Claims 進入,使用使用者dannyg,密碼 mydemo登陸
2)選擇一個條目,如第一條,進入如下的地址http://localhost:89/Claims/Details/1
3) 選擇編輯,進入如下的地址http://localhost:89/Claims/Edit/1
在完成上述操作後,下面需要對監控的資料進行查看。開啟IIS管理器,點擊“AppFabric Services”,在右邊的“功能視圖”,雙擊“AppFabric儀錶盤”,如果能夠看到如下類似資訊,即代表部署、配置成功。
五、本次部署過程中的問題排除1.遇到的問題描述
在如上的整個過程中,AppFabric安裝沒有問題,部署沒有問題,Web Application調用沒有問題,但是在“AppFabric儀錶盤”中即什麼資訊都統計不到。並且經常會出來一個執行SQLAgent.exe不相容的提示。
2.排除問題的方法
1). 考慮到此問題是程式不相容,因此,找到SQLAgent.exe檔案,點擊右鍵,進行相容性設定,進行如上設定後,問題依據沒有解決;
2).考慮在執行SQLAgent.exe時沒有許可權不足,那什麼由誰會去執行SQLAgent.exe這個檔案呢,考慮應該只有如下需要啟動的服務可能會調用,即
a)AppFabric 工作流程管理服務
b)AppFabric 事件收集服務
c)SQL Server Agent (MSSQLSERVER),本系統安裝的是MS SQL Server 2008 R2
開啟“開始”下的“管理工具”,點擊“服務”,分別找到如上三個服務,點擊右鍵,選擇“屬性”,在開啟的屬性視窗中,點擊“登入”選項卡,輸入管理員帳號,點擊確定。
然後再次運行Web Application,然後查看AppFabric儀錶盤,終於出現資料了,問題解決。
六、總結
1. 程式的安裝與部署要按順序進行,並且需要知道每一步將會產生哪些配置資訊;
2.需要注意相關應用與服務許可權的配置。