时间:2015-06-12 来源:

Lvs+Ngnix+Haproxy+Keepalived+Tomcat实现三种HA软负载均衡和TomcatSession共享 【编程语言】

环境准备: 一、11台测试机器     hostname:v1 ~ v10   (10台测试机)     ip:192.168.33.81(v1) ~ 192.168.33.90(v101)     由于在内网测试承接网页制作,需要搭建个内网yum源,承接网页制作方便安装软件.yum所在机器为192.168.33.101 二、待实现功能     下面分别使用haproxy/nginx/lvs实现HA + 负载均衡,html静态页面制作安装下glic即可: yum install glibc.i686 5、安装完毕为他建立一个链接以节省目录长度 ln -s /usr/java/jdk1.6.0_24//usr/jdk 6、配置环境变量 vim /etc/profile 添加内容: vi /etc/profile export JAVA_HOME=/usr/jdk export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME PATH CLASSPATH 7、执行下命令(source命令也称为“点命令”,也就是一个点符号(.).source命令通常用于重新执行刚修改的初始化文件,手机html制作使之立即生效网页外包接活,而不必注销并重新登录.) source /etc/profile 2.4. 安装tomcat 1、上传、解压: rz -y tar -zxvf apache-tomcat-6.0.37.tar.gz 2、重命名: mv apache-tomcat-6.0.37 tomcat  

 

4、mv nginx-1.7.

1、cd /usr/local

1、进入解压后的目录,网页外包接活指定安装路径web前端制作,则可执行文件默认放在/usr /local/bin,配置文件默认放在/usr/local/etc cd /usr/local/nginx ./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf 2、编译: make 3、安装: make install 4、启动 /usr/local/nginx/sbin/nginx  5、查看 http://192.168.xx.xxx  出现:welcome Nginx,就安装ok了. 6、停止 /usr/local/nginx/sbin/nginx –s stop 2.2. 安装nginx

于是,web切图报价我就直接拿着nginx.conf.default修改了符合w3c标准,改改也能用.下面是我修改后的配置(v1下:/usr/local/nginx/nginx.conf):

2、rz -y

2.5. 重新配置nginx 1、cd /usr/local/nginx  2、vi /usr/local/nginx/nginx.conf 添加:

cd / mkdir –m 755 data cd data mkdir –m 755 logs  

192.168.56.99 tomcat.xxx.com

上面部分安装,html切图制作我是用脚本装的.没按照上面来网页外包接活,使用上面配置时,网页外包接活启动nginx时web前端制作,

6、访问http://redis.xxy.com

user nobody nobody;#定义Nginx运行的用户和用户组 worker_processes 4;#nginx进程数承接网页制作,建议设置为等于CPU总核心数. error_log logs/error.log info;#全局错误日志定义类型,div前端切图[ debug | info | notice | warn | error | crit ] worker_rlimit_nofile 1024;#一个nginx进程打开的最多文件描述符数目web切图报价,所以建议与ulimit -n的值保持一致. pid logs/nginx.pid;#进程文件  #工作模式及连接数上限 events { use epoll;#参考事件模型,web切图报价use [ kqueue | rtsig | epoll |/dev/poll | select | poll ]; epoll模型是Linux2.6以上版本内核中的高性能网络I/O模型  worker_connections 1024;#单个进程最大连接数(最大连接数=连接数*进程数) }  #设定http服务器符合w3c标准,利用它的反向代理功能提供负载均衡支持 http {  include mime.types;#文件扩展名与文件类型映射表  default_type application/octet-stream;#默认文件类型 #设定负载均衡的服务器列表 upstream tomcatxxxcom {  server 192.168.56.200:8080;  server 192.168.56.201:8080; } #设定日志格式  log_format www_xy_com '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';   sendfile on;#开启高效文件传输模式,手机html制作sendfile指令指定nginx是否调用sendfile函数来输出文件网页外包接活,如果用来进行下载等应用磁盘IO重负载应用web前端制作,以平衡磁盘与网络I/O处理速度承接网页制作,降低系统的负载.注意:如果图片显示不正常把这个改成off.  keepalive_timeout 65;#长连接超时时间,承接网页制作单位是秒  #gzip on; #设定虚拟主机web切图报价,默认为监听80端口  server {  listen 80;  server_name tomcat.xxx.com;#域名可以有多个,网站div+css用空格隔开  #charset koi8-r; #设定本虚拟主机的访问日志  access_log /data/logs/access.log www_xy_com; #对 "/" 启用反向代理   location /{  proxy_pass http://tomcatxxxcom;  proxy_set_header Host $host;  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }  #error_page 500 502 503 504 /50x.html;  location =/50x.html {  root html; } } } 3、创建logs所需要的文件夹/data /logs/

