Linux 集群架构

1.集群介绍

1.1keepalived 介绍

2.用keepalived配置高可用集群

实际上针对于keepalived,在/etc/keepalived/下面是有一个keepalived.conf的配置文件的

2.1配置主 

& 首先清空原始配置文件

& 把上述配置信息重新创建一个master配置文件

^具体详解

notification是指出现问题时给某邮箱发邮件

下图为之前所讲的check模块,用来检测服务是否正常(为了检测需要运行一个shell脚本,之后会阐述), interval 3指间断3秒钟

vrrp instance定义(在从上有两个地方会不一致,一个是state name,一个是权重,但id要保持一直)

Virtual ipaddress是指共有的ip,主从都可以用

前面检查脚本后,要再做一个加载

$配置文件编辑完了之后还需要去定义脚本

vim /usr/local/sbin/check_ng.sh

配置文件解释

改完脚本之后要进行一个权限的变更,如果不改的话它没办法进行加载并启动keepalived服务 

chmod 755 /usr/local/sbin/check_ng.sh

&启动并检测确保keepalived已经启动

这个时候你会发现即使你停止了nginx服务他还会继续重新启动

###那么它的日志在哪

/var/log/message

在log中我们也可以看到一个virtual ip已创建

注意 这个virtual ip用ifconfig是看不到的,要用ip add去看

^ 最后要记得配置时候要关闭iptables以及setenforce 0

2.2配置从

& 关闭iptables 以及setenforce 0

$其他配置方法同上(编辑配置文件时候要注意state name, priority 以及virtual ip)

为了区分两台机器的nginx,我们可以通过vhost里面的index自定义文件来区别

主:

从:由于从的nginx是通过yum安装的所以index文件存在于/usr/share/nginx/html/index.html

现在来看,如果我们访问virtual ip 还是显示在主上

2.3 测试高可用

生产环境中什么情况下会导致从接替主

为了完成实验环境,先把主上的vrrp出去的包封掉

iptables -I OUTPUT -p vrrp -j DROP

3.负载均衡群集介绍

4.LVS介绍

在NAT模式下,只需要一个公网ip即可,在load balancer与RS之间的沟通完全可以以内网的形式,可以节省资源

LVS IP Tunnel模式

实现原理是更改了数据包的目的IP

LVS DR模式

LVS的调度算法

4.LVS NAT模式搭建

准备条件

& 首先现在第一台(分发器)上配置,在主机上配置一个外网网卡,ip 192.168.31.147并测试可以ping通

& 之后分别要关闭三台机器的防火墙,并清空规则 iptables-F (前提是系统已经能enable/start 了iptables)

&设置两台rs的网关为分发器的内网ip,否则没办法通信,

!注意 一旦设置好了之后这台机器就不可以上网了

准备工作好了以后进行配置

&在收发器dir上安装ipvsadm,这是实现lvs的一个重要的工具

&在vim /usr/local/sbin/lvs_nat.sh路径下写入脚本

#! /bin/bash

# director 路镁???驴陋?路?转路.

echo 1 > /proc/sys/net/ipv4/ip_forward

# 鹿锖..mp碌.

echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects

# 注??路?酶?拢卢掳垄?碌?.ns33潞?ns37

echo 0 > /proc/sys/net/ipv4/conf/ens33/send_redirects

echo 0 > /proc/sys/net/ipv4/conf/ens37/send_redirects

# director ??nat路;冒iptables -t nat

iptables -t nat -X

iptables -t nat -A POSTROUTING -s 192.168.81.133/24  -j MASQUERADE

# director??ipvsa

IPVSADM='/usr/sbin/ipvsadm'

$IPVSADM -C

$IPVSADM -A -t 192.168.31.147:80 -s wlc -p 3

$IPVSADM -a -t 192.168.31.147:80 -r 192.168.81.129:80 -m -w 1

$IPVSADM -a -t 192.168.31.147:80 -r 192.168.81.135:80 -m -w 1

^详解

echo 1 > /proc/sys/net/ipv4/ip_forward 是为了实现路由转发,转发到后面的rs上去

iptables -t nat -A POSTROUTING -s 192.168.81.133/24  -j MASQUERADE 此规则是为了实现同网段的内网可以联网

猜你喜欢

转载自blog.csdn.net/nongfuchui/article/details/85613301