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
下一篇 2017-05-15

相关推荐

  • 文件权限

    文件权限 文件属性       rw-r–r–表示文件权限     Root 表示文件所有者     Root 表示文件所属组     0 表示文件的大小 …

    Linux干货 2016-08-11
  • N22-北京-追求极境之人-RSYNC差分编码同步原理

    1客户端发送自己的filelist,filelist包含文件hashindexid(alert32)和关联的文件chunkChecksum(MD5)和hashindexID以便进行快速查找,chunksize根据文件大小进行等分,不足均值部分直接发送不进行MD5校验值生成 发送进程一次从生成器读取一个文件索引号和关联的块校验集合 2对于生成器发送的每个文件I…

    Linux干货 2016-08-22
  • Linux用户及权限管理

    Linux用户及权限管理 当我们用ls -al查看一个文件的详细信息的时候会显示出一个有七个字段的文件详细信息,现在我们来了解下这七个字段各自代表的意义 drwxr-xr-x 18 root root 4096 12月 16 15:25 .config 我们先来说明这七段分别表示什么每个字段我们用 | 隔开 drwxr-xr-x | 18 | root | …

    Linux干货 2016-12-19
  • 分布式文件系统之MogileFS

    MogileFS是一个开源的分布式文件存储系统,由LiveJournal旗下的Danga Interactive公司开发。Danga团队开发了包括 Memcached、MogileFS、Perlbal 等多个知名的开源项目。目前使用MogileFS 的公司非常多,如日本排名先前的几个互联公司及国内的yupoo(又拍)、digg、豆瓣、1号店、大众点评、搜狗和…

    Linux干货 2017-06-16
  • Linux源程序包管理器之RPM

    一、 RPM功能描述 l  打包 l  安装 l  卸载 l  升级 l  校验 l  数据库管理 二、 RPM包命名格式 1.       命名格式举例 name-version-relase.arch.rpm 例如:bash-4.2.3…

    系统运维 2015-09-25
  • Linux文件管理命令

    2018-03-11

    2018-03-11