linux下安装redis集群(Master-Slave)

本文演示了redis在同一台linux上的安装及运行多个实例,并演示了主从复制,以及如何进行主从的切换。

1. 下载

$ wget http://download.redis.io/releases/redis-3.0.7.tar.gz

2. 解压缩

$ tar xzf redis-3.0.7.tar.gz

3. 编译

$ cd redis-3.0.7

$ make

$make install

$cp redis.conf /etc/ #该步骤将配置文件放入etc方便管理

特别说明:

make install命令执行完成后,会在/usr/local/bin目录下生成可执行文件,比如redis-server、redis-cli等等,这样就可以在任何目录下执行redis命令了。

4.启动redis:

redis-server

5.下面我们来配置redis单主机多实例:

我们首先拷贝一份配置文件:

[[email protected]]# cp /etc/redis.conf /etc/redis-6380.conf

然后修改之

# 是否后台运行
daemonize yes

# 指定进程号
pidfile /var/run/redis_6380.pid

# 指定端口
port 6380

使用这个配置启动redis

[[email protected] redis-3.0.7]# redis-server /etc/redis-6380.conf

启动成功没有提示,因为已经设置了后台运行,所以可以通过ps命名查看,或者直接用redis-cli连接上去。比如:

[[email protected] redis-3.0.7]# redis-cli -p 6380
127.0.0.1:6380> keys *
(empty list or set)
127.0.0.1:6380>

分别测试一下6379和6380的redis服务,看是否都正常工作,且互不干扰。

[[email protected] redis-3.0.7]# redis-cli -p 6379
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set k1 0
OK
127.0.0.1:6379> INCR k1
(integer) 1
127.0.0.1:6379> INCR k1
(integer) 2
127.0.0.1:6379> INCR k1
(integer) 3
127.0.0.1:6379> exit
[[email protected] redis-3.0.7]# redis-cli -p 6380
127.0.0.1:6380> keys *
(empty list or set)
127.0.0.1:6380> 

6.配置master-slave关系

首先编辑master的配置文件

#配置合适的时间
tcp-keepalive 60
#下面行保证是注释的
#bind 127.0.0.1
#最好加上密码,如果你想不被攻击的话
requirepass your_redis_master_password
#打开追加的备份
appendonly yes
appendfilename redis-nice.aof

保存之后,重启

redis-server  /etc/redis.conf

客户端这时连接之后,执行任何命令都会报错,需要使用auth yourpassword,进行授权。

127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.

接下来,配置slave : vim /etc/redis-6380.conf

#指向master的地址
slaveof your_redis_master_ip 6379
#master的密码
masterauth your_redis_master_password

一样保存之后重启redis-server /etc/redis-6380.conf。

7.校验主从复制

我们在master的redis里随便set一些东西,看看slave是否自动有这些值,就可以知道它们是否复制成功了。

[[email protected] redis-3.0.7]# redis-cli
127.0.0.1:6379> keys *
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth Yourpassword
OK
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set ma 21
OK
127.0.0.1:6379> keys *
1) "ma"
127.0.0.1:6379> exit
[[email protected] redis-3.0.7]# redis-cli -p 6380
127.0.0.1:6380> keys *
1) "ma"
127.0.0.1:6380> 

成功!使用info命令可以查看更多信息。

8.切换slave到master

我们做主从结构的目的就是为了应对如果master挂了,可以切换到slave上。

这里演示手动切换:(目前生产环境都是使用脚本完成)

a,将slave的行为关闭,命令如下

127.0.0.1:6380> SLAVEOF NO ONE

这时它就不是slave了,而是独立的master。

b,将其他slave都指向这个新的master(我这里没有其他slave,就不演示了),命令如下

127.0.0.1:6380> SLAVEOF hostname port

这时候所有的slave都会丢弃没复制完的东西,开始到新的master那复制。

9.恢复到原始master

SLAVEOF your_redis_master_ip 6379

经过问题的排查,master的问题解决了,我们可以将它恢复使用。

时间: 2024-07-28 13:34:39

linux下安装redis集群(Master-Slave)的相关文章

windows下安装redis集群

前几天在自己在本机win10 电脑下部署了redis集群. 主要通过的是网上两个博客: 如何在windows下部署redis集群:https://blog.csdn.net/zsg88/article/details/73715947 redis的一些操作:https://blog.csdn.net/mlc1218559742/article/details/52640180 原文地址:https://www.cnblogs.com/tuanz/p/9359037.html

Linux离线安装redis集群

一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,联网环境安装较为简单,这里只说脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网,服务器处于脱机状态. 二.安装环境及工具 系统:CentOS7 工具:XShell5及Xftp5 安装包: Ruby-2.4.2 Rubygems-2.6.14 Redis-4.0.2(3.x版本才开始支持集群功能) openssl-1.1.0f 三.安装步骤 要搭建一个最简单的Redis集群,我们至少

Linux下配置Redis集群模式

配置机器1 在演示中,172.16.179.130为当前ubuntu机器的ip 在172.16.179.130上进?Desktop?录,创建conf?录 在conf?录下创建?件7000.conf,编辑内容如下 port 7000 bind 172.16.179.130 daemonize yes pidfile 7000.pid cluster-enabled yes cluster-config-file 7000_node.conf cluster-node-timeout 15000 a

Linux下安装zookeeper集群

首先,准备三台Linux虚拟机 三台机器 centos01 :192.168.1.168(lxs001)   centos03 :192.168.1.178(lxs003)   centos03 :192.168.1.188(lxs003)  三台机器 下载 zookeeper: 进入 opt 目录 下载 zookeeper:wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz 解压zookee

linux下安装rabbitmq 集群

1.下载erlang官网地址 http://www.erlang.org/download 挑选合适的版本 然后 wget 比如目前18.3运行命令 wget http://erlang.org/download/otp_src_18.3.tar.gz 2.使用yum安装下必须的配件: yum install gcc glibc-devel make ncurses-devel openssl-devel autoconf -yyum install unixODBC unixODBC-deve

docker下安装redis集群

docker-compose.yml master: image: redis:4 container_name: redis-cluster_master command: redis-server --port 6379 ports: - "6379" net: "host" slave_1: image: redis:4 container_name: redis-cluster_slave_1 command: redis-server --port 638

linux下安装redis 3.2.1

#tar zxvf redis-3.2.1.tar.gz #cd redis-3.2.1 #make MALLOC=libc #cd redis-3.2.1/src #make test #make install 安装完成后,会有6个redis-*文件从./redis-3.2.1/src/redis-*自动被拷贝到/usr/local/bin/下面 #cp ./redis-3.2.1/redis.conf /etc/redis.conf #拷贝配置文件到/etc并修改配置 bind 127.0

Linux 下安装 Redis 服务器

本文简单介绍了 Linux 下安装 Redis 服务器的步骤,同时简要介绍服务器的配置.启动以及状态检测.另外还介绍了 32 位 CentOS 下安装 Redis 时遇到的一些问题的解决.        一. 查看 Linux 相关信息        版本查看cat /etc/issueCentOS release 5.5 (Final)        位数查看getconf LONG_BIT32        二. 安装 tcl        先装好 tcl,不然 redis 的 make t

安装redis 集群

安装redis集群 第一步:安装相关依赖包 1):安装redis-cluster依赖:redis-cluster的依赖库在使用时有兼容问题,在reshard时会遇到各种错误,请按指定版本安装. (1)确保系统安装zlib,否则geminstall会报(no such file to load -- zlib)     #download:zlib-1.2.6.tar       ./configure      make  make install   或者 yum install zlib (