/usr/local/tomcat/bin/startup.sh /usr/local/nginx/sbin/nginx  5、修改hosts,使用rr策略自动轮巡v3,v4效果图:      对了,网页外包接活上面那句v3,v4的提示语,div+css制作是我echo一句话把tomcat默认的ROOT/index.jsp 给覆盖了承接网页制作,用作测试     1.首先使用keepalived + nginx + tomcat 实现 测试过程中发现,承接网页制作我收到将nginx kill之后keepalived居然ip不飘web切图报价,检查了配置也没发现问题.唯一能让keepavlied执行notify.sh脚本时候就是在启动kp时,web切图报价 会检查nginx是否存活符合w3c标准,脚本名称为:monitor.sh,v2共同脚本: monitor.sh: #!/bin/bashwhile true;do A=`ps -ef|grep nginx |wc -l` B=`ps -ef|grep keepalived |wc -l`if[ $A -eq 1];then echo 'restart nginx!!!!'/usr/local/nginx/sbin/nginxif[ $A -eq 1];thenif[ $B -gt 1];then killall keepalived service keepalived start &fififi if[ $B -eq 1];then service keepalived start &fi  sleep 5done notify.sh #!/bin/bash# keepalived notify scriptcontact='root@localhost'notify(){ mailsubject="`hostname` to be $1: vip floating" mailbody="`date '+%F %H:%M:%S'`: vrrp transition, `hostname` changed to be $1" echo $mailbody | mail -s "$mailsubject" $contact} case"$1"in master) notify master echo "变成主了,web前端制作触发master!">>/root/k_tips.log/usr/local/nginx/sbin/nginx exit 0;; backup) notify backup echo "变成从了承接网页制作,触发backup事件!">>/root/k_tips.log/usr/local/nginx/sbin/nginx exit 0;; fault) notify fault echo "脑列了,div前端切图触发fault事件!">>/root/k_tips.log/usr/local/nginx/sbin/nginx -s stop exit 0;;*) echo 'Usage: notify.sh {master|backup|fault}' exit 1;;esac     2.使用keepalived + haproxy + tomcat 实现         2.1 安装haproxy             yum -y install haproxy         2.2 修改配置              # to have these messages end up in /var/log/haproxy.log you will# need to:# # 1) configure syslog to accept network log events. This is done# by adding the '-r' option to the SYSLOGD_OPTIONS in# /etc/sysconfig/syslog# # 2) configure local2 events to go to the /var/log/haproxy.log# file. A line like the following can be added to# /etc/sysconfig/syslog# # local2.* /var/log/haproxy.log# # 上面说我们要把日志写到/var/log/haproxy.log需要修改以下两个地方:1./etc/sysconfig/syslog , 这个我现在用的centos6.6已经没有了,web切图报价取代它的是同目录下的rsyslogvi /etc/sysconfig/rsyslog这里对它做了以下更改:修改前:SYSLOGD_OPTIONS="-c 5"修改后:SYSLOGD_OPTIONS="-c 2 -r" 2. /etc/rsyslog.conf 修改日志存放位置vi /etc/rsyslog.conf 我在local7.*下面加了一行符合w3c标准,修改后是这样的:# Save boot messages also to boot.loglocal7.* /var/log/boot.loglocal2.* /var/log/haproxy.log 好了,手机html制作基本的配置可以了. 下面开始修改/etc/haproxy/haproxy.cfg          3.使用keepalived + lvs + tomcat 实现 未完待续...

