Redis安装部署
redis下载安装教程
redis下载安装教程以下是Redis的下载安装教程,内容中不包含与标题相同的文字。
1. 在Redis的官方网站上(https://redis.io/)找到"Download"页面。
2. 在"Download"页面上,找到最新版本的Redis,并点击下载链接。
选择适合你操作系统的版本。
3. 下载完成后,将Redis文件解压到你想要安装的目录。
例如,可以将其解压到"C:\Redis"目录下。
4. 打开解压后的Redis目录,并找到"redis.conf"文件。
这是Redis的配置文件,可以根据需要进行修改。
5. 打开命令行界面(Command Prompt)并进入Redis的安装目录。
6. 在命令行中输入"redis-server.exe redis.conf",然后按下回车键,启动Redis服务器。
7. 如果一切顺利,你应该会看到一些Redis服务器的信息,表示Redis已成功运行。
8. 另外打开一个命令行界面(不要关闭之前的命令行界面),进入Redis的安装目录。
9. 在命令行中输入"redis-cli.exe",然后按下回车键,启动Redis命令行客户端。
10. 如果一切顺利,你应该会看到Redis命令行提示符,表示你已成功连接到Redis服务器。
11. 现在你可以在Redis命令行中输入各种Redis命令,来操作Redis数据库了。
例如,可以使用"SET key value"命令设置键值对,使用"GET key"命令获取键的值等等。
12. 当你完成Redis的使用后,可以使用"SHUTDOWN"命令关闭Redis服务器。
以上是Redis的下载安装教程。
根据这些步骤,你应该能够成功下载并安装Redis,并开始使用它。
redis基本用法
redis基本用法Redis是一种高性能的键值存储数据库,它支持多种数据结构,包括字符串、哈希表、列表、集合和有序集合。
以下是Redis的基本用法:1. 安装Redis在Linux系统上,可以使用命令行安装Redis:sudo apt-get updatesudo apt-get install redis-server2. 启动Redis启动Redis服务器可以使用以下命令:redis-server3. 连接到Redis可以使用以下命令连接到正在运行的Redis服务器:redis-cli4. 存储和获取数据存储数据可以使用SET命令:SET key value获取数据可以使用GET命令:GET key5. 删除数据可以使用DEL命令删除一个或多个键值对:DEL key1 key2 ...6. 数据类型Redis支持五种主要的数据类型:字符串、哈希表、列表、集合和有序集合。
7. 字符串操作字符串是最简单的数据类型。
可以使用SET和GET命令存储和获取字符串。
其他常用的字符串操作包括APPEND(追加字符串)、INCR (增加数字)、DECR(减少数字)等。
8. 哈希表操作哈希表是一种键值对集合。
可以使用HSET和HGET命令存储和获取哈希表中的元素。
其他常用的哈希表操作包括HDEL(删除元素)、HLEN(获取元素数量)等。
9. 列表操作列表是一系列有序的元素。
可以使用LPUSH和RPUSH命令向列表中添加元素,使用LPOP和RPOP命令从列表中取出元素。
其他常用的列表操作包括LLEN(获取列表长度)、LRANGE(获取指定范围内的元素)等。
10. 集合操作集合是一组无序的唯一元素。
可以使用SADD和SMEMBERS命令向集合中添加元素,使用SREM命令删除元素。
其他常用的集合操作包括SCARD(获取集合大小)、SINTER(获取多个集合的交集)等。
11. 有序集合操作有序集合是一组有序的唯一元素。
Redis安装使用RedisJSON模块的方法
Redis安装使⽤RedisJSON模块的⽅法⽬录⼀、安装ReJSON⼆、使⽤ReJson在使⽤ Redis 中,我们可以使⽤⼤量的 Redis 模块来扩展 Redis 的功能,这⾥安装使⽤ ReJSON模块。
⼀、安装ReJSON1、下载好上传到Liunx[root@centos7 ~]# ll | grep *JSON*-rw-r--r-- 1 root root 4694039 5⽉ 16 10:53 RedisJSON-1.0.4.tar.gz[root@centos7 ~]# tar -zxvf RedisJSON-1.0.4.tar.gz[root@centos7 ~]# cd RedisJSON-1.0.4/[*************************.4]#2、make编译,⽣成⼆进制⽂件 rejson.so,[*************************.4]#make[*************************.4]#ll./src|greprejson.so-rwxr-xr-x 1 root root 448600 5⽉ 16 11:14 rejson.so3、你也可以直接下载⼆进制⽂件,我把它放到 Redis 的安装⽬录下⾯的 module(⾃⼰创建)⽬录下[*************************.4]#cd/usr/local/redis/[root@centos7 redis]# mkdir module[root@centos7 redis]# cp /root/RedisJSON-1.0.4/src/rejson.so ./module[root@centos7 redis]# ll ./module总⽤量 440-rwxr-xr-x 1 root root 448600 5⽉ 16 11:22 rejson.so4、将 ReJSON 模块添加到 Redis1)使⽤ MODULE LOAD 命令。
RedisDesktopManager(Redis可视化工具)安装及使用教程
RedisDesktopManager(Redis可视化工具)安装及使用教程一、安装RedisDesktopManager二、使用RedisDesktopManager1. 打开RedisDesktopManager:安装完成后,在系统中RedisDesktopManager并打开。
2. 新建连接:在RedisDesktopManager界面点击左上角的“Connect to Redis Server”按钮,弹出新建连接窗口。
3. 填写连接信息:在新建连接窗口中,填写Redis服务器的IP地址、端口号等信息,并设置一个连接名称。
4. 测试连接:点击“Test Connection”按钮测试连接是否成功,如果成功会弹出一个成功提示框。
5. 保存连接:连接测试成功后,点击“Save”按钮保存连接信息。
6. 连接到Redis服务器:在RedisDesktopManager的连接列表中,选择之前保存的连接,并点击“Connect”按钮进行连接。
8. 导入导出数据:在导航栏中选择需要导入或导出的数据库,点击右上角的“Import Data”或“Export Data”按钮,选择对应的文件进行操作。
9. 执行命令:在RedisDesktopManager中支持执行Redis命令,点击左上角的“Execute”按钮,在弹出的命令输入框中输入对应的命令,回车执行即可。
10. 设置:点击RedisDesktopManager界面的“Settings”按钮,可以进行一些软件设置,如调整字体大小、修改界面语言等。
三、常见问题1. 连接失败:如果连接失败,首先检查填写的连接信息是否正确,确认Redis服务器是否开启并监听对应的端口。
2. 密码验证:如果Redis服务器需要密码验证,在连接信息中填写正确的密码即可。
3. RedisDesktopManager无法显示部分键值对:RedisDesktopManager在默认情况下只显示100条键值对,可以在设置中调整显示的数量。
linux下Redis安装详解
Redis安装Redis是一种高级key-value数据库。
它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。
有字符串,链表,集合和有序集合。
支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。
所以Redis也可以被看成是一个数据结构服务器。
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。
一、下载最新版wget /files/redis-2.0.4.tar.gz二、解压缩tar redis-2.0.4.tar.gz三、安装C/C++的编译组件(非必须)apt-get install build-essential四、编译cd redis-2.0.4makemake命令执行完成后,会在当前目录下生成本个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-stat,它们的作用如下:redis-server:Redis服务器的daemon启动程序redis-cli:Redis命令行操作工具。
当然,你也可以用telnet根据其纯文本协议来操作redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况在后面会有这几个命令的说明,当然是从网上抄的。
五、修改配置文件/etc/sysctl.conf添加vm.overcommit_memory=1刷新配置使之生效sysctl vm.overcommit_memory=1补充介绍:**如果内存情况比较紧张的话,需要设定内核参数:echo 1 > /proc/sys/vm/overcommit_memory内核参数说明如下:overcommit_memory文件指定了内核针对内存分配的策略,其值可以是0、1、2。
redis主备部署方案
redis主备部署方案Redis部署方式采用主备的方式,通过keepalived来对外提供虚IP,并实现主备自动切换功能。
主实例A:192.168.20.30备实例B:192.168.20.232虚IP:192.168.20.110正常工作时,虚IP在主实例A上,主实例A上的数据自动同步到备实例B上,当主实例A挂掉之后,备实例B将自动接管虚IP,并将redis转换为主模式,待原主实例A恢复后,A将自动切换成备模式,从B上同步数据,主备角色互换,实现融灾备份。
安装部署步骤如下:1.安装keepalivedwget /software/keepalived-1.2.6.tar.gztarzxvf keepalived-1.2.6.tar.gzcd keepalived-1.2.6./configure如果报错configure: error:!!! OpenSSL is not properly installed on your system. !!!!!! Can not include OpenSSL headers files.解决办法:yum -y install openssl-develyum -y install popt-develln -s /usr/src/kernels/2.6.32-220.el6.x86_64/ /usr/src/linux./configuremakemake installcp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/cp /usr/local/sbin/keepalived /usr/sbin/mkdir /etc/keepalived添加keepalived的配置项:vi /etc/keepalived/keepalived.confglobal_defs {router_id LVS_DEVEL}vrrp_scriptMonitor_Redis {script "/home/bbcv/redis/redis_keepalive.sh"interval 3 #每3秒执行一次weight 2}# VIP1vrrp_instance VI_1 {state BACKUP #主备服务器都设置成BACKUPinterface eth0virtual_router_id55priority 100 # 备份服务上将100改为90advert_int 1 #检查间隔nopreempt #设置为不抢占,注意这个配置只能设置在state为BACKUP的主机上,而且这个主机的priority必须比另外一台高authentication {auth_type PASSauth_pass 1111}notify_master/home/bbcv/redis/redis_master.shnotify_backup/home/bbcv/redis/redis_backup.shtrack_script {Monitor_Redis #(调用redis进程检测脚本)}virtual_ipaddress {192.168.20.110#(如果有多个VIP,继续换行填写.)}}启动keepalivedservicekeepalived start2.redis_keepalive.sh脚本该脚本主要实现对redis进程进行监控,当检测到redis进程挂掉时,自动停止keepalived进程,使虚IP进行漂移注意添加该脚本的可执行权限!chmod +x redis_keepalive.sh#!/bin/bashtime=$(date '+%Y-%m-%d %H:%M:%S' )#redis部署路径redispath=/home/bbcv/redis#redis-cli部署路径rediscli=$redispath/redis-2.0.0-rc4/redis-cliif [ ! -d "logs" ]; thenmkdir $redispath/logsfilogfile=$redispath/logs/redis-state.logoldfile=$logfile'.'$(date +%Y-%m-%d --date='30 days ago')yesterdayfile=$logfile'.'$(date +%Y-%m-%d --date='1 days ago')#把昨天的日志重命名if [ -f $yesterdayfile ]thenecho "OK"elsemv $logfile $yesterdayfile>> $logfile 2>&1echo "$time [$yesterdayfile] Move yesterdayfile Success!" >> $logfilefi#删除老的日志文件if [ -f $oldfile ]thenrm -f $oldfile>> $logfile 2>&1echo "$time [$oldfile] Delete Old File Success!" >> $logfileelseecho "no old file"fi#检测redis端口是否正常status=`$rediscli -h 127.0.0.1 -p 6379 info|greprole|awk -F ":" '{print $2}'`$rediscli -h 127.0.0.1 -p 6379 info > /dev/nullif [ $? -eq0 ]; thenecho "$time redis server is OK" >>$logfileecho 目前状态为:$status >>$logfileelseecho "$time no redis service found!">>$logfilesleep 2# try to found it again$rediscli -h 127.0.0.1 -p 6379 info > /dev/nullif [ $? -eq0 ]; thenecho "$time redis server is OK" >>$logfileecho 目前状态为:$status >>$logfile#exit 0elseecho "$time redis server error" >>$logfile#stop keepalived/etc/init.d/keepalived stopecho "$time stop keepalived" >>$logfilefifi3.redis_master.sh脚本该脚本主要实现当keepalived切换到master时,执行slaveof no one语句把redis的端口转换为主模式注意添加该脚本的可执行权限!chmod +x redis_master.sh#!/bin/sh#本机IP地址localip=127.0.0.1#另一台服务器的地址backip=192.168.20.232#redis端口号port="6379 9998 11111 14948"time=$(date '+%Y-%m-%d %H:%M:%S' )#redis部署路径redispath=/home/bbcv/redis#redis-cli部署路径rediscli=$redispath/redis-2.0.0-rc4/redis-cli#日志文件目录logfile=$redispath/logs/redis-state.logfor p in $portdo{echo "$time redis $p端口切换成主端口" >>$logfile$rediscli -h $localip -p $p slaveof no one>>$logfile 2>&1sleep 1}done4.redis_backup.sh该脚本主要实现当keepalived切换到master时,执行slaveof 主redisIP 端口语句,把redis的端口转换为备模式,并同步主redis的数据注意添加该脚本的可执行权限!chmod +x redis_backup.sh#!/bin/sh#本机IP地址localip=127.0.0.1#另一台服务器的地址backip=192.168.20.232#redis端口号port="6379 9998 11111 14948"time=$(date '+%Y-%m-%d %H:%M:%S' )#redis部署路径redispath=/home/bbcv/redis#redis-cli部署路径rediscli=$redispath/redis-2.0.0-rc4/redis-cli#日志文件目录logfile=$redispath/logs/redis-state.logfor p in $portdo{echo "$time redis $p端口切换成$backip的备端口" >>$logfile$rediscli -h $localip -p $p slaveof $backip $p>>$logfile 2>&1sleep 1}done5.安装redis1.新建文件夹,如mkdirredis2.将redis-2.2.13.tar.gz拷入其中3.解压并进入主目录4.make5.make install(Ubuntu上需要sudo执行)6.修改配置文件redis.conf修改如下:daemonize no 改为 daemonize yes取消注释:syslog-enabled no (改为syslog-enabled yes)syslog-facility local0已将修改后的redis.conf文件放入附件,不同需求还需再修改配置文件(如修改端口等)7.在执行redis-server redis.conf启动时,可能会报如下错误:Can't chdir to '/var/db/redis': No such file or directory需要手动创建'/var/db/redis'文件夹# WARNING overcommit_memory is set to 0! Background save may fail under low memory condition需要执行sysctlvm.overcommit_memory=1修改内核参数8.再次执行redis-server redis.conf可成功启动redis6.测试1.查看当前redis是主还是备/home/bbcv/redis/redis-2.0.0-rc4/redis-cli -h 127.0.0.1 -p 6379 info2.在主redisA上新增一条数据,查看备redisB是否同步该数据/home/bbcv/redis/redis-2.0.0-rc4/redis-cli -h 127.0.0.1 -p 63793.停止主redisA,查看虚IP是否切换到备redisB服务器,并查看备redisB服务器是否切换成主状态ip a查看虚IP是否在本机上4.恢复redisA,查看redisA是否从redisB中同步数据。
redis创建实例
redis创建实例
Redis是一个开源的高性能键值对存储系统。
它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等,并且支持一些高级功能,如发布/订阅、事务、Lua脚本等。
在Redis中创建一个实例非常简单。
以下是创建Redis实例的步骤:
1. 下载Redis:可以从Redis官网下载最新版本的Redis。
2. 安装Redis:将下载好的Redis安装包解压缩后,在终端中进入Redis目录,执行make命令即可进行安装。
3. 启动Redis:执行redis-server命令启动Redis。
默认情况下,Redis启动后会监听6379端口。
4. 连接Redis:执行redis-cli命令连接Redis。
连接成功后,可以在终端中使用Redis的命令进行操作。
除了以上步骤,如果需要配置Redis实例,可以编辑Redis的配置文件redis.conf。
该文件包含了Redis的各种配置选项,如端口号、日志文件路径、密码等。
在修改完配置文件后,需要重新启动Redis才能生效。
总之,创建Redis实例非常简单,只需要下载、安装、启动即可。
对于需要进行配置的情况,修改redis.conf文件即可。
- 1 -。
redis操作手册
Redis操作手册1. 介绍Redis是一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息中间件。
它以高性能和简单的设计而闻名,是许多互联网应用的首选解决方案。
本文将详细介绍Redis的操作手册,包括基本命令、数据类型、持久化、集群等方面的内容。
2. 安装和配置2.1 安装Redis要安装Redis,可以通过编译源代码或使用包管理器安装。
下面是在Ubuntu上使用包管理器安装Redis的示例:$ sudo apt-get update$ sudo apt-get install redis-server2.2 配置RedisRedis的配置文件位于redis.conf,可以通过编辑该文件来配置Redis的各种参数。
常见的配置项包括端口号、密码、持久化选项等。
在配置文件中,以#开头的行代表注释,可以用于说明配置项的作用。
配置完成后,需要重启Redis才能使配置生效。
3. 基本命令Redis提供了各种基本的命令,用于管理和操作数据。
以下是一些常用的Redis命令:3.1 字符串操作•SET key value:设置指定键的值。
•GET key:获取指定键的值。
•DEL key:删除指定键及其对应的值。
3.2 列表操作•LPUSH key value:将值插入到列表的头部。
•RPUSH key value:将值插入到列表的尾部。
•LPOP key:移除并返回列表的头部元素。
•RPOP key:移除并返回列表的尾部元素。
3.3 哈希操作•HSET key field value:设置指定键的哈希字段的值。
•HGET key field:获取指定键的哈希字段的值。
•HDEL key field:删除指定键的哈希字段及其值。
3.4 集合操作•SADD key member:将指定成员添加到集合中。
•SMEMBERS key:返回指定集合的所有成员。
•SREM key member:从指定集合中移除指定成员。
redis 集群安装(redis-trib.rb)
redisredis-trib.rb安装集群一、redis安装1.下载地址:$ wget http://download.redis.io/releases/redis-3.2.8.tar.gz 2.解压缩$ tar xzf redis-3.2.8.tar.gz3.编译$ln -s redis-3.2.8 redis建立软链接,有利于未来升级,是一个比较好的做法$ cd redis$ make编译,有的时候会报错a、确保安装gccb、fatal error: jemalloc/jemalloc.h: No such file or directory 解决办法:make MALLOC=libc$make install安装放入到/usr/local/bin$redis-cli -v查看redis版本redis集群一般由多个节点组成,节点数量至少6个才能保证组成完整高可用的集群。
操作系统centos7.2-mini版一、redis安装略二、使用redis-trib.rb 安装工具1、安装rubyyum install ruby -y2、安装rubygemredis依赖wget /downloads/redis-3.3.0.gemgem install -l redis-3.3.0 gemcp /{redishome}/scr/redis-trib.rb /usr/local/bin3、测试redis-trib.rb二、准备节点1、创建文件夹mkdir /redis-cluster-tribcd /redis-cluster-tribmkdir 6379 6380 6381 6382 6383 63842、创建并配置redis.conf分别在6379-6384六个文件夹中创建redis-node.conf文件,并添加配置,配置内容如下redis-6379.conf,每个文件根据对应名修改一下vim redis-6379.confport 6379daemonize yeslogfile "6379.log"dbfilename "dump-6379.rdb"dir "/redis-cluster-trib/6379/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6379.conf"vim redis-6380.confport 6380daemonize yeslogfile "6380.log"dbfilename "dump-6380.rdb"dir "/redis-cluster-trib/6380/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6380.conf"vim redis-6381.confport 6381daemonize yeslogfile "6381.log"dbfilename "dump-6381.rdb"dir "/redis-cluster-trib/6381/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6381.conf"vim redis-6382.confport 6382daemonize yeslogfile "6382.log"dbfilename "dump-6382.rdb"dir "/redis-cluster-trib/6382/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6382.conf"vim redis-6383.confport 6383daemonize yeslogfile "6383.log"dbfilename "dump-6383.rdb"dir "/redis-cluster-trib/6383/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6383.conf"vim redis-6384.confport 6384daemonize yeslogfile "6384.log"dbfilename "dump-6384.rdb"dir "/redis-cluster-trib/6384/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6384.conf"3、启动各个节点redis-server redis-6379.confredis-server redis-6380.confredis-server redis-6381.confredis-server redis-6382.confredis-server redis-6383.confredis-server redis-6384.conf4、检查启动情况cat 6379/6379.logcat 6380/6380.logcat 6381/6381.logcat 6382/6382.logcat 6383/6383.logcat 6384/6384.logps -ef |grep redis四、创建集群1、创建集群redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384replicas 表示为每个主节点设置多少个从节点,如果部署节点使用不同的ip,会尽可能保证主从不在一个节点上2、健康性检查redis-trib.rb check 127.0.0.1:6380四、扩容集群1、添加2个节点mkdir 6385 6386vim redis-6385.confport 6385daemonize yeslogfile "6385.log"dbfilename "dump-6385.rdb"dir "/redis-cluster-trib/6385/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6385.conf"vim redis-6386.confport 6386daemonize yeslogfile "6386.log"dbfilename "dump-6386.rdb"dir "/redis-cluster-trib/6386/"cluster-enabled yescluster-node-timeout 15000cluster-config-file "nodes-6386.conf"2、启动节点redis-server redis-6385.confredis-server redis-6386.conf3、添加入集群redis-trib.rb add-node 127.0.0.1:6385 127.0.0.1:6379redis-trib.rb add-node 127.0.0.1:6386 127.0.0.1:6379注意这里还是显示为主节点,要设置它为从节点要redis-trib.rb add-node 127.0.0.1:6386 127.0.0.1:6379 --slave --master-id<arg> 或者看后面变化(在缩减章节)4、迁移槽redis-trib.rb info127.0.0.1:6379可以看到各个主节点槽情况5、批量迁移redis-trib.rbreshard 127.0.0.1:6379数据迁移之前会打印迁移计划,确认后进行迁移四、收缩集群跟上面一样,将要清空节点移至其他节点上。
keepalived+redis部署手册
一、Redis和Keepalived安装1、以下步骤在121和122上均要进行一遍2、以root用户登录,cd /usr/local2、命令:mkdir ms40 新建ms40目录3、cd ms404、mkdir redis && cd redis && mkdir log && mkdir data然后切回ms40目录5、mkdir keepalived6、上传文件redis-2.6.14.tar.gz至redis目录上传文件keepalived-1.2.7.tar.gz至keepalived目录7、安装redis1)cd redis2)tar zxvf redis-2.6.14.tar.gz3)cd redis-2.6.144)make5)cd src6)cp redis-benchmark redis-cli redis-server /usr/bin/7)切回至ms40目录8、安装keepalived1)cd keepalived2)tar zxvf keepalived-1.2.7.tar.gz3)yum install popt-devel4)yum -y install openssl-devel5)cd keepalived-1.2.76)./configure7)make && make install二、Keepalived配置1、转移keepalived的配置文件1)cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/2)cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/3)mkdir /etc/keepalived4)cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/5)cp /usr/local/sbin/keepalived /usr/sbin/三、Mater配置(10.25.174.121)1、从附件的Master文件夹中获取scripts文件夹和keepalived.conf覆盖至目录/etc/keepalived目录下2、给脚本加上可执行权限:chmod +x /etc/keepalived/scripts/*.sh3、备份/usr/local/ms40/redis/redis-2.6.14目录下的redis.conf文件4、从附件的Master文件夹中获取redis.conf文件覆盖至上述目录中四、Slave配置(10.25.174.122)1、从附件的Slave文件夹中获取scripts文件夹和keepalived.conf覆盖至目录/etc/keepalived目录下2、给脚本加上可执行权限:chmod +x /etc/keepalived/scripts/*.sh3、备份/usr/local/ms40/redis/redis-2.6.14目录下的redis.conf文件4、从附件的Master文件夹中获取redis.conf文件覆盖至上述目录中五、启动1、启动121上的redis1)cd /2)cd /usr/local/ms40/redis/redis-2.6.143)src/redis-server2、启动122上的redis1)cd /2)cd /usr/local/ms40/redis/redis-2.6.143)src/redis-server3、启动121上的keepalived1)cd /2)service keepalived start4、启动122上的keepalived1)cd /2)service keepalived start六、验证1、运行-cmdPing 10.25.174.200 看是否能够ping通2、运行-cmdtelnet 10.25.174.200 6379 是否能通3、使用sshclient连接至121或者122,使用root用户cd /usr/local/ms40/redis/redis-2.6.14src/redis-cli –h 10.25.174.200set name “test”get name看看结果是否为test如果是则del test六、安装Redis过程中涉及的一些问题1、GCC的问题make[2]: cc: Command not foundmake[1]: *** [adlist.o] Error 127make[1]: Leaving directory `/usr/local/redis-2.6.16/src'make: *** [all] Error 2原因:没安装gcc,执行命令安装:yum install gcc-c++2、内存分配器的问题(重视)make[1]: Entering directory `/usr/local/redis-2.6.16/src'CC adlist.oIn file included from adlist.c:34:zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directoryzmalloc.h:55:2: error: #error "Newer version of jemalloc required"make[1]: *** [adlist.o] Error 1make[1]: Leaving directory `/usr/local/redis-2.6.16/src'make: *** [all] Error 2原因:查看redis的源码src/zmalloc.c可以看到如下代码:#if defined(USE_TCMALLOC)#define malloc(size) tc_malloc(size)#define calloc(count,size) tc_calloc(count,size)#define realloc(ptr,size) tc_realloc(ptr,size)#define free(ptr) tc_free(ptr)#elif defined(USE_JEMALLOC)#define malloc(size) je_malloc(size)#define calloc(count,size) je_calloc(count,size)#define realloc(ptr,size) je_realloc(ptr,size)#define free(ptr) je_free(ptr)可以看到源码中首先会判断系统中是否存在tcmalloc内存分配器,如果没有,则使用jemalloc内存分配器,如果连jemalloc分配器也没有找到,就会报错了。
redis-cli 使用方法
redis-cli 使用方法全文共四篇示例,供读者参考第一篇示例:Redis是一个高性能的开源内存数据库,使用键值对的存储结构,支持多种数据类型,包括字符串、列表、集合、有序集合、哈希表等。
redis-cli是Redis提供的命令行工具,可以与Redis服务器进行交互,执行各种命令操作。
本文将详细介绍redis-cli的使用方法,帮助读者快速上手使用redis-cli。
一、安装redis-cli在使用redis-cli之前,需要确保已经安装了Redis服务器,并且redis-cli已经包含在安装包中。
如果没有安装Redis服务器,可以通过源码或包管理工具进行安装,具体安装方法可以参考Redis官方文档。
安装完成后,可以在终端输入redis-cli命令,启动redis-cli。
二、连接Redis服务器通过redis-cli连接Redis服务器,可以使用如下命令:redis-cli -h <hostname> -p <port> -a <password>其中<hostname>指Redis服务器的主机名或IP地址,<port>指Redis服务器的端口号,默认为6379,<password>指Redis服务器的密码,如果没有设置密码则可以省略。
执行以上命令后,将会连接到指定的Redis服务器,并显示如下信息:redis <hostname:port>三、redis-cli命令操作1. 键值对操作(1) SET key value:设置指定键的值(2) GET key:获取指定键的值(3) DEL key:删除指定键值对(4) EXISTS key:判断指定键是否存在(5) KEYS pattern:获取符合指定模式的键列表2. 列表操作(1) LPUSH key value1 [value2 ...]:将一个或多个值插入列表头部(2) RPUSH key value1 [value2 ...]:将一个或多个值插入列表尾部(3) LPOP key:移除并返回列表头部元素(4) RPOP key:移除并返回列表尾部元素(5) LRANGE key start stop:获取列表指定范围的元素3. 集合操作(1) SADD key member1 [member2 ...]:向集合添加一个或多个成员(2) SREM key member1 [member2 ...]:从集合删除一个或多个成员(3) SMEMBERS key:获取集合所有成员(4) SINTER key1 key2:获取两个集合的交集(5) SUNION key1 key2:获取两个集合的并集以上是redis-cli常用命令的介绍,读者可以根据实际需求选择不同的命令进行操作。
安装Redis完整过程
概述首先报告一下我系统的版本:Java代码1.[root@firefish init.d]# cat /etc/issue系统版本信息如下:引用CentOS release 6.4 (Final)Kernel \r on an \m安装Redis希望将Redis安装在此目录下:引用/usr/local/redis参考http://redis.io/download的安装说明,做调整:引用$ mkdir /usr/local/redis$ cd /usr/local/src$ wget /files/redis-2.6.14.tar.gz$ tar xzf redis-2.6.14.tar.gz$ ln -s redis-2.6.14 redis #建立一个链接$ cd redis$ make PREFIX=/usr/local/redis install #安装到指定目录中注意上面的最后一行,我们通过PREFIX指定了安装的目录。
如果make失败,一般是你们系统中还未安装gcc,那么可以通过yum安装之:Java代码1.yum install gcc安装完成后,则执行make.在安装redis成功后,你将可以在/usr/local/redis看到一个bin的目录,里面包括了以下文件:Java代码1.redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server将Redis做成一个服务1.复制脚本到/etc/rc.d/init.d目录按以上步骤安装Redis时,其服务脚本位于:Java代码1./usr/local/src/redis/utils/redis_init_script必须将其复制到/etc/rc.d/init.d的目录下:Java代码1.cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis以下将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis。
Windows下Redis的安装使用教程
Windows下Redis的安装使⽤教程本⽂主要为⼤家介绍缓存技术中的⼀种Redis的安装和使⽤,供⼤家参考,具体内容如下⼀、下载Redis for windows在⽹络中搜索Redis fow windows,就可以下载Redis的压缩包。
解压包。
会发现其中有32位和64位的不同版本的包,根据需要,使⽤对应的压缩包即可。
⼆、解压我使⽤的是redisbin_x64.zip的压缩包,将其解压到redis的⽂件夹中。
解压之后,会发现内容只有⼀些.exe的⽂件。
到这⾥,redis就算做好了⼀半了。
三、配置在redis下新建⼀个conf的⽂件夹,并创建 redis.conf ⽂本⽂件。
将⼀下内容复制到配置⽂件中。
# Redis configuration file example# By default Redis does not run as a daemon. Use 'yes' if you need it.# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.# 是否以后台进程的形式运⾏,默认为nodaemonize no# When run as a daemon, Redis write a pid file in /var/run/redis.pid by default.# You can specify a custom pid file location here.# 如果指定以后台形式执⾏,则需要指定⼀个pid⽂件pidfile /var/run/redis.pid# Accept connections on the specified port, default is 6379#监听端⼝号port 6379# If you want you can bind a single interface, if the bind option is not# specified all the interfaces will listen for connections.# 绑定主机IP# bind 127.0.0.1# Close the connection after a client is idle for N seconds (0 to disable)# 客户端空闲超时时间,设置为0,则没有超时。
redis使用方法
redis使用方法Redis是一款快速、高性能、非关系型的键值数据库,它支持多种数据结构,包括字符串、哈希、列表、集合和有序集合等。
Redis 被广泛应用于缓存、消息队列、排行榜、实时消息处理、计数器等场景。
本文将介绍Redis的使用方法,包括安装、配置、数据类型、命令等方面。
一、安装RedisRedis可以在Linux、Windows、Mac等操作系统上运行,安装Redis 的方式也有多种。
本文将以Ubuntu为例,介绍如何安装Redis。
1. 安装Redis在终端中输入以下命令安装Redis:sudo apt-get updatesudo apt-get install redis-server2. 启动Redis安装完成后,可以使用以下命令启动Redis:redis-server3. 测试RedisRedis启动后,可以使用以下命令测试Redis是否正常工作: redis-cli ping如果返回“PONG”,表示Redis已经启动并正常工作。
二、配置RedisRedis的配置文件位于/etc/redis/redis.conf,可以使用文本编辑器打开并修改配置文件。
以下是一些常用的配置项:1. 绑定IP地址bind 127.0.0.1默认情况下,Redis只能在本地访问,如果需要远程访问Redis,可以将IP地址改为0.0.0.0。
2. 设置密码requirepass yourpassword为了保护Redis的安全,可以设置密码。
设置密码后,需要在连接Redis时输入密码才能进行操作。
3. 设置内存限制maxmemory 100mbRedis默认不限制内存使用,如果需要限制内存使用,可以设置maxmemory参数。
4. 设置持久化方式save 900 1save 300 10save 60 10000Redis支持多种持久化方式,包括RDB和AOF。
RDB是将Redis的数据快照保存到磁盘上,AOF是将Redis的操作日志保存到磁盘上。
redis安装及一主两从三sentinel配置
Redis安装及一主两从三sentinel配置一.安装Redis(1)cd /usr/src进入下载目录(2) yum install -y wgetgcc make tcl安装依赖(3)tar -zxvf redis-3.2.7.tar.gz 解压(4)cd redis-3.2.7 进入redis目录(5)make 编辑(6)make test 测试对编译不理解的同学可以看看这个 /secondjanuary/article/details/8985795测试过程报错[exception]: Executing test client: NOREPLICAS Not enough good slaves to write.. NOREPLICAS Not enough good slaves to write.while executing这种情况下,可以修改当前目录文件tests/integration/replication-2.tcl,将after 1000改为after 10000以延长等待时间重新测试(7)make install PREFIX=/usr/local/redis PREFIX安装指定目录否则安装到/usr/local/bin里面了(8)启动redis服务 ./redis-server ./redis-conf发现很多错误:1.WARNING: The TCP backlog setting of 511 cannot be enforced because/proc/sys/net/core/somaxconn is set to the lower value of 128echo 511 > /proc/sys/net/core/somaxconn写到/etc/rc.local里面 rc.local是开机启动程序是一个软连接(确定两者都有执行权限)lrwxrwxrwx. 1 root root 13 Aug 2 07:50 /etc/rc.local ->rc.d/rc.local2.WARNINGovercommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to/etc/sysctl.conf and then reboot or run the command'sysctlvm.overcommit_memory=1' for this to take effect.往/etc/sysctl.conf中添加vm.overcommit_memory = 1/sbin/sysctl –p使文件立即生效3.WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issuerun the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis mustbe restarted after THP is disabled.echo never > /sys/kernel/mm/transparent_hugepage/enabled写到/etc/rc.local里面在后台运行的话修改配置redis.conf daemonizeyes 就可以了(9)运行./redis-cli二.Redis配置文件说明(/usr/local/redis/bin)1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程daemonizeyes2. 绑定的主机地址修改主机172.16.0.52配置文件去掉bind注释符#,bind设置成主机ipbind172.16.0.52 127.0.0.1修改主机172.16.0.53配置文件去掉bind注释符#,bind设置成主机ipbind172.16.0.53127.0.0.13修改172.16.0.53机器的配置文件,使53变成52从机器slaveof 172.16.0.52 6379 (172.16.0.52机器不需要操作)4. 指定Redis最大内存限制,Redis在启动时会把数据加载到内存中,达到最大内存后,Redis会先尝试清除已到期或即将到期的Key,当此方法处理后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。
泛微OAecology-redis单机部署
单机redis安装操作系统:Centos7 64位(或者RHEL7 64位)Redis:redis-3.2.9.tar.gz安装方式:源码安装部署方式:单机redis需要用root进行部署1、安装redis的系统依赖包(注意:安装前需要配置好操作系统yum源):yum -y install gcc2、关闭防火墙:systemctl disable firewalldsystemctl stop firewalld3、修改最大连接数为65535,在文件/etc/security/limits.conf最后加入下面两行:* soft nofile 65535* hard nofile 65535重新登陆操作系统再次查看连接限制(单个用户同时打开的最大文件个数)# ulimit -a4、将redis-3.2.9.tar.gz文件上传到/usr/local目录下解压redis源码压缩包[root@localhost local]# tar xzf redis-3.2.9.tar.gz4、安装redis[root@localhost local]# cd /usr/local/redis-3.2.9 [root@localhost redis-3.2.9]# make[root@localhost redis-3.2.9]# make install5、修改redis.conf模板配置文件(后续创建的redis都会用模板文件创建新的配置文件)增加以下参数:/usr/local/redis-3.2.9/conf/redis.conf文件最上方(方便编辑查说明参数名默认值修改值注掉原有配置允许访问的ip0.0.0.0允许任何ip访问bind 127.0.0.1 0.0.0.0 是以后台程序运行(守护进程)daemonize no yes 是连接密码requirepass 无123456禁用flushdb,flushall rename-command无rename-command flushall ""rename-command flushdb ""6、到redis下utils目录下使用安装脚本安装服务[root@localhost utils]# cd /usr/local/redis-3.2.9/utils[root@localhost utils]# ./install_server.sh指定一个未使用的端口,之后一路【Enter】。
Linux下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)
Linux下Redis集群安装部署及使⽤详解(在线和离线两种安装+相关错误解决⽅案)⼀、应⽤场景介绍 本⽂主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联⽹的Linux环境和脱机的Linux环境下是如何安装的。
因为⼤多数时候,公司的⽣产环境是在内⽹环境下,⽆外⽹,服务器处于脱机状态(最近公司要上线项⽬,就是⽆外⽹环境的Linux,被离线安装坑惨了,⾛了很多弯路,说多了都是⾎泪史啊%>_<%)。
这也是笔者写本⽂的初衷,希望其他⼈少⾛弯路,下⾯就介绍如何在Linux安装部署Redis集群。
⼆、安装环境及⼯具 系统:Red Hat Enterprise Linux Server release 6.6 ⼯具:XShell5及Xftp5 安装包:GCC-7.1.0 Ruby-2.4.1 Rubygems-2.6.12 Redis-3.2.9(3.x版本才开始⽀持集群功能)三、安装步骤 要搭建⼀个最简单的Redis集群,我们⾄少需要6个节点:3个Master和3个Slave。
那为什么需要3个Master呢?其实就是⼀个“铁三⾓”的关系,当1个Master下线的时候,其他2个Master 和对应的Salve⽴马就能顶替上去,确保集群能够正常使⽤,如果你之前了解Mongodb/Hadoop/Strom这些的话,你就很容易⽬标⼀般分布式的最低要求基数个数节点,这样便于选举(少数服从多数的原则)。
本⽂当中,我们就偷下懒,在⼀台Linux虚拟机上搭建6个节点的Redis集群(实际真正⽣产环境,需要3台Linux服务器分布存放3个Master)1、安装GCC环境安装Redis需要依托GCC环境,先检查Linux是否已经安装了GCC,如果没有安装,则需要进⾏安装检查GCC是否安装,可以看看版本号$ gcc -v如果已经安装了GCC,则会显⽰以下信息如果没有任何信息,则我们可以通过命令yum install gcc-c++进⾏在线安装$ yum install gcc-c++如果没有⽹络的时候,我们就需要下载GCC的安装包进⾏⼿动安装了,具体⽅法还是⽐较复杂的,具体离线安装GCC的⽅法,请参考我的另外⼀篇⽂章《》2、安装Ruby和Rubygems如果有⽹的话,则通过yum命令进⾏安装,⾃动将关联的依赖包全部安装$ yum install ruby$ yum install rubygems如果是离线的状态,我们则可以选择下载Ruby和Rubygems,解压⼿动进⾏安装,具体的⽅法请参考我的另外两篇⽂件《》和《》,这⾥我们不做多讲解。
在docker中部署并启动redis的方法
在docker中部署并启动redis的⽅法docker部署redis⾸先在linux中安装上Docker,然后启动Docker服务Centos7中启动Dockersystemctl start docker //启动dockersystemctl stop docker //停⽌dockersystemctl restart docker //重启docker查找想要拉取的镜像1. 直接在Linux中使⽤docker search 镜像名称搜索镜像docker search 镜像名称2. 在DockerHub官⽹上查找使⽤docker pull 镜像名称拉取镜像docker pull redis //不指定版本号,默认拉取最新。
docker pull redis:6.0.8拉取完镜像后,使⽤docker images查看已经拉取的镜像docker imagesdocker rmi 镜像ID //删除镜像在运⾏之前对redis进⾏⼀些配置redis.conf的配置⽂件可以在 http://download.redis.io/redis-stable/redis.conf 上下载使⽤ mkdir /usr/local/docker 在宿主机上创建存放docker⽬录vi /usr/local/docker/redis.conf 在docker中创建redis的配置⽂件redis.conf将下载好的redis.conf⽂件替换或将内容复制到⾃⼰创建的配置⽂件中然后修改配置bind 127.0.0.1 //127.0.0.1 限制只能本机访问将其改为0.0.0.0protected-mode no # 默认yes,开启保护模式,限制为本地访问daemonize no 默认no,改为yes意为以守护进程⽅式启动,yes会使配置⽂件⽅式启动redis失败(⼀开启就退出)运⾏指定镜像1. $ docker run -itd --name redis-test -p 6379:6379 redis2. $ docker run -itd -p 192.168.220.129:6379:6379 --name redis -v /usr/local/docker/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/data:/data redis redis-server /etc/redis/redis.conf -d 以守护线程的⽅式运⾏(后台运⾏)-i 以交互模式运⾏容器-t 为容器重新分配⼀个伪输⼊终端-p 映射容器服务的 6379 端⼝到宿主机的 6379 端⼝。
基于Redis6.2.6版本部署Redis
基于Redis6.2.6版本部署Redis Cluster 集群的问题⽬录1.Redis6.2.6简介以及环境规划2.⼆进制安装Redis 程序2.1.⼆进制安装redis6.2.62.2.创建Reids Cluster 集群⽬录3.配置Redis Cluster 三主三从交叉复制集群3.1.准备六个节点的redis 配置⽂件3.2.将六个节点全部启动3.3.配置集群节点之间相互发现3.4.为集群中的充当Master 的节点分配槽位3.5.配置三主三从交叉复制模式4.快速搭建Redis Cluster 集群1.Redis6.2.6简介以及环境规划在Redis6.x 版本中主要增加了多线程的新特性,多线性对于⾼并发场景是⾮常有必要的。
多线程IO 重新设计了客户端缓存功能RESP3协议⽀持SSLACL 权限控制提升了RDB ⽇志加载速度发布官⽅的Redis 集群代理模块 Redis Cluster proxyRedis Cluster 集群原理可以查看之前发布的⽂章。
IP 主机名端⼝号节点192.168.20.10redis-cluster 6701master192.168.20.10redis-cluster 6702slave—>6705的master192.168.20.10redis-cluster 6703master192.168.20.10redis-cluster 6704slave—>6701的master192.168.20.10redis-cluster 6705master192.168.20.10redis-cluster 6706slave—>6703的master Reids 集群采⽤三主三从交叉复制架构,由于服务器数量有限,在⼀台机器中模拟出集群的效果,在实际⽣产环境中,需要准备三台机器,每台机器中分别部署两台Redis 节点,⼀主⼀从,交叉备份。
Redis缓存多机房部署策略
Redis缓存多机房部署策略Redis是一种开源的内存数据存储系统,被广泛用于缓存、消息传递、实时分析等应用场景。
在多机房环境下,如何合理地部署Redis缓存,成为了一个重要的问题。
本文将探讨Redis缓存多机房部署的策略。
在多机房环境下,为了保证用户访问速度和服务的高可用性,需要将Redis缓存部署在各个机房分布式节点上。
常见的部署策略有以下几种:1. 主从复制策略主从复制是Redis的默认配置,适用于小规模的多机房部署。
该策略将一个Redis实例配置为主节点,其他实例配置为从节点。
主节点负责接收写请求并同步到从节点,从节点则用于读请求的负载均衡。
通过设置适当数量的从节点,可以提高读取的吞吐量和服务的可用性。
2. 哨兵模式策略哨兵模式是Redis提供的一种高可用解决方案。
该策略在主从复制的基础上,引入了哨兵节点。
哨兵节点通过监控主节点的状态,当主节点故障时,自动将一个从节点升级为新的主节点,并通知其他从节点更新配置。
这样可以实现自动故障转移,保证服务的高可用性。
在多机房环境下,可以在每个机房都配置一组主从节点和哨兵节点,来实现跨机房的故障转移。
3. 集群模式策略Redis的集群模式是一种分布式解决方案,适用于大规模的多机房部署。
集群模式将多个Redis实例组成一个分布式集群,每个实例负责管理一部分数据。
客户端使用Hash槽对数据进行分片,将数据分散存储在不同的实例上。
这样可以提高整个系统的读写吞吐量和扩展性。
在多机房环境下,可以将不同机房的实例组成多个分布式子集群,通过跨机房的网络来访问和操作数据。
除了以上策略外,还可以结合使用代理、负载均衡和分布式锁等技术,来进一步提高多机房的Redis部署效果。
例如,可以在每个机房设置一个代理节点,用于将请求路由到对应机房的Redis实例。
同时,可以使用负载均衡策略来均衡各个机房之间的请求流量,避免某个机房负载过高或过低。
在并发访问较高的情况下,可以使用分布式锁来保证对数据的互斥访问,避免并发冲突和数据不一致的问题。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 Redis安装部署
1.1 安装目录
可以是任何目录,本文选定的是/usr/local/redis
mkdir /usr/local/redis
cd /usr/local/redis
1.2 下载及安装
cd /usr/local/redis
wget http://download.redis.io/releases/redis-2.8.19.tar.gz
tar -zxvf redis-2.8.19.tar.gz
cd redis-2.8.19
make
make test(可能会报下列错误)
解决方法:
wget /tcl/tcl8.6.0-src.tar.gz
cd tcl8.6.0/
cd unix &&
./configure --prefix=/usr \
--mandir=/usr/share/man \
--without-tzdata \
$([ $(uname -m) = x86_64 ] && echo --enable-64bit) && make &&
sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" \
-e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" \
-i tclConfig.sh
make install &&
make install-private-headers &&
ln -v -sf tclsh8.6 /usr/bin/tclsh &&
chmod -v 755 /usr/lib/libtcl8.6.so
cd /usr/local/redis/redis-2.8.19
make test(如果出现下面界面,说明没有报错)
make install
会在/usr/local/bin/目录下生成下列文件
redis-server:Redis服务器的daemon启动程序
redis-cli:Redis命令行操作工具。
当然,你也可以用telnet根据其纯文本协议来操作redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况
现在就可以启动redis了,redis只有一个启动参数,就是他的配置文件路径。
cp /usr/local/redis/redis-2.8.19/redis.conf /etc/redis.conf
1.3 启动服务
cd /usr/local/bin
./redis-server /etc/redis.conf
2Redis集群部署(主从复制)2.1安装环境
准备四台Linux服务器,分别安装好Redis. master 192.168.1.110
slave1 192.168.1.111
slave2 192.168.1.112
slave3 192.168.1.113
vi /etc/hosts
注释掉之前的,把自己的IP及hostname加上
vi /etc/sysconfig/network
关闭防火墙
(1)立即生效,重启后失效
/etc/rc.d/init.d/iptables stop
(2)永久关闭(重启后生效)
chkconfig iptables off
2.2 配置Redis
1、在master服务中配置文件修改
port 9000
2、在slave1(192.168.1.111)服务中配置文件修改(以192.168.1.110作为slave1 的master)
port 9001
slaveof 192.168.1.110 9000
3、在slave2(192.168.1.112)服务中配置文件修改(以192.168.1.110作为slave2 的master)
port 9002
slaveof 192.168.1.110 9000
4、在slave3(192.168.1.113)服务中配置文件修改(以192.168.1.112作为slave3 的master)
port 9003
slaveof 192.168.1.112 9002
2.3 启动服务
1、首先启动master
2、然后启动slave1,可以发现slave1上
会发送一个SYNC请求,从Master上面进行相应,而且它支持自动重连,即当master
掉线的情况下,它会处于等待请求的状态。
Slave上会显示
而Master上:
能够接受Slave的应答,并且开始持久化操作,说明在Slave每次去连接Master的时候,都会去持久化磁盘。
3、其他slave启动同上
2.4 测试。