LVS管理平臺使用手冊(第一版)[原創]

 為了更好管理、維護LVS平臺,本人基于Django+certmaster+func開發了一套管理平臺,主要功能模塊分為性能圖表、數據中心、虛擬IP池、主機管理、監控模塊等功能,基本上是按F5-LTM管理平臺思路來設計,下面只要對這幾大塊功能進行說明。
1、性能圖表


功能說明:以小時、日、星期、月、年的圖表展示LVS SERVER、VIP、SERVER等流量情況,效果圖如下:
1.png
2、數據中心


 功能說明:管理LVS主機,一個LVS主機就是一個數據中心節點,功能包括新建、修改、生成、重載、圖表、顯示該組VIP等模塊。
2.png
2.1新建LVS節點:
3.png
全局定義塊 
  1、 email 通知。作用:有故障,發郵件報警。這是可選項目,建議不用,用 nagios 全面監
控代替之。 
  2、 Lvs負載均衡器標識(lvs_id)。在一個網絡內,它應該是唯一的。 
  3、 花括號“{}”。用來分隔定義塊,因此必須成對出現。如果寫漏了,keepalived運行時,不會得到預期的結果。由于定義塊內存在嵌套關系,因此很容易遺漏結尾處的花括號,這點要特別注意。

VRRP 定義塊 
   1、同步 vrrp 組 vrrp_sync_group。作用:確定失敗切換(FailOver)包含的路由實個數。即在有2 個負載均衡器的場景,一旦某個負載均衡器失效,需要自動切換到另一個負載均衡器的實例是哪些? 
   2、實例組 group.至少包含一個 vrrp 實例。 
   3、Vrrp實例 vrrp_instance.實例名出自實例組 group 所包含的那些名字。 

      (1)實例狀態 state.只有 MASTER和BACKUP 兩種狀態,并且需要大寫這些單詞。其中MASTER為工作狀態,BACKUP 為備用狀態。當 MASTER 所在的服務器失效時,BACKUP 所在的系統會自動把它的狀態有 BACKUP 變換成 MASTER;當失效的MASTER所在的系統恢復時,BACKUP 從 MASTER 恢復到BACKUP 狀態。 
      (2)通信接口 interface。對外提供服務的網絡接口,如 eth0,eth1.當前主流的服務器都有2 個或2 個以上的接口,在選擇服務接口時,一定要核實清楚。 
      (3)lvs_sync_daemon_inteface。 負載均衡器之間的監控接口,類似于 HA HeartBeat的心跳線。但它的機制優于 Heartbeat,因為它沒有“裂腦”這個問題,它是以優先級這個機制來規避這個麻煩的。在DR 模式中,lvs_sync_daemon_inteface 與服務接口 interface 使用同一個網絡接口。 
      (4)虛擬路由標識 virtual_router_id.這個標識是一個數字,并且同一個 vrrp 實例使用唯一的標識。即同一個 vrrp_stance,MASTER 和 BACKUP 的 virtual_router_id 是一致的,同時在整個 vrrp內是唯一的。 
      (5)優先級 priority.這是一個數字,數值愈大,優先級越高。在同一個vrrp_instance里,MASTER 的優先級高于 BACKUP。若 MASTER 的 priority 值為 150,那么 BACKUP的 priority 只能是140或更小的數值。 
      (6)同步通知間隔  advert_int  .MASTER與 BACKUP 負載均衡器之間同步檢查的時間間隔,單位為秒。 
      (7)驗證 authentication。包含驗證類型和驗證密碼。類型主要有 PASS、AH 兩種,通常使用的類型為 PASS,據說 AH 使用時有問題。驗證密碼為明文,同一 vrrp實例MASTER 與 BACKUP 使用相同的密碼才能正常通信。
 

  4、 虛擬 ip 地址 virtual_ipaddress . 可以有多個地址,每個地址占一行,不需要指定子網掩碼。注意:這個 ip必須與我們在 lvs客戶端設定的 vip 相一致!

2.2、1.png生成
  功能說明:在管理端生成配置文件并校驗。

2.3、2.png重載
  功能說明:將配置文件傳輸到LVS節點服務器并重啟Keepalived服務。

2.3、3.png圖表
  功能說明:顯示該LVS節點流量數據。

3、虛擬IP池(VIP)


功能說明:添加、修改VIP池。
4.png
3.1、添加圖示:
5.png
虛擬服務器 virtual_server定義塊 


虛擬服務器定義是 keepalived框架最重要的項目了,是 keepalived.conf必不可少的部分。 

