keepalived的初级使用

    1、双主模型的ipvs高可用

 

一、双主模型的ipvs高可用

    1)网络结构图

 

 

keepalived的初级使用

 

2)ipvs的类型是dr模型,调度算法是rr

      RS1RS2都是centos6.8

RS1RS2的配置:

1)实现对内核参数的更改

#echo 1 >
/proc/sys/net/ipv4/conf/all/arp_ignore

#echo 2 >
/proc/sys/net/ipv4/conf/all/arp_announce

#ifconfig lo:0
172.18.52.10/32 broadcast 172.18.52.10 up

#ifconfig lo:1
172.18.52.20/32 broadcast 172.18.52.20 up

      2)安装httpdweb服务

            #yum install httpd –y

           

RS1主机上

#echo “This test web1 server” >
/var/www/html/index.html

RS2主机上

#echo “This test web2 server” >
/var/www/html/index.html

      (3)启动httpd服务

            #service httpd start

     

      4)配置dir1dir2主机

            安装keepalived

            #yum install keepalived –y

            keepalived的配置文件修改

            #vim /etc/keepalived/keepalived.conf

——————–以下是配置文件的内容——————–

! Configuration File for keepalived

 

global_defs {

  
notification_email {  #
向谁发送通知

  root@localhost  

}

  
notification_email_from Alexandre.Cassen@firewall.loc

  
smtp_server 127.0.0.1

  
smtp_connect_timeout 30

  
router_id www.zorro.org  #
可以随意修改

  vrrp_mcast_group4
224.18.52.2 #
发送多播的地址,建议修改免得和别人冲突

}

 

#建立两个实例分别对应两个集群服务,但是都是指向后端的80web服务

vrrp_instance VI_1 {

   
state MASTER

   
interface eth0

   
virtual_router_id 199

   
priority 100

   
advert_int 1

   
authentication {

       
auth_type PASS

       
auth_pass 3344520

   
}

   
virtual_ipaddress {

        172.18.52.10
   

   
}

vrrp_instance VI_2 {

   
state BACKUP

   
interface eth0

   
virtual_router_id 200

   
priority 100

   
advert_int 1

   
authentication {

       
auth_type PASS

       
auth_pass 3344521

   
}

   
virtual_ipaddress {

        172.18.52.20
   

   
}

}

}

 

———-使用ipvs的相关配置—————————

———–VIP1的ipvs设置———————————-

virtual_server 172.18.52.10 80 {

   
delay_loop 6

    lb_algo
rr

   
lb_kind DR

   
nat_mask 255.255.255.255

   
persistence_timeout 0

   
protocol TCP

 

   
real_server 172.18.52.3 80 {

       
weight 1

       
HTTP_GET {

           
url {

              path /

      status_code 200

           
}

           
connect_timeout 3

           
nb_get_retry 3

           
delay_before_retry 3

       
}

   
}

  real_server
172.18.52.4 80 {

       
weight 1

       
HTTP_GET {

           
url {

              path /

       status_code 200

           
}

           
connect_timeout 3

           
nb_get_retry 3

           
delay_before_retry 3

       
}

   
}

}

—————–VIP2的ipvs设置————————————–

virtual_server 172.18.52.20 80 {

   
delay_loop 6

   
lb_algo rr

   
lb_kind DR

   
nat_mask 255.255.255.255

   
persistence_timeout 0

   
protocol TCP

 

   
real_server 172.18.52.3 80 {

       
weight 1

       
HTTP_GET {

           
url {

              path /

       status_code 200

           
}

           
connect_timeout 3

           
nb_get_retry 3

           
delay_before_retry 3

       
}

   
}

  real_server
172.18.52.4 80 {

       
weight 1

       
HTTP_GET {

           
url {

              path /

       status_code 200

           
}

           
connect_timeout 3

           
nb_get_retry 3

           
delay_before_retry 3

       
}

   
}

}

二、双主模型的nginx
proxy
高可用集群

      1网络拓扑

keepalived的初级使用

      2)后端的RS1RS2都是httpd服务,去lo0的别名设置

      取消内核参数的设置,都设置为0

      3)在前端的dir1dir2停止keeplaived服务

            #service stop keeplaived

      4)安装nginx

            #yum install nginx –y

      5)设置nginx的配置文件/etc/nginx/nginx.conf

            http字段中添加两个

                  Upstream webserver1 {

                       Server 172.18.52.3;

                       Server 172.18.52.4;

                  }

Upstream webserver2 {

                       Server 172.18.52.3;

                       Server 172.18.52.4;

                  }

 

server字段”location /”中添加

            Server {

                  Listen 80;

Location / {

Proxy_pass http://webserver1;

}

            }

            Server {

                  Listen 80;

Location / {

Proxy_pass http://webserver2;

}

            }

 


关于第二个部分对于nginx的双主模型的设计比较粗糙,如果有更好的方法,请不吝赐教。

原创文章,作者:luoxz,如若转载,请注明出处:http://www.178linux.com/75741

(0)
luoxzluoxz
上一篇 2017-05-15 15:03
下一篇 2017-05-15 15:46

相关推荐

  • java基础与环境

    java 简述 java基础 jvm java环境搭建 简述 什么是java? java是一门面向对象的编程语言,具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点,特别是可移植性,java所有的代码都需要在一个特定的虚拟环境中实现,所以可移植性方面非常好,一次编译,永久使用。 java可以做到什么? Java可以编写桌面…

    2016-06-24
  • yum仓库搭建

    两台主机: 一台centos7  客户机 一台centos6  服务器 准备工作 1.查看是否共享服务是否可用 httpd或vsftpd 是否安装。确认安装之后选择vsftpd为共享服务/var/www/html和/var/ftp/pub为共享目录。 这里使用vsftpd,/var/ftp/pub这个目录为共享目录 在这个目录下建立一个独立的文件夹 [roo…

    2017-12-01
  • 8月5日课堂笔记

    bash基础及shell编程初步 bash的特性及bash脚本编程初步    操作系统硬件, 内核把底层硬件的复杂性给隐藏起来,统一输出为一种系统调用,系统调用非常底层,把系统调用封装成了库。让程序运行起来。用户在创建时有一个默认shell。终点设备用来当做标准输入和输出。  要想与主机交互,需要一个【终端】,附着在终端接口程序:  &n…

    Linux干货 2016-08-07
  • 20160808作业

    1、删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符      2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符      3、在/root/install.log每一行行首增加#号  &nbs…

    Linux干货 2016-08-11
  • mysql5.6 GTID的实现以及maridb 10.9多主一从的架构

    一、MySQL 5.6 以后出现的GTID:     GTID概念:          1. GTID是一个由服务器的UUID和事务序号组成的唯一事务序号       &…

    Linux干货 2015-12-18
  • 安装CentOS 6.9

    安装完VMvare,VMware可以运行虚拟机,虚拟机就相当于一台电脑,然后我们在这台电脑上安装Linux系统,我们这次介绍安装CentOS 6.9的过程 1.打开VMware,依照下图步骤安装     首先我们需要创建新的虚拟机,然后配置出适合自己物理机的虚拟机 2.点击典型类型安装     这里推荐使用典…

    2017-07-12