redis集群搭建

来源:互联网 发布:java序列化如何实现 编辑:程序博客网 时间:2024/06/03 14:46

    首先在linux上安装redis,将包解压,tar zxf redis-3.0.0.tar.gz,进入解压包的目录下,有一个src文件存储的redis源码,redis需要编译源码,但是redis是c语言开发的,所以需要gcc环境,yum install gcc c++,之后输入make命令进行编译源码,成功后生成redis-server、redis-cli等文件。

    然后安装 make install PREFIX=/usr/local/redis,PREFIX指的是安装位置。cd /usr/local/redis,有一个bin文件夹,cd bin,./redis-server,启动redis,默认端口6379。

    cp ~/redis-3.0.0/redis.conf /usr/local/redis/bin,vi redis.conf,修改daemonize yes,指在后台运行,./redis-server redis.conf,ps aux|grep redis查看进程,查看启动情况。

    然后开始搭建集群,集群至少2台以上,redis投票容错机制使得至少3台,每台需要一个备份机,所以搭建6台redis。首先,mkdir redis-cluster,cp -r /usr/local/redis/bin redis-cluster/redis01,vi redis.conf,修改端口7001,修改集群模式cluster-enabled yes。cp -r redis-cluster/redis01 redis-cluster/redis02,复制6个,修改端口7001-7006。然后新建文件启动全部,vi redis-cluster/start-all.sh,cd redis-cluster/redis01 ./redis-server redis.conf cd../,复制6个保存,chmod +x start-all.sh,加可执行权限。./start-all.sh,启动。

    6个实例准备好便开始搭建,需要执行一个ruby脚本,所以需要脚本解析器,于是安装ruby,yum install ruby,yum install rubygems(包管理器),还需要一个第三方依赖包redis-3.0.0.gem,gem instal redis-3.0.0.gem。cd redis-3.0.0,cd src,其中redis-trib.rb即为ruby脚本,cp -rredis-trib.rb redis-cluster。运行ruby脚本 ./redis-trib.rb create --replicas 1 192.168.25.128:7001 192.168.25.128:7002 192.168.25.128:7003 192.168.25.128:7004 192.168.25.128:7005 192.168.25.128:7006。

    搭建完成。

    以下,xml代码:

<bean id="jedisCluster" class="redis.clients.jedis.JedisCluster"><constructor-arg><set><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7001"></constructor-arg></bean><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7002"></constructor-arg></bean><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7003"></constructor-arg></bean><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7004"></constructor-arg></bean><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7005"></constructor-arg></bean><bean class="redis.clients.jedis.HostAndPort"><constructor-arg name="host" value="192.168.25.129"></constructor-arg><constructor-arg name="port" value="7006"></constructor-arg></bean></set></constructor-arg></bean>

    直如朱丝绳,清如玉壶冰。

原创粉丝点击