UDN-企业互联网技术人气社区

板块导航

浏览  : 9187
回复  : 53

[项目维护交流] 【支持生活录】NO.17--双机热备部署实例

[复制链接]
Z.Virgil的头像 楼主
发表于 2015-12-18 09:17:50 | 显示全部楼层 |阅读模式
本帖最后由 Z.Virgil 于 2015-12-21 08:47 编辑

《支持生活录NO.17》
140449cfkg4rtksgqhqkjt.png

光阴荏苒,转瞬即逝~
2015转变的太多太多。
从一个学生党转变成了上班狗。
从黑龙江来到了北京。
从愿意出去玩耍的人变成了宅男。
唯一没变的是。。。
2.jpg

3.jpg

4.jpg

从此可鉴,我是一个专一的人~

双机热备
双机热备特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态)。
下图为某项目真实的双击热备的拓扑图。
QQ图片20151218091523.png

让我们看看如何在LINUX下部署NGINX+KEEPALIVED+TOMCAT+REDIS吧~
Nginx 部署
1:安装前准备
         yum-y install gcc gcc-c++ autoconf automake
         yum-y install zlib zlib-devel openssl openssl-devel pcre-devel
         groupadd-r nginx
         useradd-s /sbin/nologin -g nginx -r nginx
         mkdir/var/tmp/nginx/client -pv
         touch/var/lock/nginx.lock
2:nginx配置和安装
   
         cd/usr/local
         tar-zxvf nginx-1.8.0.tar.gz
         cdnginx-1.8.0
         ./configure\
         --prefix=/usr\
         --sbin-path=/usr/sbin/nginx\
         --conf-path=/etc/nginx/nginx.conf\
         --error-log-path=/media/disk1/nginx/logs/error.log\
         --pid-path=/var/run/nginx/nginx.pid\
         --lock-path=/var/lock/nginx.lock\
         --user=nginx\
         --group=nginx\
         --with-pcre=/opt/pcre-8.36\
         --with-http_ssl_module\
         --with-http_flv_module\
         --with-http_gzip_static_module\
         --http-log-path=/media/disk1/nginx/logs/access.log\
         --http-client-body-temp-path=/media/disk1/nginx/client\
         --http-proxy-temp-path=/media/disk1/nginx/proxy\
         --http-fastcgi-temp-path=/media/disk1/nginx/fcgi\
         --with-http_stub_status_module\
         --with-poll_module\
         --with-http_realip_module\
         --add-module=/opt/nginx-gridfs-1.0.1\
         --add-module=/opt/ngx_cache_purge-2.3\
         --with-cc-opt=-Wno-error
         make&& make install
3:nginx安装检查
         检查是否启动
         ps-ef |grep nginx
         启动
         nginx-c /etc/nginx/nginx.conf
         查看80端口是否被监听
         netstat-tulnp |grep :80
4: nginx 服务配置
         将nginx文件复制到/etc/init.d下并修改权限
         chmod+x nginx
5:配置nginx.conf
         
         参考示例nginx.conf,修改指定的location等参数
         tomcat环境请提前准备,对应的war包的配置文件为application.properties,请配置到/etc/ecconfig下
5:服务启动
         服务方式启动
         servicenginx start
         停止
         servicenginx stop
         重新加载
         servicenginx reload
Redis 部署
1:确保配置好指定版本的java运行环境
2:拷贝目录的redis_master、redis_slave1、redis_slave2到相应的目录,如/usr
3:检查配置文件目录下的各个文件
         /usr/redis/redis_master/conf
         /usr/redis/redis_slave1/conf
         /usr/redis/redis_slave2/conf
4:修改redis配置
         修改配置文件redis.conf的端口和ip,如下:
         pidfile/usr/redis/redis_master/run/redis.pid
         port6379
         dir/usr/redis/redis_master/db/
         slave下的配置文件需要修改slaveof属性,如下:
         slaveof20.12.3.59 6379
5:修改sentinel配置文件
         示例如下:
         port26379
         sentinelmonitor mymaster 127.0.0.1 6379 2
         sentineldown-after-milliseconds mymaster 30000  
         sentinelparallel-syncs mymaster 1  
         sentinelfailover-timeout mymaster 900000
         slave对应的示例如下:
         port26380
         sentinelmonitor mymaster 127.0.0.1 6379 2
         sentineldown-after-milliseconds mymaster 30000  
         sentinelparallel-syncs mymaster 1  
         sentinelfailover-timeout mymaster 900000
         注意:配置时候修改各个ip和端口和真实环境对应
