分享我做的nginx+keepalived做的主主架构(二)
服务器端与客户端都需要安装:
nfs-utils:NFS主程序
portmap:RPC主程序
- yum -y install portmap nfs-utils
配置
- vi /etc/exports
- /data/webnfs 10.1.88.0/24(rw,sync,anonuid=501,anongid=501)
- service portmap start
- service nfs start
注意:必须先启动portmap,因为portmap是一直在服务器里启动的,而nfs需要heartbeat来管理
- chkconfig --level 345nfs off
- chkconfig --level 345 portmap on
根据我朋友公司的实际情况,我决定启动nfs锁,虽然nfs性能降低,但能保证数据的完整性
- /sbin/rpc.lockd
- echo "/sbin/rpc.lockd" /etc/rc.local
- #!/bin/bash
- NFS="/etc/rc.d/init.d/nfs"
- NFSPID="/sbin/pidof nfsd`"
- case $1 in
- start)
- $NFS start;
- ;;
- stop)
- $NFS stop;
- if [ "$NFSPID" != " " ];then
- for NFSPID in $NFSPID
- do
- /bin/kill -9 $NFSPID;
- done
- fi
- ;;
- *)
- echo "Usage:`basename $0` {start|stop }"
- ;;
- esac
- chmod 755 nfs
- #!/bin/bash
- /bin/mount -t nfs -o nosuid,noexec,nodev,rw,nouser,noauto,bg,hard,nointr,rsize=32k,wsize=32k,tcp 10.1.88.198:/data/nfs /data/www
- chmod 755 mountnfs.sh
- echo "/data/shell/mountnfs.sh" /etc/rc.local
- [root@test6/]# cat /etc/ nfs.res
- #
- # please have a a look at the example configuration file in
- # /usr/share/doc/drbd83/drbd.conf
- #
- #
- # please have a a look at the example configuration file in
- # /usr/share/doc/drbd83/drbd.conf
- global {
- # minor-count 64;
- # dialog-refresh 5; # 5 seconds
- # disable-ip-verification;
- usage-count no;
- }
- common {
- syncer { rate 100M; }
- }
- resource nfs {
- protocol C;
- handlers {
- pri-on-incon-degr "echo o > /proc/sysrq-trigger ; halt -f";
- pri-lost-after-sb "echo o > /proc/sysrq-trigger ; halt -f";
- local-io-error "echo o > /proc/sysrq-trigger ; halt -f";
- fence-peer "/usr/lib64/heartbeat/drbd-peer-outdater -t 5";
- pri-lost "echo pri-lost. Have a look at the log files. | mail -s 'DRBD Alert' denglei@ctfo.com";
- split-brain "/usr/lib/drbd/notify-split-brain.sh denglei@ctfo.com";
- out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh denglei@ctfo.com";
- }
- net {
- # timeout 60;
- # connect-int 10;
- # ping-int 10;
- # max-buffers 2048;
- # max-epoch-size 2048;
- cram-hmac-alg "sha1";
- shared-secret "MySQL-HA";
- }
- disk {
- on-io-error detach;
- fencing resource-only;
- }
- startup {
- wfc-timeout 120;
- degr-wfc-timeout 120;
- }
- on test6 {
- device /dev/drbd2;
- disk /dev/sda8;
- address 10.1.88.175:7788;
- meta-disk internal;
- }
- on test7 {
- device /dev/drbd2;
- disk /dev/sda8;
- address 10.1.88.179:7788;
- meta-disk internal;
- }
- [root@test6 ~]# grep -v "^#" /etc/ha.d/haresources
- test6 IPaddr::10.1.88.199/24/eth0:1 mysqld_umount mysqld
- test6 IPaddr::10.1.88.198/24/eth0:1 drbddisk::nfs Filesystem::/dev/drbd2::/data/drbd/nfs::ext3 nfs
Filesystem::/dev/drbd2::/data/drbd/nfs::ext3 nfs:用Filesystem脚本实现磁盘挂载和卸载
- cp nfs /etc/ha.d/resource.d/
- chmod 755 /etc/ha.d/resource.d/nfs
下图是各个服务在vps里的地址
由于vps是256m内存,所以drbd+heartbeat安装不成功,而且负载均衡层的keepalived也不成功,但由于负载均衡层每台服务器都有双ip,所以我通过每台服务器的第二个ip左右负载均衡双主的vip,作为dns轮询的ip,这样也能实现负载均衡双主的功能(实在是在vps没有办法实现我才这样,而且vps好贵啊,如果不是为了给大家做展示与测试,我才不买;公司的测试机器也没有外网ip,所以才用vps给大家展示,请见谅!)
下图是dns做轮询的查看图
从图中可以看到,www.netnvo.com这个域名对于2个ip,分别是184.82.79.165与184.82.79.161,实现了dns轮询。
由于我vps的内存是256m的,所以在进行ab与webbench的时候,最多只能到7000并发,在我做测试的测试环境里,并发到1w是没有问题,这里的vps架构只是为了大家的研究,测试就别做太多的并发,否则会把vps的内存给消耗没的,大家注意这点!
本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/dl528888/835339,如需转载请自行联系原作者

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
分享我做的nginx+keepalived做的主主架构(一)
最近帮朋友设计他们公司的系统架构,这是第2次进行帮他设计了,第一个是把他的lanmp架构(所有的应用与服务、数据库都在一个服务器里)改成1+1模式(nginx+mysql),最近由于他公司的名气上升,每天的在线数在4000-6000左右,并发最多能到9000左右,现有的架构有一些支撑不了,所有我又重新的帮他设计了一下。 我新设计的架构为dns(轮询)+nginx+keepalived(主主模式,2台服务器)+web(应用服务器2台服务器)+mysql(采用drbd+hearbeat+mysql,2台服务器),总共6台服务器,系统均为rhel 5.4 x86_64。 此篇文章既可以是一个完整性的架构,也可以是nginx+keepalived单主、双主模式负载均衡,nginx的反向代理,msyql的drbd+heartbeat+msyql的高可用,以及通过nfs来实现web服务器间的数据共享,分开与结合都是一篇很有深度的文章(个人认为),所以我没有把这些用到的技术分开来写,通过一篇文章写能够给大家更好的理解,否则单个的描述可能会造成大家对单个技术能更好的理解,但对整体的不会有太好的了解(虽...
- 下一篇
临危受命 MDOP企业桌面管理的价值
席卷全球的金融风暴,让众多企业举步维艰,部分企业不得不利用裁员来节约开支。各大公司的IT部门临危受命,将信息化作为增加企业市场竞争力的重要手段。面对萎靡不振的经济形势,越来越多的IT需求与空前缺乏的人力资源形成鲜明对比。如何简化管理流程,节约人力付出,成为IT管理者面临的最大挑战。 在企业里,基础架构的管理和维护是最为繁琐和耗时的工作,特别是桌面支持管理方面,再多的人力支出都不能满足客户的需求。在极度紧缩的IT预算面前,企业迫切需要一种既不改变原有的IT架构又可以有效解放劳动力的方案,让企业IT技术人员可以通过统一的管理来进行整个基础架构的维护。 微软企业桌面优化套件(Microsoft Desktop Optimization Pack , 简称MDOP)是一项采用了创新技术的动态桌面解决方案,是微软针对大规模的桌面管理需求而提供的企业级桌面管理产品。 MDOP针对复杂和大规模的桌面系统管理的需求,帮助企业降低应用程序部署的成本,将应用程序以服务的形式提供,并且可以更好地管理企业中的桌面系统环境,提高IT人员的响应速度和企业员工电脑的可用时间,显著降低操作系统和整个应用程序管理生命...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- MySQL8.0.19开启GTID主从同步CentOS8
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16