centos lvs 配置,centos7怎么配置ip

大家好,感谢邀请,今天来为大家分享一下centos lvs 配置的问题,以及和centos7怎么配置ip的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!

CentOS下对硬盘读写速度测试的详解

一个偶然装DB数据库的机会,发现安装很慢,于是系统工程师建议我测下硬盘读写速度,发现读写速度才200左右,

机器是dellR710内存12G操作系统是centos 6 64位

后来重装了centos 5.7 64位,

其它未做任何更改。

测试速度如下(3次):

R710 CENTOS 5.7 64位(12G内存)

[root@localhost data]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.30085 seconds, 825 MB/s

[root@localhost data]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.39172 seconds, 772 MB/s

[root@localhost data]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.26415 seconds, 849 MB/s

其它机器测试(回头再符上机器配置)

于是又在另外的710,相同配置上的centos5.4 32位:(12G内存)

[root@db1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 3.04131 seconds, 353 MB/s

[root@db1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 2.23476 seconds, 480 MB/s

[root@db1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.45485 seconds, 738 MB/s

[root@db1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.30145 seconds, 825 MB/s

[root@db1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.3871 seconds, 774 MB/s

cache R610 centos 6.0 64位:(16G内存)

[root@cache~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,7.08763秒,151 MB/秒

[root@cache~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,8.12101秒,132 MB/秒

[root@cache~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,6.66439秒,161 MB/秒

[root@cache~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,7.80735秒,138 MB/秒

[root@cache~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,7.87918秒,136 MB/秒

WEB1 R610 CENTOS 6 64(8G内存)

[root@web1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,6.15494秒,174 MB/秒

[root@web1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,5.95299秒,180 MB/秒

[root@web1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,5.7888秒,185 MB/秒

LVS R610 CENTOS 5.4 32位配置与WEB1一模一样(8G内存)

[root@lb1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 3.34055 seconds, 321 MB/s

[root@lb1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 5.97799 seconds, 180 MB/s

[root@lb1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.60396 seconds, 669 MB/s

[root@lb1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.59689 seconds, 672 MB/s

[root@lb1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 2.81365 seconds, 382 MB/s

6.0的64位,速度明显比5.7的64位差很多,

由于710的64位己经删除了,所以没有数据,但当时测的,基本没超过250的,

这难倒是6.0 64的BUG?还是什么,待日后确认,看来还得把系统都换成5的了。

另外,两台配置一样的(除内存)R310测试:

配置决对要比710和610低很多:

CENTOS 5.4 32位 12G内存

[root@beta1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.14459 seconds, 938 MB/s

[root@beta1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.15009 seconds, 934 MB/s

[root@beta1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.14913 seconds, 934 MB/s

[root@beta1~]# dd if=/dev/zero of=/data/test bs=1M count=1024

1024+0 records in

1024+0 records out

1073741824 bytes(1.1 GB) copied, 1.14882 seconds, 935 MB/s

CENTOS 6 64位,4G内存

[root@admin~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,5.16662秒,208 MB/秒

[root@admin~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,10.1894秒,105 MB/秒

[root@admin~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,10.1708秒,106 MB/秒

[root@admin~]# dd if=/dev/zero of=/data/test bs=1M count=1024

记录了1024+0的读入

记录了1024+0的写出

1073741824字节(1.1 GB)已复制,10.3586秒,104 MB/秒

Keepalived工作原理

Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。

Keepalived采用是模块化设计,不同模块实现不同的功能。

keepalived主要有三个模块,分别是core、check和vrrp。

core:是keepalived的核心,负责主进程的启动和维护,全局配置文件的加载解析等

check: 负责healthchecker(健康检查),包括了各种健康检查方式,以及对应的配置的解析包括LVS的配置解析;可基于脚本检查对IPVS后端服务器健康状况进行检查

vrrp:VRRPD子进程,VRRPD子进程就是来实现VRRP协议的

keepalived配置文件:

Keepalived配置文件为:keepalived.conf;

主要有三个配置区域,分别是:全局配置(Global Configuration)、VRRPD配置、LVS配置 

全局配置又包括两个子配置: 全局定义(global definition) 静态IP地址/路由配置(static

ipaddress/routes)

Keepalived服务VRRP的工作原理:

Keepalived高可用对之间是通过 VRRP进行通信的, VRRP是通过竞选机制来确定主备的,主的优先级高于备,因此,工作时主会优先获得所有的资源,备节点处于等待状态,当主宕机的时候,备节点就会接管主节点的资源,然后顶替主节点对外提供服务

在Keepalived服务对之间,只有作为主的服务器会一直发送 VRRP广播包,告诉备它还活着,此时备不会抢占主,当主不可用时,即备监听不到主发送的广播包时,就会启动相关服务接管资源,保证业务的连续性.接管速度最快

出现脑裂的原因:

高可用服务器对之间心跳线链路发生故障,导致无法正常通信。

因心跳线坏了(包括断了,老化)。

因网卡及相关驱动坏了,ip配置及冲突问题(网卡直连)

因心跳线间连接的设备故障(网卡及交换机)

因仲裁的机器出问题(采用仲裁的方案)

高可用服务器上开启了 iptables防火墙阻挡了心跳消息传输。

高可用服务器上心跳网卡地址等信息配置不正确,导致发送心跳失败

其他服务配置不当等原因,如心跳方式不同,心跳广插冲突、软件Bug等。

如何解决脑裂:

① 同时使用串行电缆和以太网电缆连接,同时用两条心跳线路,这样一条线路坏了,另一个还是好的,依然能传送心跳消息。

② 当检测到裂脑时强行关闭一个心跳节点(这个功能需特殊设备支持,如Stonith、feyce)。相当于备节点接收不到心跳消患,通过单独的线路发送关机命令关闭主节点的电源。

③ 做好对裂脑的监控报警(如邮件及手机短信等或值班).在问题发生时人为第一时间介入仲裁,降低损失。管理员可以通过手机回复对应数字或简单的字符串操作返回给服务器.让服务器根据指令自动处理相应故障这样解决故障的时间更短。

一、实验环境

操作系统:CentOS7.2 Minial

###################

serverA:

eno16777736  192.168.1.104

eno33554984  192.168.1.105

##########################

serverB:

eno16777736  192.168.1.109

eno33554984  192.168.1.106

###########################

vip01:192.168.1.111

vip02:192.168.1.112

二、设置防火墙

/usr/bin/firewall-cmd--direct

--permanent--add-rule ipv4 filter INPUT 0--in-interface eth0--destination${组播地址}--protocol vrrp-jACCEPT

/usr/bin/firewall-cmd--reload

三、软件安装

在serverA和serverB上

# rpm-ivh--force libnl3-3.2.28-4.el7.x86_64.rpm

# rpm-ivh--forcelm_sensors-libs-3.4.0-4.20160601gitf9185e5.el7.x86_64.rpm

# rpm-ivh--force net-snmp-agent-libs-5.7.2-32.el7.x86_64.rpm

# rpm-ivh--force net-snmp-libs-5.7.2-32.el7.x86_64.rpm

# rpm-ivh--force ipset-libs-6.38-3.el7_6.x86_64.rpm

# rpm-ivh--force keepalived-1.3.5-6.el7.x86_64.rpm

四、配置keepalived

如果不使用 VRRP Sync Groups如果keepalived主机有两个网段,每个网段开启一个VRRP实例,如果对外的网段出现问题,VRRPD认为自己仍然认为健康,因此 Master和Backup相互切换,从而导致服务不能正常使用,同时高可用集群也不能正常运行,Sync group就是为了解决该问题,可以把两个实例放进同一个Sync Group中!

serverA

# vim/etc/keepalived/keepalived.conf

######################################

! Configuration File for keepalived

global_defs{

router_id LVS_DEVEL

}

vrrp_sync_group VG1{

group{

VI_1

VI_2

}

}

vrrp_instance VI_1{

state BACKUP

interface eno16777736

virtual_router_id 51

priority 100

nopreempt

advert_int 1

authentication{

auth_type PASS

auth_pass 1111

}

track_interface{

eno16777736

eno33554984

}

virtual_ipaddress{

192.168.1.111

}

}

vrrp_instance VI_2{

state BACKUP

interface eno33554984

virtual_router_id 52

priority 100

nopreempt

advert_int 1

authentication{

auth_type PASS

auth_pass 2222

}

track_interface{

eno16777736

eno33554984

}

virtual_ipaddress{

192.168.1.112

}

}

serverB

# vim/etc/keepalived/keepalived.conf

######################################

! Configuration File for keepalived

global_defs{

router_id LVS_DEVEL

}

vrrp_sync_group VG1{

group{

VI_1

VI_2

}

}

vrrp_instance VI_1{

state BACKUP

interface eno16777736

virtual_router_id 51

priority 90

nopreempt

advert_int 1

authentication{

auth_type PASS

auth_pass 1111

}

track_interface{

eno16777736

eno33554984

}

virtual_ipaddress{

192.168.1.111

}

}

vrrp_instance VI_2{

state BACKUP

interface eno33554984

virtual_router_id 52

priority 90

nopreempt

advert_int 1

authentication{

auth_type PASS

auth_pass 2222

}

track_interface{

eno16777736

eno33554984

}

virtual_ipaddress{

192.168.1.112

}

}

五、测试

在serverA和 serverB上

# systemclt start keepalived

在serverA

阅读剩余
THE END