6:服务启动
         启动redis示例
         /software/redis_master/redis-server/software/redis_master/conf/redis.conf
         启动所有redis后再启动sentinel
         nohup/usr/redis/redis_master/redis-server /usr/redis/redis_master/conf/sentinel.conf--sentinel> /usr/redis/redis_master/sentinel.log 2>&1 &
7:检查服务启动情况
         ps-ef |grep redis
        
KEEPALIVED部署
一:安装KEEPALIVED
KEEPALIVED需要安装在MASTER和BACKUP机上,步骤如下
//安装依赖库
yum -y install gcc kernel-developenssl-devel
yum -y install popt-devel
//解压keepalived
cp keepalived-1.1.19.tar.gz /usr/local
cd /usr/local
tar -zxvf keepalived-1.1.19.tar.gz
cd keepalived-1.1.19
./configure --sysconf=/etc--with-kernel-dir=/usr/src/kernels/2.6.32-504.12.2.el6.x86_64/
make && make install
ln -s /usr/local/sbin/keepalived /sbin/
MASTER机
安装完成后将位于/etc/keepalived目录下的keepalived.conf文件替换为说明目录下的/keepalived/keepalived master.conf,并将其改名为keepalived.conf.
配置文件中含有虚ip地址、realserver地址,将其修改为需要的地址运行后keepalived start 启动keepalived。
backup机  
安装完成后将位于/etc/keepalived目录下的keepalived.conf文件替换为说明目录下的/keepalived/keepalived bakup.conf,并将其改名为keepalived.conf.
配置文件中含有虚ip地址、realserver地址,将其修改为需要的地址运行后keepalived start 启动keepalived。


给大家出一个IQ测试题,据说答对回复在本帖下的会有神秘惊喜呦~
9.jpg


相关帖子

发表于 2015-12-18 09:24:46 | 显示全部楼层

回帖奖励 +5

表示天书一样
使用道具 举报

回复

Z.Virgil的头像 楼主
发表于 2015-12-18 09:29:28 | 显示全部楼层

那你是为了U币来的 ?
点评 ( 1 ) 收起 / 展开点评

你猜猜 2015年12月18日 09:30 详情 回复

必须的!

使用道具 举报

回复

发表于 2015-12-18 09:30:09 | 显示全部楼层
Z.Virgil 发表于 2015-12-18 09:29
那你是为了U币来的 ?

必须的!
使用道具 举报

回复

发表于 2015-12-18 09:32:28 | 显示全部楼层

回帖奖励 +5

837等于多少,等于问号,难道会等于省略号吗!
使用道具 举报

回复

Z.Virgil的头像 楼主
发表于 2015-12-18 09:34:13 | 显示全部楼层
倾心遁世 发表于 2015-12-18 09:32
837等于多少,等于问号,难道会等于省略号吗!

你肯定是故意的。我猜你算不出来~
点评 ( 1 ) 收起 / 展开点评

倾心遁世 2015年12月18日 09:37

被你识破了,哈哈

使用道具 举报

回复

发表于 2015-12-18 13:54:10 来自手机 | 显示全部楼层

回帖奖励 +5

楼主讲的很细致,以后遇到此类问题可以少走弯路了~
来自: 微社区
使用道具 举报

回复

Z.Virgil的头像 楼主
发表于 2015-12-18 14:34:36 | 显示全部楼层
田晶 发表于 2015-12-18 13:54
楼主讲的很细致,以后遇到此类问题可以少走弯路了~

你也没回答那个问题啊
使用道具 举报

回复

发表于 2015-12-18 15:03:32 来自手机 | 显示全部楼层

回帖奖励 +5

up
使用道具 举报

回复

Z.Virgil的头像 楼主
发表于 2015-12-21 08:48:34 | 显示全部楼层
点评 ( 1 ) 收起 / 展开点评

ciafo 2016年02月22日 10:53 详情 回复

楼主,示爱快疯了吧

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们
联系我们
  • 电话:010-86393388
  • 邮件:udn@yonyou.com
  • 地址:北京市海淀区北清路68号
移动客户端下载
关注我们
  • 微信公众号:yonyouudn
  • 扫描右侧二维码关注我们
  • 专注企业互联网的技术社区
版权所有:用友网络科技股份有限公司82041 京ICP备05007539号-11 京公网网备安1101080209224 Powered by Discuz!
快速回复 返回列表 返回顶部