1、安装gcc tcl
yum install gcc tcl -y
2、上传redis的tar包 版本号2.8
3、解压
tar -zxf redis-2.8.18.tar.gz
4、进到redis目录执行编译:make
5、安装:make install PREFIX=/opt/redis
6、配置REDIS_HOME
![082cf87e0508fc81890507fec28c76ac.png](https://img-blog.csdnimg.cn/img_convert/082cf87e0508fc81890507fec28c76ac.png)
export REDIS_HOME=/opt/redis
export PATH=$PATH:$REDIS_HOME/bin
vim /etc/profile.d/redis.sh
. /etc/profile
![a70f7d568a9fc3c923df8730bb28afb5.png](https://img-blog.csdnimg.cn/img_convert/a70f7d568a9fc3c923df8730bb28afb5.png)
7、进入/root/redis-2.8.18/utils
./install_server.sh
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis/6379.log
Data dir : /var/lib/redis/6379
Executable : /opt/redis/bin/redis-server
Cli Executable : /opt/redis/bin/redis-cli
![eb12e3f1e73194773329e46479c56b81.png](https://img-blog.csdnimg.cn/img_convert/eb12e3f1e73194773329e46479c56b81.png)
chkconfig
chkconfig redis_6379 off
service redis_6379 status|start|stop|restart
![579321dfa1d6c1412626fc1941442408.png](https://img-blog.csdnimg.cn/img_convert/579321dfa1d6c1412626fc1941442408.png)
![5ab6bcd3640f0400ee12f5933bacaaa2.png](https://img-blog.csdnimg.cn/img_convert/5ab6bcd3640f0400ee12f5933bacaaa2.png)
开启客户端连接redis服务器:
redis-cli --raw 正常显示中文
![71aab2043fba4963d4a208562a460205.png](https://img-blog.csdnimg.cn/img_convert/71aab2043fba4963d4a208562a460205.png)
ping
echo "hello world"
指定主机名 指定端口号
redis-cli -h localhost -p 7000
![5766bec6995694b545092c052f35af69.png](https://img-blog.csdnimg.cn/img_convert/5766bec6995694b545092c052f35af69.png)
关闭redis shutdown
启动前台模式:
redis-cli -p 6379
![3b1e1ff3de8ed59facb6f1a418bde16c.png](https://img-blog.csdnimg.cn/img_convert/3b1e1ff3de8ed59facb6f1a418bde16c.png)
启动从节点
redis-server --port 7000 --slaveof 127.0.0.1 6379
![d455b77ec8f7dd3c414cc91d5fd35f33.png](https://img-blog.csdnimg.cn/img_convert/d455b77ec8f7dd3c414cc91d5fd35f33.png)
进程7000显示内容
![a397dcdc123886e5c853330cab4a9413.png](https://img-blog.csdnimg.cn/img_convert/a397dcdc123886e5c853330cab4a9413.png)
进程6379显示内容
![7872f8f5a4a2db0e4fe93495f9dd6a48.png](https://img-blog.csdnimg.cn/img_convert/7872f8f5a4a2db0e4fe93495f9dd6a48.png)
这时候主从节点就会获得数据的同步共享,但这个时候会产生单点故障的问题,假如6379发生宕机,那么整个集群就不能使用了。
![15634e70d053daae6ab22f526c88d0b5.png](https://img-blog.csdnimg.cn/img_convert/15634e70d053daae6ab22f526c88d0b5.png)
添加redis配置文件信息
vim /opt/redis/redis.conf
#本服务器是6379的从节点
slaveof 127.0.0.1 6379
#本服务器使用6380端口
port 7000
![60305aa55711c0229837c7846aca374e.png](https://img-blog.csdnimg.cn/img_convert/60305aa55711c0229837c7846aca374e.png)
在node001中启动redis redis-server
![42322f7cbba5ebbfa1e8e635c4634516.png](https://img-blog.csdnimg.cn/img_convert/42322f7cbba5ebbfa1e8e635c4634516.png)
再次打开一台node001虚拟机,
在/opt/redis 下让服务器加载redis.conf配置文件信息
redis-server redis.conf
![5d9429465a088fb32389a48a07d74888.png](https://img-blog.csdnimg.cn/img_convert/5d9429465a088fb32389a48a07d74888.png)
Sentinel
哨兵模式:
将根目录,redis解压包中src目录下产生redis-sentinel程序文件复制到$REDIS_HOME/bin
在redis目录下创建sentinel1.conf,sentinel2.conf
sentinel1.conf
# 哨兵监控集群s1,主节点位于6379,如果有2个哨兵发现该节点下线,则进行故障切换
sentinel monitor s1 127.0.0.1 6379 2
#哨兵的端口
port 26379
sentinel2.conf
# 哨兵监控集群s1,主节点位于6379,如果有2个哨兵发现该节点下线,则进行故障切换
sentinel monitor s1 127.0.0.1 6379 2
#哨兵的端口
port 26380
![8569eaf95f4e3a03bad888a3c95a2c5f.png](https://img-blog.csdnimg.cn/img_convert/8569eaf95f4e3a03bad888a3c95a2c5f.png)
cp redis.conf redis6379.conf
cp redis.conf redis6380.conf
cp redis.conf redis6381.conf
redis6379.conf
#本服务器使用6379端口
port 6379
redis6380.conf
#本服务器是6379的从节点
slaveof 127.0.0.1 6379
#本服务器使用6380端口
port 6380
redis6381.conf
#本服务器是6379的从节点
slaveof 127.0.0.1 6379
#本服务器使用6381端口
port 6381
启动三台redis
redis-server redis6379.conf
redis-server redis6380.conf
redis-server redis6381.conf
![16f5ca8254aa9c222e8da4f4f86e1435.png](https://img-blog.csdnimg.cn/img_convert/16f5ca8254aa9c222e8da4f4f86e1435.png)
启动哨兵
redis-sentinel sentinel1.conf
redis-sentinel sentinel2.conf
![f888d959ad3edce0fac6448fbefde6e1.png](https://img-blog.csdnimg.cn/img_convert/f888d959ad3edce0fac6448fbefde6e1.png)
随意关闭主节点,看切换的信息(实现了自动切换)
![e3bf5fcd6a98d127083d4204bc2d6a6f.png](https://img-blog.csdnimg.cn/img_convert/e3bf5fcd6a98d127083d4204bc2d6a6f.png)