BIG-IP

解決問題 F5 (2)

教學目標

初步了解如何透過 F5 BIG-IP 的 iRule 功能進行客製化的流量管理,以利解決網站應用程式的效能問題。

重點概念

首先 F5 BIG-IP 流量管理器主要有提供 iRule 的強大且靈活的功能,將能夠用於管理網絡流量,並且使用基於行業標準工具命令語言 (TCL) 的語法,其不僅允許我們根據標題資料選擇 Pool 之外,更能夠允許我們透過搜尋定義的任何類型的內容資料來引導流量,以利滿足客戶客製化的需求。

接著我們能夠撰寫 iRule 程式用於搜尋網路傳送封包的標頭或內容,然後根據該搜尋的結果將流量導致特定的 Pool 之外,我們更能夠根據客戶端身份驗證的資訊將流量導致特定的 Pool,像是我們能夠撰寫以下 iRule 程式主要代表當客戶端已被接受連線之後,則會觸發此 iRule,若客戶端的 IP 位址與 192.168.0.1 匹配時,則會將資料封包傳送至 my_pool。

1
2
3
4
5
CLIENT_ACCEPTED { 
if { [IP::addr [IP::client_addr] equals 192.168.0.1] } {
pool my_pool
}
}

再來我們也能夠透過 IF…THEN…ELSEIF… 的方式設定多個條件式判斷,像是我們能夠撰寫以下 iRule 程式主要代表當接收 HTTP 連線之後,則會觸發此 iRule,若當 HTTP 請求連線的網址中有包括 API 的字串時,則會將資料封包傳送至 api_pool,或者當 HTTP 請求連線的網址中有包括 APP 的字串時,則會將資料封包傳送至 app_pool。

1
2
3
4
5
6
7
when HTTP_REQUEST {
if { [HTTP::path] contains "API"} {
pool api_pool
} elseif { [HTTP::path] contains "APP"} {
pool app_pool
}
}

最後我們也能夠透過 SWITCH 的方式設定多個條件式判斷,像是我們能夠撰寫以下 iRule 程式主要代表當接收 HTTP 連線之後,則會觸發此 iRule,若當 HTTP 請求連線的網址中有包括 API 的字串時,則會將資料封包傳送至 api_pool,或者當 HTTP 請求連線的網址中有包括 APP 的字串時,則會將資料封包傳送至 app_pool,但是若當 HTTP 請求連線的網址不包括 API 或 APP 字串則拒絕連線。

1
2
3
4
5
6
7
8
9
10
11
12
13
when HTTP_REQUEST {
switch [HTTP::path] {
*API* {
pool api_pool
}
*APP* {
pool app_pool
}
default {
reject
}
}
}

總結若是企業有導入 F5 BIG-IP 流量管理器做為網站應用程式的負載平衡時,我們除了透過設定負戴平衡的方式,像是 Round Robin,我們更能夠根據網站應用程式的負載情況透過 iRule 功能進行客製化的流量管理,以利解決網站應用程式的效能問題。

相關資源

解決問題 F5 (1)

教學目標

初步了解如何透過 AWS 雲端服務解決需要有個環境測試 F5 BIG-IP 產品相關設定問題。

重點概念

首先許多企業皆是採用 F5 BIG-IP 進行網站負載平衡的應用,此時若我們面臨需要有個環境測試 F5 BIG-IP 產品相關設定問題時,則能夠透過 AWS 雲端服務在半小時建立一套試用期三個月的版本,至於要如何申請試用的註冊碼,則可以透過官方網站進行申請,以利進行相關測試。

接著我們主要能夠先從 AWS 市集訂閱「F5 BIG-IP Virtual Edition - BETTER - (BYOL) 」方案,主要透過 AWS EC2 建立 F5 BIG-IP 的虛擬環境實體,一開始我們可以先在網站應用程式的 AWS VPC 中建立 F5 BIG-IP 即可,至於相關步驟請參考官方教學影片教學文件

再來我們建立完成 F5 BIG-IP 的虛擬環境實體之後,請先新增一個 「Elastic IP address」關聯 F5 BIG-IP 的虛擬環境實體,以利進行註冊碼線上驗證與更新。並且透過「MobaXterm 工具」登入至 F5 BIG-IP 的虛擬環境實體,請輸入以下指令編輯管理者密碼,請注意因為還未授權所以僅能執行以下指令。

1
2
# modify auth password admin
# save sys config

最後我們就能夠透過瀏覽器開啟「https://:8443」登入至 F5 BIG-IP 管理介面,以利進行進行註冊碼線上驗證與更新。當註冊碼線上驗證與更新完成之後,就能夠開始建立「Pool 」和「Virtual Server」的基本設定以利透過 F5 BIG-IP 連線至相同 VPC 中的網站應用程式,以利解決需要有個環境測試 F5 BIG-IP 產品相關設定的問題。

相關資源

系統架構 F5 Networks (1)

教學目標

初步了解 F5 BIG-IP 產品學習指南和認證考試以利後續進行系統架構的規劃。

重點概念

首先目前許多大型銀行皆會採用 F5 BIG-IP 產品進行企業內部網路的負戴平衡器。其中有許多不同型號的 BIG-IP iSeries 系列產品,不同型號會有不同的流量處理規格,以 7255v 為例,則會有以下有關流量處理的規格,分別為:

關鍵指標 上限值
第七層應用層每秒請求數 16,000,000
第七層最大輸出量 20 Gbps
第四層傳輸層每秒請求數 7,000,000
第四層傳輸層每秒連接數 775,000
第四層最大並行連接數 24,000,000
第四層最大輸出量 40 Gbps

接著到底何謂第四層和第七層,事實上所指的就是 OSI 七層網路架構,OSI 全名為 Open System Interconnection Reference Model ,也就是開放式系統互聯通訊參考模型。其中七層分別為:

  1. 實體層
  2. 資料連結層
  3. 網路層
  4. 傳輸層
  5. 會談層
  6. 呈現層
  7. 應用層

至於詳細的七層介紹我們則能夠參考 F5 的學習指南「101 – Application Delivery Fundamentals」,當然除了 OSI 層之外,還有許多有關負載平衡、網路安全、應用程式和 F5 技術與解決方案等基本概念皆能夠在該學習指南中進行學習。

再來 F5 BIG-IP 產品在軟體架構的部份皆搭載 TMOS (64-bit),全名為 Traffic Management Operating System,也就是流量管理作業系統,主要是應用於 BIG-IP 產品的作業系統。至於詳細的 TMOS 流量管理作業系統介紹我們則能夠參考 F5 的學習指南「201 – TMOS Administration v2」,其學習指南主要是介紹如何進行故障排除和維護設定等基本操作。

最後 F5 除了「101 – Application Delivery Fundamentals」和「201 – TMOS Administration v2」兩份最基本的學習指南提供我們學習參考之外,更有提供更進階的證照考試,當我們通透過 Exam 101 和 Exam 201 之後就能夠取得 F5 Certified BIG-IP Administrator 認證,基本上對於 F5 BIG-IP 就有基本概念,以及故障排除的能力。

相關資源