天天看点

构建高可用服务器之二 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,如需转载请自行联系原作者

继续阅读