Redis+Keepalived实现双机不间断缓存<一>
2012-10-20 15:49
417 查看
引言:
在不停的性能,性能的要求下,缓存使用的越来越多.缓存地位越来越高,但如果缓存机挂掉呢?就得从原来的地方去取了,
达不到我们想的效果.此时,或许分布式,多机缓存同步,等方式,能解决该状况.但个人感觉相较而言编程复杂较大.
本文介绍一下,本人最近用的方法.本人资历尚浅,仅希望本文能够抛砖引玉,让各位达人前来指点.
本文第一部分,介绍这两种工具如何在linux下的安装.
本文第二部分,介绍如何利用这两种工具,来实现自动同步缓存数据,自动切换缓存主机.
第一部分介绍如何安装Redis和Keepalived
1.先安装的Redis
主要参照:http://www.oschina.net/question/12_18065
1.1.wget
1.2.tar -zxvf ...
1.3.make
1.4.此时照上网上的说话,是
cp redis.conf /etc/ 这个文件时redis启动的配置文件
cp redis-benchmark redis-cli redis-server /usr/bin/ #这个倒是很有用,这样就不用再执行时加上./了,而且可以在任何地方执行
但实际执行起来,只有第一个成功,后在这三个文件找不到.
--->解决方法,直接makeinstall即可.
2.安装keepalived
参照:http://haolulu.blog.51cto.com/3164472/600214
(没有出现文中,出现的错误,但是出现以下错误)
2.1.wget http://www.keepalived.org/software/keepalived-1.1.20.tar.gz
2.2.tar -zxvf ....
2.3. ./configure
出现错误:
configure: error:
!!! OpenSSL is not properly installed on your system. !!!
!!! Can not include OpenSSL headers files. !!!
解决方案:
yum -y installopenssl-devel
出现错误:
操作上面之后,出现
checking for poptGetContext in -lpopt... no
configure: error: Popt libraries is required
解决方案:
同上
错误是因为没有安装popt的开发包导致的,解决方法也很简单.
只要yum install popt-devel
2.4.make
2.5.make install
2.6.修改配置文件路径
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/sbin/keepalived /usr/sbin/
2.7:设置为开机启动
vi /etc/rc.local
i-->最后输入"/etc/init.d/keepalived start"-->esc-->:wq!
2.8:修改配置文件
vi /etc/keepalived/keepalived.conf
修改下面这段:
vrrp_instance VI_1 {
state BACKUP ---主服务器:MASTER 备份机为BACKUP
interface eth0
virtual_router_id 51
priority 80 ---权重,比主服务低
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.36.2---虚IP
}
}
2.9:启动keepalived service keepalived start
2.10:关闭keepalived service keepalived stop
到此安装完毕,剩余见下篇.
在不停的性能,性能的要求下,缓存使用的越来越多.缓存地位越来越高,但如果缓存机挂掉呢?就得从原来的地方去取了,
达不到我们想的效果.此时,或许分布式,多机缓存同步,等方式,能解决该状况.但个人感觉相较而言编程复杂较大.
本文介绍一下,本人最近用的方法.本人资历尚浅,仅希望本文能够抛砖引玉,让各位达人前来指点.
本文第一部分,介绍这两种工具如何在linux下的安装.
本文第二部分,介绍如何利用这两种工具,来实现自动同步缓存数据,自动切换缓存主机.
第一部分介绍如何安装Redis和Keepalived
1.先安装的Redis
主要参照:http://www.oschina.net/question/12_18065
1.1.wget
1.2.tar -zxvf ...
1.3.make
1.4.此时照上网上的说话,是
cp redis.conf /etc/ 这个文件时redis启动的配置文件
cp redis-benchmark redis-cli redis-server /usr/bin/ #这个倒是很有用,这样就不用再执行时加上./了,而且可以在任何地方执行
但实际执行起来,只有第一个成功,后在这三个文件找不到.
--->解决方法,直接makeinstall即可.
2.安装keepalived
参照:http://haolulu.blog.51cto.com/3164472/600214
(没有出现文中,出现的错误,但是出现以下错误)
2.1.wget http://www.keepalived.org/software/keepalived-1.1.20.tar.gz
2.2.tar -zxvf ....
2.3. ./configure
出现错误:
configure: error:
!!! OpenSSL is not properly installed on your system. !!!
!!! Can not include OpenSSL headers files. !!!
解决方案:
yum -y installopenssl-devel
出现错误:
操作上面之后,出现
checking for poptGetContext in -lpopt... no
configure: error: Popt libraries is required
解决方案:
同上
错误是因为没有安装popt的开发包导致的,解决方法也很简单.
只要yum install popt-devel
2.4.make
2.5.make install
2.6.修改配置文件路径
cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keepalived
cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
cp /usr/local/sbin/keepalived /usr/sbin/
2.7:设置为开机启动
vi /etc/rc.local
i-->最后输入"/etc/init.d/keepalived start"-->esc-->:wq!
2.8:修改配置文件
vi /etc/keepalived/keepalived.conf
修改下面这段:
vrrp_instance VI_1 {
state BACKUP ---主服务器:MASTER 备份机为BACKUP
interface eth0
virtual_router_id 51
priority 80 ---权重,比主服务低
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.36.2---虚IP
}
}
2.9:启动keepalived service keepalived start
2.10:关闭keepalived service keepalived stop
到此安装完毕,剩余见下篇.
相关文章推荐
- Redis+Keepalived实现双机不间断缓存<二>
- Android binder 原理及实现机制<一>
- Android UI设计之<一>使用ImageView实现ProgressBar旋转效果
- Unity3D SpuerSocket 网络聊天室实现 <一>
- <转>简单的java缓存实现
- quick-cocos2d-x的热更新机制实现<一>前言
- XMPP协议实现原理介绍<一>
- 在cocos2d-x 3.2下利用UI下面的控件模仿实现GridView部分效果<一>实现构思
- <一>基于Fourinone实现分布式计算上手指南和demo
- C# 数组集合 <一>基本概念(Array&ArrayList&List<T>&SortList&LinkList的实现Code)
- 实现ftp多线程下载<一>
- 百度地图开发之实现运动轨迹 <一>
- android Fragment实现<一>
- 自动定义瀑布流控件的实现<一>
- 如何实现具有层次结构的 TreeView <一> (WPF/TreeView/Style/Template)
- 模拟实现通讯录 <一><静态方法>
- 生产者消费者模型实现<一>模拟实现
- Lucene 如何实现高性能 GroupBy <一>
- <转>linux文件系统实现浅析
- <<20几岁要应用的经济学智慧>>经济知识<一>