Redis单节点安装主从复制java连接redis和Redis集群安装

Posted 星辰安安

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis单节点安装主从复制java连接redis和Redis集群安装相关的知识,希望对你有一定的参考价值。

Redis单节点安装

配置阿里云yum源
	下载配置文件
		wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
	生成缓存
		yum makecache

安装redis
1、安装依赖
	yum install -y gcc-c++ gcc tcl

2、上传压缩包并解压
	tar -xvf redis-3.0.0.tar.gz
3、编译
	cd redis-3.0.0/src
	make #编译源文件
	创建安装目录
	mkdir -p /usr/local/soft/redis
	安装
	cd /redis-3.0.0
	make PREFIX=/usr/local/soft/redis install

4、复制配置文件
	cp /usr/local/soft/redis-3.0.0/redis.conf /usr/local/soft/redis/bin/

	配置环境变量
	vim /etc/profile
	增加
	export REDIS_HOME=/usr/local/soft/redis/
	在PATH后面增加  $REDIS_HOME/bin


	使环境变量生效
	source /etc/profile


5、启动redis
	后台启动
	cd /usr/local/soft/redis/bin
	nohup redis-server redis.conf &

	关闭redis
	ps -aux | grep redis
	kill -9 

6、连接redis
 redis-cli 

 插入一条数据
 set  key1 value1
 
 查询数据
 get key1

主从复制

1、将redis文件复制到其它节点
cd /usr/local/soft
scp -r redis node1:`pwd`

2、在node1中启动从服务器
cd  /usr/local/soft/redis/bin

./redis-server --port 6380 --slaveof master 6379


主改成从
SLAVEOF  master 6379

从改成主 -- 数据不会删除
SLAVEOF NO ONE 



指定redis 密码


临时设置
redis 127.0.0.1:6379>    config set requirepass test123

永久设置
vim redis.conf
requirepass 123456


带密码连接redis

redis-cli -a 123456

java连接redis

在pom文件中配置


		<dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>3.0.0</version>
		</dependency>

Redis集群安装

1、创建安装目录 在master ,node1 ,node2中分别创建
	mkdir /usr/local/soft/redis-cluster

2、将redis 复制到redis-cluster 目录下修改名字为7000
	cp -r /usr/local/soft/redis  /usr/local/soft/redis-cluster

	mv  /usr/local/soft/redis-cluster/redis /usr/local/soft/redis-cluster/7000

	删除缓存文件
	rm -rf appendonly.aof
	rm -rf dump.rdb



3、修改配置文件 vim redis.conf
	daemonize    yes                          //redis后台运行
	pidfile  /var/run/redis_7000.pid        //pidfile文件对应7000
	port  7000                                  //端口7000
	cluster-enabled  yes  (可使用/查找)                  //开启集群   把注释#去掉
	cluster-config-file  nodes.conf      //集群的配置  配置文件首次启动自动生成
	cluster-node-timeout   5000       //请求超时  设置5秒够了
	appendonly  yes                  //aof日志开启   有需要就开启,它会每次写操作都记录一条日志  (全持久化)


4、复制7000
	cp -r 7000 7001
	cp -r 7000 7002
	cp -r 7000 7003
	cp -r 7000 7004
	cp -r 7000 7005

5、修改每一个里面的配置
	vim 7001/bin/redis.conf
	把7000改成对应的端口号
	pidfile /var/run/redis_7001.pid
	port 7001

6、在7002 ,7003 复制到node1
	scp -r /usr/local/soft/redis-cluster/7002 node1:/usr/local/soft/redis-cluster/
	scp -r /usr/local/soft/redis-cluster/7003 node1:/usr/local/soft/redis-cluster/

7、在7004 ,7005 复制到node2
	scp -r /usr/local/soft/redis-cluster/7004 node2:/usr/local/soft/redis-cluster/
	scp -r /usr/local/soft/redis-cluster/7005 node2:/usr/local/soft/redis-cluster/
    将master中的7002,7003,7004,7005删除

8、启动redis  
	1、在master中执行
	cd /usr/local/soft/redis-cluster/7000/bin
	./redis-server redis.conf
	cd /usr/local/soft/redis-cluster/7001/bin
	./redis-server redis.conf

	2、在node1中执行
	cd /usr/local/soft/redis-cluster/7002/bin
	./redis-server redis.conf
	cd /usr/local/soft/redis-cluster/7003/bin
	./redis-server redis.conf

	3、在node2中执行
	cd /usr/local/soft/redis-cluster/7004/bin
	./redis-server redis.conf
	cd /usr/local/soft/redis-cluster/7005/bin
	./redis-server redis.conf

8、通过工具构建集群  在master中安装
	安装工具
		yum -y install ruby ruby-devel rubygems rpm-build
	上传redis-3.0.0.gem  
		gem install -l redis-3.0.0.gem  

	放在/usr/local/bin/  目录下的命令可以在任何一个位置运行
	cp /usr/local/soft/redis-3.0.0/src/redis-trib.rb /usr/local/bin/redis-trib 



9、启动集群   第一次使用   都免集群重启不需要使用

#  replicas  每一个主节点的备份节点数量
redis-trib create --replicas 1 192.168.129.101:7000 192.168.129.101:7001 192.168.129.102:7002 192.168.129.102:7003 192.168.129.103:7004 192.168.129.103:7005
#192.168.129.101  master的IP地址
#192.168.129.102  node1的IP地址
#192.168.129.103  node2的IP地址

注意:执行失败时删除所有的appendonly.aof、dump.rdb、nodes.conf文件,再重启所有的Redis服务,最后再启动集群。

10、客户端访问reids集群
# -p  端口号   -h  节点ip  -c  自动重定向
redis-cli -p 7000 -h master -c



查看集群信息
cluster info

查看节点信息
cluster nodes


集群模式不区分读写请求  如果想要在从节点进行查询需要在查询之前执行readonly

以上是关于Redis单节点安装主从复制java连接redis和Redis集群安装的主要内容,如果未能解决你的问题,请参考以下文章

搭建redis集群/主从/单节点

redis高可用之主从复制,哨兵,集群

docker搭建redis主从复制

redis的主从复制

缓存加速------Redis主从复制,哨兵模式,集群

缓存加速------Redis主从复制,哨兵模式,集群