linux lvs 日志,Linux之LVS配置高可用集群【keepalived】

##########配置keepalived##########

‘这个时候实现了故障排除,也就是健康检查’

‘但是如果调度器宕机,整个集群就无法访问,所以需要高可用’

告知lb_algorrlb_kindDR##DR模式#persistence_timeout50protocolTCPreal_server172.25.0.280{TCP_CHECK{wei

#再开一台虚拟机,用来做高可用,配置好yum源

INERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES5c69f6454acbubuntu“/bin/bash”5minutesagoExited(0)23secondsa

1.源码编译keepalived

nthsago1.15MBgame2048latest19299002fdbe2yearsago55.5MBubuntulatest07c86167cdc43yearsago188MBrhel7lat

tar zxf keepalived-2.0.6.tar.gz

yum install openssl-devel -y

yum install libnl -y

yum install libnl-devel -y

yum install libnfnetlink-devel-1.0.0-1.el6.x86_64.rpm -y

make && make install

./configure --help##可以看到–with-init=(upstart|systemd|SYSV|SUSE|openrc)specify init type,systemd为rhel7版本

910111213141516171819在宿主机上在该挂载目录中创建文件,可以在容器中相应的目录中看到:[root@toto6docker]#cd/var/lib/docker/volumes/28

./configure --with-init=SYSV##编译前安装gcc,openssl-devel

./configure --prefix=/usr/local/keepalived --with-init=SYSV

#编译完成后看到下面选项为yes,表示成功

Use IPVS Framework : Yes

ocalhost##发送人名称smtp_server127.0.0.1##发送服务器(本机)smtp_connect_timeout30router_idLVS_DEVELvrrp_ski

make && make install

8328803b20c2eab9ca2d22102a57fba51621a1b53503cTotalreclaimedspace:40B1234567再次使用上次使用镜像创建并运行一个容器[root@

2.把编译好的目录scp到server4

—>Runningin9e201f6f8641helloworldRemovingintermediatecontainer9e201f6f8641—>4dc2056e315eStep3/

3.配置启动脚本及配置文件#调度器(server1和server4)都做

chmod +x /usr/local/keepalived/etc/rc.d/init.d/keepalived

oto6docker]#dockerrun-it--namevm2test:v1bashbash-4.2#lsbindataetclibmediaoptrootsbinsysusrbootdevh

ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/##配置文件,脚本都做成软链接

ocal/keepalived/etc/sysconfig/keepalived/etc/sysconfig/ln-s/usr/local/keepalived/etc/keepalived//etc

ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

交互式--name容器名称root@927ae4d1dca7:/#uname-r#查看容器的内核版本3.10.0-514.el7.x86_64#显示root@927ae4d1dca7:/#touch/

ln -s /usr/local/keepalived/etc/keepalived/ /etc/

hel7latest0a3eb3fde7fd5yearsago140MB123456创建空目录以及Dockerfile文件[root@toto6images]#mkdir/docker[root@to

ln -s /usr/local/keepalived/sbin/keepalived /sbin/

bccc29a4minutesago/bin/sh-c#(nop)ADDfile:a6708d65f40d03475…0B0a3eb3fde7fd5yearsago140MBImportedfrom-

4.配置keepalived

ith-init=(upstart|systemd|SYSV|SUSE|openrc)specifyinittype,systemd为rhel7版本./configure--with-init=SYS

#先关闭ldirectord,因为keepalived也有健康检查

#/etc/init.d/ldirectord stop

#chkconfig ldirectord off

i"s/^#s*(deb.*universe)$…1.9kB3yearsago/bin/sh-cecho‘#!/bin/sh’>/usr/sbin/poli…195kB3yearsago

1)先删除调度节点(server1,server4)上的vip,因为keepalived会自己加上

rdevhomeroottestfileusr#里面保存了之前操作的数据。1234Dockerfile创建镜像根据Dockerfile中的内容,通过使用dockerbulid指令,自动创建镜像,也是基

ip addr del 172.25.0.100/24 dev eth0

taggedtest:v3[root@toto6docker]#dockerrun-it--namevm3test:v3docker:Errorresponsefromdaemon:Nocommand

2)编辑server1(主节点)的keepalived配置文件

global_defs {

notification_email {

root@localhost##节点宕机给谁发送邮件

}

notification_email_from keepalived@localhost##发送人名称

smtp_server 127.0.0.1##发送服务器(本机)

smtp_connect_timeout 30

router_id LVS_DEVEL

vrrp_skip_check_adv_addr

#vrrp_strict##注释掉,不然会有问题

vrrp_garp_interval 0

vrrp_gna_interval 0

}

