阿里云收件服务器地址Redis单机安装以及集群搭建

网易蜂巢云服务器 笔者在工作中也有接触到非关系型数据库Redis,主要用于缓存。但是也仅限于使用方面,底层没具体了解过,刚好有朋友正在研究这个,我也就再深入研究一波。···

网易蜂巢云服务器

笔者在工作中也有接触到非关系型数据库Redis,主要用于缓存。但是也仅限于使用方面,底层没具体了解过,刚好有朋友正在研究这个,我也就再深入研究一波。

今天主要来看一下Redis的安装以及集群搭建(我也是第一次搭建)。

环境:CentOS 7.1,redis-5.0.7

一、单机安装

1、将Redis安装包放置服务器并解压

2、进入redis安装目录(笔者的是/usr/soft/redis-5.0.7)执行make && make install命令,安装完成后出现下图的场景,则说明安装成功

3、在redis安装目录创建两个文件夹etc(用于存放redis.conf),bin(存放相应的命令脚本)

将redis.conf移到etc目录中,将src下的mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-check-rdb、redis-cli、redis-server移到bin目录中

mv redis.conf etc/ 进入src目录下 mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server ../bin/

3、配置redis.conf(常用配置项)

注释掉这一行,否则其它机器不可以访问当前redis,也可以改成其他ip bind 127.0.0.1 将protected-mode后面的yes改成no,也是为了让其他ip访问当前 redis protected-mode no 将daemonize后面的no改成yes,这个是为了让redis后台运行。  daemonize yes 日志文件所在目录logfile /usr/soft/redis-5.0.7/logs/redis.log 可配置密码,也可不配,例如123456是我设置的密码  如果配置了密码,在用redis-cli连接的时候需要用【auth ‘密码’】命令才用使用 requirepass 123456

4、将redis安装目录加入环境变量

vim ~/.bashrc(也可以是/etc/profile)

保存之后执行source ~/.bashrc(如果是/etc/profile文件,则是source /etc/profile)

5、启动redis

/usr/soft/redis-5.0.7/etc/redis.conf是配置文件 redis-server /usr/soft/redis-5.0.7/etc/redis.conf

6、客户端连接

(推荐一个可视化连接工具RedisDesktopManager)

用redis-cli创建一个key、value键值对

云服务器ip访问网站

7、关闭redis

也可以直接通过kill -9杀掉进程 redis-cli shutdown

二、集群安装

云服务器销售合同

Redis集群是去中心化的,并没有主从节点之分。集群中要求节点数量必须是,所以至少要有三个节点,并且每个节点至少有一备份节点,所以至少需要6个redis服务实例。

我这边有三个服务器,每个服务器上启两个redis,一个active节点,一个standby节点

三台服务器,每台服务器redis端口号为7001,7002 192.169.197.100 192.169.197.110 192.169.197.120

1、在redis目录下创建redis_cluster目录,在redis_cluster目录下创建7001,7002两个节点目录,将redis.conf(基于单机安装,配置项跟之前的一样)复制到7001,7002两个目录中。

2、分别修改7001,7002目录下的redis.conf配置文件

7001目录下的redis.conf port 7001 端口 pidfile /var/run/redis_7001.pid 进程文件 cluster-enabled yes 开启集群功能 cluster-config-file nodes-7001.conf 集群配置文件,集群启动后生成 appendonly yes  开启日志 7002目录下的redis.conf port 7002 端口 pidfile /var/run/redis_7002.pid 进程文件 cluster-enabled yes 开启集群功能 cluster-config-file nodes-7002.conf 集群配置文件,集群启动后生成 appendonly yes  开启日志

3、将redis_cluster用scp命令分发到另外两台服务器

4、依次启动6个redis实例,(下面以脚本统一启动)

!/bin/bash echo 开始启动redis-cluster redisnodes=(cnode-1 cnode-2 cnode-3) ports=(7001 7002) for ip in ${redisnodes[@]}; do        for port in ${ports[@]};        do                  echo "start redis $ip:$port"            ssh $ip redis-server /usr/soft/redis-5.0.7/redis_cluster/$port/redis.conf           done done echo 启动redis-cluster结束

脚本执行结果:

5、创建集群命令,一共六个节点

如果没设置密码,需要把【-a 123456】去掉 redis-cli -a 123456 --cluster create 192.168.197.100:7001 192.168.197.110:7001 192.168.197.120:7001 192.168.197.100:7002 192.168.197.110:7002 192.168.197.120:7002 --cluster-replicas 1

执行之后会发现slots的分布

6、验证集群

[-c]参数是为了启动集群模式,缺少此参数会在设值的时候直接报错 redis-cli -c -h 192.168.197.100 -p 7001 -a 123456

7、关闭集群

可以一个一个关闭,但这边使用脚本统一关闭

!/bin/bash 所有服务器节点的hostname allnodes=(cnode-1 cnode-2 cnode-3) 端口号开始 PORT=7001 结束端口号 ENDPORT=7003 密码,如果redis没配置密码可省略 PASSWROD=123456 while [ $((PORT < ENDPORT)) != "0" ];  do         for ip in ${allnodes[@]};         do                 判断某个端口是否已被占用,如果是,则执行关闭命令                 count=`ssh $ip lsof -i:$PORT | wc -l`                 if [ $count -gt 0 ];                 then                         echo "Stopping Redis $ip:$PORT"                         ssh $ip redis-cli -p $PORT -a $PASSWROD shutdown 2>/dev/null                 else                         echo "no redis $ip:$PORT"                 fi         done     PORT=$((PORT+1))doneexit 0

脚本执行结果:

上述就是Redis单机版安装和集群部署的全部步骤。

=======================================================

我是Liusy,一个喜欢健身的程序员。

欢迎关注公众号【Liusy01】,一起交流Java技术及健身,获取更多干货。

阿里云服务器修改端口

您好:云优数据云计算 www.yunyoushuju.cn 2核2G6M最低19.9元/月 欢迎开机

发表评论

评论列表
未查询到任何数据!