作者: Colin Jao 饒康立 – VMware資深技術顧問,主要負責VMware NSX產品線,目前致力於網路虛擬化、分散式安全防護技術與新應用遞送方案的介紹與推廣。
應用遞送方案在客戶環境內是一個非常重要的構件,無論是提供負載平衡、應用健康檢查、或是 Reverse-Proxy 的功能,這個構件就是在用戶最重要的應用前面,每一個交易都會經過負載平衡器的處理。但也因此,應用遞送服務可以看到的資訊非常多,當管理者需要了解目前核心業務的效能為什麼不好,負載平衡器可以提供相當多的重要情報。
Avi 的方案在設計之初,就把交易的日誌記錄與分析考量進來作為方案的基礎配置,客戶購買了 Avi 的方案後都可以直接取得這個重要的維運功能,不需要額外購買其他的授權。無論是在生產環境的告警以及合規稽核,或是應用測試過程中的驗證與除錯,後面幾篇與各位討論的日誌分析與搜尋功能都能起到極大的效益,甚至是很多目前大客戶由傳統負載平衡器改採用 Avi 方案的主要原因。
廢話不多說。先讓大家看到下圖是一個交易連線的日誌範例:
在上圖的日誌內,我們可以看到與這個交易相關的重要資訊包括:
- 此交易發生的時間
- 由用戶端到負載平衡器,到後端的Server間,以及應用回應的延遲時間估算。這邊的相關資訊我們會在後篇更詳盡討論。
- 前段與後段連線之HTTP回應碼
- 來源用戶的相關資訊,包含用戶的來源 IP、此用戶IP透過查詢內部Geo資料庫所對應的國家、用戶使用的作業系統與瀏覽器、加密方式與版本等等
- 這筆交易對應的Avi服務引擎與後端的對應伺服器
- HTTP內的完整URI與其他請求及回應的資訊。
上述的資訊其實是標準HTTP連線內都應該可以看到的,但在我與不同客戶進行介紹的過程中,還真的很多客戶第一次發現原來負載平衡器可以抓到這麼多資訊。比如說作業系統型態 / 瀏覽器類型這些通常是用戶瀏覽器發起詢問時,透過HTTP請求表頭內的User Agent所帶的相關內容,此時主機端的應用程式就可以依據這些資訊,提供較好的回應格式。
在View All Headers內若點開,可以看到更進一步的詳細說明:
比如說重要的資訊如X-Forwarded-For以及X-Forwarded-Proto等應用需要確認的訊息也會記錄於此。
Avi 的交易日誌並非僅能在介面內查詢,管理者可以為了稽核 / 合規等理由希望在後端的Syslog Server做長期的日誌存放。在下圖內,我們透過標準syslog機制把Avi的日誌往後端的Log Insight扔。下方就是透過Log Insight的互動介面看到同一筆交易的完整日誌。目前時間點 Log Insight 上還沒有 Avi 方案的 content pack,但因為已經被 VMware 收購,可預見的將來勢必我們的用戶也可以利用對應的 content pack 進行進一步的資料分析,並具備相關的 dashboard。
當然,Avi的日誌服務不會僅針對HTTP/S的服務類型,純粹的TCP/UDP L4應用連線也會紀錄。下圖內是對應到一個TCP L4連線應用的日誌紀錄。與前頁相比大家應該發現資訊就少多了,基本上就是用戶端 (Client) 到 LB之間,以及 LB 到後端 Server 之間的兩個TCP連線相關資訊。
這個連線的日誌當然也可以在外部的Syslog Server進行儲存。下圖內就是上述日誌的Syslog紀錄
好,在本篇內我們僅先讓大家看到 Avi 方案能夠就用戶的交易連線進行完整的資訊收集。這些資訊我們可以在 Avi 的介面內進行搜尋查找,也可以送到外部的 Syslog Server 作後續的稽核存放與後續分析。後續我們會再就日誌相關細節進一步討論,包含
- 應用交易內各段網路、應用時間的意義與如何計算出來
- 應用交易的搜尋方式,以及重要日誌 (Significant Log) 與非重要日誌 (Non-Significant Log) 間的差異
下篇我們先來看對企業客戶來說非常有用的交易日誌資訊:應用的網路傳輸時間及應用回應時間。
Comments
0 Comments have been added so far