点击次数:11878
作者:
web前端行业资讯
Web new NewsList
英特尔宣布与法拉利跨界合作欲将AI技术用于赛车运动 ,,2018年01月11日甲骨文服务器出漏洞:攻击者用漏洞挖矿获取加密货币 ,,2018年01月11日用深度学习设计图像视频压缩算法:更简洁、更强大 ,,2018年01月11日Ubuntu内核和NVIDIA更新:修复Meltdown和Spectre两处漏洞 ,,2018年01月11日AntDesign3.1.1发布,阿里企业级UI设计语言 ,,2018年01月11日微信「跳一跳」带火小游戏,开发者如何快速上手? ,,2018年01月11日谷歌公布最新安卓系统份额:你用上奥利奥了么? ,,2018年01月11日腾讯开发出“3D音效”算法:普通耳机实现3D实时语音效果 ,,2018年01月11日谷歌工程师点赞中国程序员实现Node.js启动超4倍提速 ,,2018年01月11日三星电子总裁兼CE部门负责人金炫奭:万物互联时代到来 ,,2018年01月11日NVIDIA和大众合作建立智能驾驶助手 ,,2018年01月11日GIMPS项目报告发现已知最大素数 ,,2018年01月11日微软与生物技术公司开展AI驱动的血液检测同时诊断数十种疾病 ,,2018年01月11日微软跨平台移动开发工具套件HockeyApp宣布免费 ,,2018年01月11日《硅谷》里神乎其神的压缩技术,AI正在一点点做出来 ,,2018年01月11日LinuxMint19代号敲定为“Tara”预计2018年5月至6月期间发布 ,,2018年01月11日Facebook发布wav2letter工具包,用于端到端自动语音识别 ,,2018年01月11日开源数据库ArangoDB正进行约1156万美元股权融资 ,,2018年01月11日IntelCPU漏洞闹大:腾讯云紧急升级 ,,2018年01月11日2018年1月全球数据库排名:Redis夺回第八 ,,2018年01月11日Lyft将联手无人驾驶公司于CES上展示无人驾驶汽车 ,,2018年01月11日京东X无人超市首家社会门店开业:刷脸进、微信自动结算 ,,2018年01月11日担心被AI取代是杞人忧天?高晓松跨年演讲说的有几分对 ,,2018年01月11日免费授权技术许可Intel宣布在未来CPU中集成雷电3 ,,2018年01月11日算法决定你在社交媒体上看到的信息 ,,2018年01月11日谷歌安全博客披露“英特尔内核漏洞”更多细节 ,,2018年01月04日Postgres10开发者新特性 ,,2017年12月28日阿里巴巴、狗尾草、苏大联合论文:基于对抗学习的众包标注用于中文命名实体识别 ,,2017年12月28日柯洁的2017:20岁,与AI斗与人类斗,其乐无穷 ,,2017年12月28日如果机器人拥有痛觉,这个世界会有哪些不一样? ,,2017年12月28日Git学习与总结三 【架构设计】2015年08月26日最适合开车时收听的英文歌曲Top102014年01月29日linux内核内存分配(一、基本概念) 【系统运维】2015年08月07日CodeforcesRound#271(Div.2)F题Antcolony(线段树求区间gcd)【移动开发】2015年06月01日JQGrid单元格合并及表头列合并【系统运维】2014年12月30日java多线程上传解压文件 【编程语言】2015年04月17日Android笔记之:App调试的几个命令的实践与分析2014年01月30日判断两个对象内容相等【编程语言】2015年07月16日iEmu:在Linux、Windows、Mac、Android系统上仿真运行iOS应用 ,,2016年06月29日UICollectionView不同大小Cell等间距的实现 【移动开发】2015年05月13日HIVE0.14.0安装 【Web前端】2014年12月03日AngularJSProviders详解 【系统运维】2015年01月26日移动Web开发框架jQueryMobile1.1将要改进的内容 1,收藏 ,,2016年07月24日鸡兔同笼 【互联网】2015年01月19日Activity-生命周期 【编程语言】2015年06月02日设计模式之建造者模式 【编程语言】2015年09月03日CodeForces487BStrip 【综合】2014年11月27日推荐两款手机TXT电子书转换工具2014年01月29日分布式的内存平台ApacheIgnitev1.7.0-rc1发布 ,,2016年08月04日HighwaysPOJ2485【Prim】【移动开发】2015年08月15日Android中插件开发篇之----应用换肤原理解析【移动开发】2015年08月15日Java的并发编程框架,Disruptor2.9发布 2,收藏 ,,2016年06月23日OpenGL中使用Shader的基本步骤【编程语言】2015年04月08日spring自动装配Bean属性 【综合】2015年07月01日IE图片缓存document.execCommand("BackgroundImageCache",false,true)2014年01月29日排列组合问题 【编程语言】2015年08月30日服务器被ARP攻击,网站被挂马2014年01月28日UI_UITableView编辑 【研发管理】2015年07月13日myeclipse10用本地文件来配jsEclipse等插件(附jsEclipse下载地址)2015年01月19日js图片自动切换效果处理代码2014年01月29日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)