暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

keepalive

原创 清醒的沉沦 2023-07-19
290


目录

 

一、环境要求

1.1、高可用环境

1.2、安装环境

二、安装keepalived

2.1、将keepalived安装包上传到服务器并解压

2.2、安装依赖包

2.3、安装keepalived

2.4、拷贝目录,使用service keepalived start启动服务

2.5、配置/etc/keepalived/keepalived.conf文件

2.6、编写keepalived配置文件中的脚本

三、安装weblogic

四、配置domain

五、启动server,验证keepalived高可用性

六、参考文献

 

 

 

 

 

 

环境要求

1.1、高可用环境

服务器1和服务器2共享一块磁盘,keepalived安装在服务器本地,weblogic安装在共享磁盘上,服务器1和2通过mount和umount共享磁盘实现weblogic的高可用。

1.2、安装环境

keepalived-1.3.6

weblogic 10.3.0.6

linux:rh linux 6.9

安装keepalived

2.1、将keepalived安装包上传到服务器并解压

[root@ofapp1 ~]# cd /sxapp/

[root@ofapp1 sxapp]# ls

keepalived-1.3.6.tar.gz

[root@ofapp1 sxapp]# tar -xzvf keepalived-1.3.6.tar.gz

[root@ofapp1 sxapp]# ls

keepalived-1.3.6  keepalived-1.3.6.tar.gz  

2.2、安装依赖包

[root@ofapp1 ~]#yum install gcc* -y

[root@ofapp1 ~]# yum install openssl-devel  -y

 

2.3安装keepalived

[root@ofapp1 ~]# mkdir /usr/local/keepalived/

[root@ofapp1 ~]# cd /sxapp/keepalived-1.3.6

[root@ofapp1  keepalived-1.3.6]# /sxapp/keepalived-1.3.6/configure --prefix=/usr/local/keepalived/

[root@ofapp1    keepalived-1.3.6]# make && make install

 

2.4、拷贝目录,使用service keepalived start启动服务

[root@rac1 ~]# cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/             --如果不在这个目录,使用find命令查找一下

[root@ofapp1 ~]# cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

[root@ofapp1 ~]# mkdir /etc/keepalived/

[root@ofapp1 ~]# cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

[root@ofapp1 ~]#cp /usr/local/keepalived/sbin/keepalived /usr/bin/

执行完这几条命令后,我们就可以使用service keepalived start 来启动keepalived了。

 

开启服务

[root@ofapp1 ~]#service keepalived start

 

2.5、配置/etc/keepalived/keepalived.conf文件

[root@ofapp1 keepalived]# pwd

/etc/keepalived

[root@ofapp1 keepalived]# vi keepalived.conf

 

! Configuration File for keepalived

 

global_defs {

   notification_email {

     acassen@firewall.loc

     failover@firewall.loc

     sysadmin@firewall.loc

   }

   notification_email_from Alexandre.Cassen@firewall.loc

   smtp_server 192.168.200.1

   smtp_connect_timeout 30

   router_id LVS_DEVEL

   vrrp_skip_check_adv_addr

   vrrp_strict

   vrrp_garp_interval 0

   vrrp_gna_interval 0

}

 

vrrp_instance VI_1 {

    state MASTER                #备服务器为backup

    interface eth0

    virtual_router_id 51

    priority 100                  #备服务器比100要小

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

    10.1.131.111/24              #VIP地址

    }

     notify_master /etc/keepalived/scripts/weblogic_master.sh   

##变成master状态时要执行的脚本

     notify_backup /etc/keepalived/scripts/weblogic_backup.sh

##变成backup状态时要执行的脚本

     notify_fault  /etc/keepalived/scripts/weblogic_fault.sh

           ##出现错误时要执行的脚本

     notify_stop   /etc/keepalived/scripts/weblogic_stop.sh

           ##keepalived关闭时要执行的脚本

}

 

 

 

2.6编写keepalived配置文件中的脚本

[root@rac1 ~]# cat /etc/keepalived/scripts/weblogic_master.sh

#!/bin/bash

sleep 10

mount /dev/sdg1 /weblogic

su - weblogic <<EOF

nohup /weblogic/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh \

-Dcom.sun.management.jmxremote \

-Dcom.sun.management.jmxremote.port=9010 \

-Dcom.sun.management.jmxremote.local.only=false \

-Dcom.sun.management.jmxremote.authenticate=false \

-Dcom.sun.management.jmxremote.ssl=false \

& &>/dev/null

exit

EOF

 

[root@rac1 ~]# cat /etc/keepalived/scripts/weblogic_backup.sh

#!/bin/bash

kill -9 `ps -ef |grep weblogic.Server |grep -v "grep" |awk '{print $2}'`

sleep 3

umount /dev/sdg1

 

[root@rac1 ~]# cat /etc/keepalived/scripts/weblogic_fault.sh

#!/bin/bash

kill -9 `ps -ef |grep weblogic.Server |grep -v "grep" |awk '{print $2}'`

sleep 3

umount /dev/sdg1

 

[root@rac1 ~]# cat /etc/keepalived/scripts/weblogic_stop.sh

#!/bin/bash

kill -9 `ps -ef |grep weblogic.Server |grep -v "grep" |awk '{print $2}'`

sleep 3

umount /dev/sdg1

 

、安装weblogic

[weblogic@fntax1 ~]$ export DISPLAY=10.16.74.226:0.0

[weblogic@fntax1 ~]$ xhost +

 

[weblogic@fntax1 ~]$ ll

total 1043476

drwxr-xr-x 2 weblogic sxgp       4096 Sep 14 21:50 bea

drwxr-xr-x 3 weblogic sxgp       4096 Sep 17 12:43 Oracle

-rwxr-xr-x 1 weblogic sxgp 1068506707 Sep 14 19:32 wls1036_generic.jar

[weblogic@fntax1 ~]$ java -jar wls1036_generic.jar

Extracting 0%...............................................................100%

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

、配置domain

4.1 进入目录,执行./configer命令

[weblogic@rac1 ~]$ cd /home/weblogic/Oracle/Middleware/wlserver_10.3/common/bin

[weblogic@rac1 bin]$ ./config.sh

4.2选择创建一个weblogic domain

 

 

4.3默认下一步

 

4.4执行domain名字和安装位置

 

 

4.5输入weblogic用户名和密码

 

 

4.6选择生产模式

 

 

4.7选择创建Administration Server

 

 

4.8指定名字和地址,此处地址是keepalived 的虚拟出来的地址

 

 

4.9点击创建

 

 

 

、启动server,验证keepalived高可用性

将两台服务器的keepalived启动,在主服务器上将weblogic启动,然后在主服务器上将keepalived关闭,看VIP是否飘到备服务器上,并且查看主备服务器的启动和关闭脚本是否正常执行。

 

 

 

 

、参考文献

6.1.轻量级keepalive实现高可用和热备系列一:

http://yhwhzhang.blog.51cto.com/3821405/1201750/

 

6.2.RHEL6.5+Keepalived 实现双机热备:

http://deararvin.blog.51cto.com/11158301/1739942

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论