天天看點

建構高可用伺服器之二 Keepalive參數詳解

    keepalived有三類配置區域,注意不是三種配置檔案,是一個配置檔案裡面三種不同類别的配置區域,全局配置(Global Configuration)、VRRPD配置、LVS配置

! Configuration File for keepalived

################################全局配置#########################################

1

2

3

4

5

6

7

8

9

<code>global_defs {</code>

<code>   </code><code>notification_email {          </code><code>#指定keepalived在發生切換時需要發送email到的對象,一行一個</code>

<code>     </code><code>[email protected]</code>

<code>   </code><code>}</code>

<code>   </code><code>notification_email_from [email protected] </code><code>#指定發件人</code>

<code>   </code><code>smtp_server 192.168.200.1     </code><code>#指定smtp伺服器位址</code>

<code>   </code><code>smtp_connect_timeout 30       </code><code>#指定smtp連接配接逾時時間</code>

<code>   </code><code>router_id LVS_DEVEL           </code><code>#運作keepalived機器的一個辨別</code>

<code>}</code>

################################VRRP配置#########################################

10

11

12

13

14

15

16

17

18

19

20

21

22

<code>#VRRP執行個體定義塊</code>

<code>vrrp_instance VI_1 {   </code>

<code>    </code><code>state MASTER             </code><code>#指定那個為master,那個為backup,如果設定</code>

<code>                             </code><code>#了nopreempt這個值不起作用,主備靠priority決定</code>

<code>    </code><code>interface eth0           </code><code>#設定執行個體綁定的網卡</code>

<code>    </code><code>virtual_router_id 51     </code><code>#VPID标記 ,路由ID,可通過#tcpdump vrrp檢視</code>

<code>    </code><code>priority 100             </code><code>#優先級,高優先級競選為master</code>

<code>    </code><code>advert_int 1             </code><code>#檢查間隔,預設1秒</code>

<code>    </code><code>nopreempt                </code><code>#非搶占(因為預設如果master挂的時候,backup會頂上,當master再好的時候,會再切回去,這樣就會造成兩次</code>

<code>                             </code><code>#斷開,加上nopreempt的時候,及時master又好了,依舊不會切換,但是要注意兩個state 都要是backup)     </code>

<code>                                </code> 

<code>    </code><code>authentication {         </code><code>#設定認證</code>

<code>        </code><code>auth_type PASS       </code><code>#認證方式</code>

<code>        </code><code>auth_pass 1111       </code><code>#認證密碼</code>

<code>    </code><code>}</code>

<code>    </code> 

<code>    </code><code>virtual_ipaddress {      </code><code>#設定vip</code>

<code>        </code><code>192.168.200.16</code>

<code>        </code><code>192.168.200.17</code>

<code>        </code><code>192.168.200.18</code>

#################################LVS配置#############################################

23

24

25

26

27

28

29

30

31

32

33

<code>#虛拟伺服器定義塊</code>

<code>virtual_server 192.168.200.100 443 {        </code><code>#VIP 端口</code>

<code>    </code><code>delay_loop 6                            </code><code>#健康檢查時間間隔</code>

<code>    </code><code>lb_algo rr                              </code><code>#lvs排程算法rr|wrr|lc|wlc|lblc|sh|dh</code>

<code>    </code><code>lb_kind NAT                             </code><code>#負載均衡轉發規則NAT|DR|TUN</code>

<code>    </code><code>nat_mask 255.255.255.0                  </code><code>#nat 掩碼</code>

<code>    </code><code>persistence_timeout 50                  </code><code>#會話保持時間</code>

<code>    </code><code>protocol TCP</code><code>#使用的協定</code>

<code>sorry_server&lt;IPADDR&gt; &lt;port&gt;                 </code><code>#備用機,所有realserver失效後啟用</code>

<code>    </code><code>real_server 192.168.201.100 443 {       </code><code>#RIP 端口</code>

<code>        </code><code>weight 1                            </code><code>#預設為1,0為失效</code>

<code>inhibit_on_failure                          </code><code>#在伺服器健康檢查失效時,将其設為0,而不是直接從ipvs中删除</code>

<code>notify_up   腳本(絕對路徑)                  </code><code>#在檢測到server up後執行腳本</code>

<code>notify_down 腳本(絕對路徑)                  </code><code>#在檢測到server down後執行腳本</code>

<code>        </code><code>SSL_GET {</code>

<code>            </code><code>url {</code>

<code>              </code><code>path /</code>

<code>              </code><code>digest ff20ad2481f97b1754ef3e12ecd3a9cc     </code><code>#檢查url,可以指定多個 </code>

<code>      </code><code>status_code 200                                     </code><code>#檢查的傳回狀态碼 </code>

<code>            </code><code>}</code>

<code>              </code><code>path </code><code>/mrtg/</code>

<code>              </code><code>digest 9b3a0c85a887a256d6939da88aabd8cd</code>

<code>            </code><code>connect_timeout 3                             </code><code>#連接配接逾時時間</code>

<code>            </code><code>nb_get_retry 3                                </code><code>#重連次數</code>

<code>            </code><code>delay_before_retry 3                          </code><code>#重連間隔時間</code>

<code>    </code><code>connect_port 23                                       </code><code>#健康檢查的端口的端口</code>

<code>        </code><code>}</code>

本文轉自Jacken_yang 51CTO部落格,原文連結:http://blog.51cto.com/linuxnote/1652981,如需轉載請自行聯系原作者

繼續閱讀