fileFROMbusyboxENTRYPOINT["/bin/echo",“hello”]CMD[“WORLD”][root@toto6docker]#dockerbuild-ttest:v5.#创

vrrp_instance VI_1 {

state MASTER##主节点

interface eth0

virtual_router_id 51##做实验时候,让学生修改此ID,每个人的都不能一样,不然会出问题

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

172.25.0.100##VIP

}

}

ges]#123456789101112dockerimages#查看所有已经拉取的镜像[root@toto6images]#dockerimagesREPOSITORYTAGIMAGEIDCREAT

virtual_server 172.25.0.100 80 {

delay_loop 3##当rs报错时,尝试多少次之后才邮件告知

lb_algo rr

lb_kind DR##DR模式

#persistence_timeout 50

protocol TCP

lsbinetcprocsystmpvardevhomeroottestfileusr1234将容器保存为新的镜像:[root@toto6images]#dockercommittestbusybox

real_server 172.25.0.2 80 {

TCP_CHECK {

weight 1

connect_timeout 3

retry 3

delay_before_retry 3

}

}

real_server 172.25.0.3 80 {

TCP_CHECK {

weight 1

connect_timeout 3

retry 3

delay_before_retry 3

}

}

}

omemntprocrootsystmpusrvar1234564、ADD用法与COPY类似,不同的是src可以是归档压缩文件,文件会被自动解压到dest,也可自动下载URL并拷贝到镜像DDhtml.

yum install mailx -y

3)编辑备节点(server4)的配置文件

state BACKUP

priority 50##修改这两个选项

ockerfileFROMbusyboxENVnametotoENTRYPOINT["/bin/sh","-c",“echohello,$name”][root@toto6docker]#docker

4)启动keepalived

/etc/init.d/keepalived start

t@toto6images]#dockerload-iubuntu.tar#拉取本地第一个镜像56abdd66ba31:Loadinglayer196.8MB/196.8MB9468150a390c:

5)测试

在物理机上访问:curl 172.25.0.100

可以看到轮询

:v2Deleted:sha256:ceff04ff5225ffcda3f5f1ce7c08d25d13c67bf6c4bcccec1c57b90994b8b2deDeleted:sha256:166

在server1上查看日志:

vim /var/log/messages

Dec 8 16:44:15 server1 Keepalived_vrrp[7656]: (VI_1) Entering MASTER STATE

Dec 8 16:44:15 server1 Keepalived_vrrp[7656]: (VI_1) setting VIPs.

elloworld’0B59788edf1f3e9monthsago/bin/sh-c#(nop)CMD[“sh”]0B9monthsago/bin/sh-c#(nop)ADDfile:63eebd6

在server4上查看日志:

vim /var/log/messages

Dec 8 16:50:26 server4 Keepalived_vrrp[1090]: (VI_1) removing VIPs.

Dec 8 16:50:26 server4 Keepalived_vrrp[1090]: (VI_1) Entering BACKUP STATE (init)

e9monthsago/bin/sh-c#(nop)CMD[“sh”]0B9monthsago/bin/sh-c#(nop)ADDfile:63eebd629a5f7558c…1.15MB[root@

关闭一台rs的http服务,再次在物理机上访问(可能稍有延迟),也不会报错

ipvsadm策略里也会把down掉的那台rs自动剔除

#vim /var/log/messages 可以看到,server2在down掉后,调度器会检测三次,三次都失败就会剔除

#也就是配置文件中delay_loop 3的作用

ver4上服务正常访问,看日志可以看到VIP和主备切换的信息server1再次开启keepalived,会自动接管VIP,并进入MASTER状态一.Docker镜像的简单概述Docker镜像是一个只读

mail可以看到会有邮件告知哪台的down了#(没有mail命令的话,yum install -y mailx)

5590898…188MB[root@toto6images]#dockerhistoryubuntuIMAGECREATEDCREATEDBYSIZECOMMENT07c86167cdc43year

#测试VIP漂移

down掉server(主节点)的keepalived服务

可以看到VIP会自动去掉,然后会漂移到server4上

服务正常访问,看日志可以看到VIP和主备切换的信息

c#打开一个新的容器运行新加的操作Removingintermediatecontainerd611a8f1892c#运行完成之后释放自己新建的容器—>41b1abbffebf#提交新建的镜像层

server1再次开启keepalived,会自动接管VIP,并进入MASTER状态

oto6docker]#vimDockerfileFROMbusyboxENVnametotoENTRYPOINT["/bin/echo",“hello,$name”][root@toto6docke

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值