1、 虛擬服務器 virtual_server.  這個 ip 來自于 vrrp 定義塊的第“4”步,后面一個空格,然后加上端口號。定義一個vip,可以實現多個 tcp 端口的負載均衡功能。 
(1)delay_loop。健康檢查時間間隔,單位是秒。 
(2)lb_algo. 負載均衡調度算法,互聯網應用常使用 wlc或 rr。 
(3)lb_kind. 負載均衡轉發規則。一般包括 DR,NAT,TUN3 種,在我的方案中,都使用DR 的方式。 
(4)persistence_timeout.會話保持時間,單位是秒。這個選項對動態網站很有用處:當用戶從遠程用帳號進行登陸網站時,有了這個會話保持功能,就能把用戶的請求轉發給同一個應用服務器。在這里,我們來做一個假設,假定現在有一個 lvs 環境,使用 DR 轉發模式,真實服務器有 3 個,負載均衡器不啟用會話保持功能。當用戶第一次訪問的時候,他的訪問請求被負載均衡器轉給某個真實服務器,這樣他看到一個登陸頁面,第一次訪問完畢;接著他在登陸框填寫用戶名和密碼,然后提交;這時候,問題就可能出現了—登陸不能成功。因為沒有會話保持,負載均衡器可能會把第 2次的請求轉發到其他的服務器。 
(5)轉發協議 protocol.一般有 tcp 和 udp兩種。實話說,我還沒嘗試過 udp協議類的轉發。

4、主機管理


功能說明:包括添加、修改、設置LB等功能模塊。
6.png
4.1、添加SERVER
7.png
   真實服務器 real_server.也即服務器池。Real_server的值包括 ip地址和端口號。多個連續的真實 ip,轉發的端口相同,是不是可以以范圍表示?需要進一步實驗。如寫成real_server 61.135.20.1-10 80 . 
(1)權重 weight.權重值是一個數字,數值越大,權重越高。使用不同的權重值的目的在于為不同性能的機器分配不同的負載,性能較好的機器,負載分擔大些;反之,性能差的機器,則分擔較少的負載,這樣就可以合理的利用不同性能的機器資源。

4.2、1.gif設置LB
  功能說明:設置所選服務器的LoopbackIP,只限于DR模式。

5、監控模塊


功能說明:添加、刪除、修改自定義監控名稱。
8.png
5.1、添加監控點
9.png
11.png
    監控類型包括SSL_GET、HTTP_GET、TCP_CHECK、SMTP_CHECK、MISC_CHECK等,選擇不同的監控類型會提示你輸入不同的參數值,一般情況下選擇管理員添加的類型即可滿足,一些特殊應用的監控可以自定義去添加。

如大家有什么疑問或感興趣的話題可以通過weibo與我交流:http://t.qq.com/yorkoliu

轉自:http://blog.liuts.com/post/172/

原創文章,作者:s19930811,如若轉載,請注明出處:http://www.www58058.com/1848

(1)
s19930811s19930811
上一篇 2015-03-28
下一篇 2015-03-29

相關推薦

  • 第六周作業補充-vim簡介及其使用方法詳細介紹

    What       Vim是由Vi發展出來的一個文本編輯器。代碼補全、編譯及錯誤跳轉等方便編程的功能特別豐富,在Unix& Unix Like操作系統中被廣泛使用。和Emacs并列成為Unix& Unix Like操作系統中最受歡迎的文本編輯器 When& Who  &nb…

    Linux干貨 2016-09-26
  • 網絡管理基礎

    什么是網絡?    在計算機領域中,網絡是信息傳輸,接受,共享的虛擬平臺,通過它把各個點,面體的信息聯系到一起, 從而實現這些資源的共享。 網路物理組件     終端:可發送和接受數據的,如計算機。移動設備,打印機,服務器….    互聯設備:互聯…

    Linux干貨 2016-09-06
  • CentOS7常用網絡管理命令總結

    一、CentOS7網絡接口命名策略(systemd)二、CentOS7的基礎網絡管理命令2.1 NetworkManager服務2.2 nmtui文本交互式工具2.3 nmcli命令行接口工具nmcli的語法說明NetworkManager整體狀態顯示顯示所有連接或僅活動的連接顯示所有設備的狀態顯示指定設備的所有連接屬性添加動態的以太網連接(DHCP)添加靜…

    Linux干貨 2016-06-09
  • Linux的文本處理工具之sed的使用

    Sed文本處理工具 一、認識sed工具: sed是一種流編輯器,一次處理一行內容。當進行處理時,把當前處理的行存儲在臨時的緩沖區中(俗稱“模式空間”)后,再用sed命令去處理緩沖區的內容,最后把處理過的緩沖區內容送往屏幕打印顯示。接著處理下一行,不斷重復進行讀取、處理、輸出,直到文件末尾。  注:sed命令處理文本,文件內容本身并沒有改變,除非你使…

    Linux干貨 2016-08-10
  • 從“黑掉Github”學Web安全開發

    Egor Homakov(Twitter: @homakov 個人網站: EgorHomakov.com)是一個Web安全的布道士,他這兩天把github給黑了,并給github報了5個安全方面的bug,他在他的這篇blog——《How I hacked Github again》(墻)說明了這5個安全bug以及他把github…

    Linux干貨 2016-08-15
  • Python入門之閉包,匿名函數,過濾器,映射器,折疊

    在學習python函數的過程中,函數的高階應用包括閉包lambda函數,過濾器等都讓我頭痛不已.接下來我把課堂中聽到的筆記進行整理,再寫一遍,希望在提醒自己的同時也能幫助到別人. 首先,我們來看一下什么是閉包,閉包(closure)是函數式編程的重要的語法結構。函數式編程是一種編程范式 (而面向過程編程和面向對象編程也都是編程范式)。在面向過程編程中,我們見…

    Linux干貨 2015-12-19
欧美性久久久久