美文网首页
redis集群部署

redis集群部署

作者: hangjun | 来源:发表于2021-09-20 22:25 被阅读0次

    Redis的安装部署手册

    单机部署:

    1.安装gcc

    yum install gcc-c++

    yum install ruby

    2.上传tar包到/src目录

    3. 解压

    tar -zxvf redis-3.2.8.tar.gz

    4.进入redis-3.2.8

    cd redis-3.2.8/

    5.编译

    make

    6.安装

    make PREFIX=/usr/local/redis install

    redis-server的路径在/usr/local/redis/bin/下

    或者

    make install

    redis-server默认安装的路径就是/usr/local/bin/

    7.把redis配置文件拷贝到安装目录

    cp redis.conf /usr/local/redis

    8.启动(这里使用的路径是:PREFIX=/usr/local/redis)

    cd /usr/local/redis

    ./bin/redis-server

    后端启动

    1.修改配置文件

    cd /usr/local/redis

    vim redis.conf

    找到daemonize no将其改为yes

    2.启动

    ./bin/redis-server ./redis.conf

    3.查看redis程序状态

    ps -ef | grep -i redis

    4.关闭redis

    ./bin/redis-cli shutdown

    出现以下问题:

    WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommi

    t_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

    解决方案:

    echo vm.overcommit_memory=1 >> /etc/sysctl.conf

    sysctl vm.overcommit_memory=1

    出现以下问题:

    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 issue run 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 must be restarted after THP is disabled.

    解决方案:

    echo never > /sys/kernel/mm/transparent_hugepage/enabled

    vi /etc/rc.d/rc.local 或者vi /etc/rc.local

    if test -f /sys/kernel/mm/transparent_hugepage/enabled; then

    echo never > /sys/kernel/mm/transparent_hugepage/enabled

    fi

    if test -f /sys/kernel/mm/transparent_hugepage/defrag; then

    echo never > /sys/kernel/mm/transparent_hugepage/defrag

    fi

    chmod +x /etc/rc.d/rc.local

    重启

    出现以下问题:

    WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128

    .

    解决方案

    vi /etc/sysctl.conf

    net.core.somaxconn= 1024

    wq

    sysctl -p

    测试

    ./bin/redis-cli

    [root@localhost redis]# ./bin/redis-cli

    //检查网络是否可以

    127.0.0.1:6379> ping

    PONG

    //设置一个键值对

    127.0.0.1:6379> set name cheny

    OK

    //获取刚刚设置的键值对

    127.0.0.1:6379> get name

    "cheny"

    redis后台启动

    vi /usr/local/redis/redis.conf

    daexxx=yes

    wq

    ./bin/redis-server ./redis.conf (没有-c参数)

    开启6379端口

    CentOS 7 采用了 firewalld 防火墙

    firewall-cmd --query-port=6379/tcp

    no

    firewall-cmd --add-port=6379/tcp

    yes

    firewall-cmd --permanent --add-service=http

    firewall-cmd --permanent --add-port=6379/tcp

    firewall-cmd --reload

    集群搭建(三组六从)

    1.建立集群目录

    cd /usr/local/src/redis-3.2.8

    mkdir cluster

    2.建立7000目录

    cd cluster

    mkdir 7000

    3.复制redis.conf文件到7000下

    cd /usr/local/src/redis-3.2.8

    cp redis.conf cluster/7000

    4.修改7000下的redis.conf

    cd /usr/local/src/redis-3.2.8/cluster/7000

    vim redis.conf

    4.1关闭aof文件模式使用rdb模式

    [图片上传失败...(image-2cad6a-1632147565460)]

    4.2.注释bind 127.0.0.1,取消ip绑定

    [图片上传失败...(image-1b5096-1632147565460)]

    4.3.关闭保护模式

    [图片上传失败...(image-3ea4e0-1632147565460)]

    4.4.修改端口号

    [图片上传失败...(image-24d699-1632147565460)]

    4.5.开启后台启动

    [图片上传失败...(image-449fe7-1632147565460)]

    4.6.修改pidfile

    [图片上传失败...(image-d65b5e-1632147565460)]

    4.7修改dir文件

    [图片上传失败...(image-39b45f-1632147565460)]

    4.8修改内存策略

    [图片上传失败...(image-8ab5e7-1632147565460)]

    4.9开启集群配置

    [图片上传失败...(image-74c563-1632147565460)]

    4.10.开启集群的配置

    [图片上传失败...(image-26dbd1-1632147565460)]

    4.11.修改集群的推选时间 [图片上传失败...(image-96b4e6-1632147565459)]

    5.同样的方式7001,7002,7003,7004,7005,7006,7007,7008

    5.1.复制所有文件

    cd /usr/local/src/redis-3.2.8/cluster

    cp -r 7000 7001

    cp -r 7000 7002

    cp -r 7000 7003

    cp -r 7000 7004

    cp -r 7000 7005

    cp -r 7000 7006

    cp -r 7000 7007

    cp -r 7000 7008

    5.2.修改7001

    vim 7001/redis.conf

    :%s/7000/7001/g

    单击回车

    :wq

    5.3.修改7002,7003,7004,7005,7006,7007,7008

    同5.2

    6.集群脚本

    cd /usr/local/src/redis-3.2.8/cluster

    vim startAll.sh

    !/bin/sh

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7000/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7001/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7002/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7003/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7004/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7005/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7006/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7007/redis.conf &

    /usr/local/redis/bin/redis-server /usr/local/src/redis-3.2.8/cluster/7008/redis.conf &

    wq

    7.安装ruby(ruby的version于2.2.2)

    7.1. 安装RVM

    命令1:

    gpg --keyserver hkp://pgp.mit.edu --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

    命令2:

    curl -sSL https://get.rvm.io | bash -s stable

    命令3:

    find / -name rvm -print

    命令4:(加载文件)

    source /usr/local/rvm/scripts/rvm

    7.2.查看rvm库中已知的ruby版本

    rvm list known

    7.3.安装一个ruby版本

    rvm install 2.4

    7.4.使用一个ruby版本

    rvm use 2.4.10

    7.5.设置默认版本

    rvm use 2.4.10 --default

    7.6.卸载一个已知版本(不需要做)

    rvm remove 2.4.10

    7.7.查看ruby版本

    ruby --version

    7.8.安装gem

    gem install redis

    参考:https://cloud.tencent.com/developer/article/1409323

    8.通过ruby创建集群

    cd /usr/local/src/redis-3.2.8/src

    ./redis-trib.rb create --replicas 2 192.168.47.133:7000 192.168.47.133:7001 192.168.47.133:7002 192.168.47.133:7003 192.168.47.133:7004 192.168.47.133:7005 192.168.47.133:7006 192.168.47.133:7007 192.168.47.133:7008

    显示安装成功

    测试

    cd /usr/local/src/redis-3.2.8/src

    ./redis-cli -p 7000 –c

    set aa aa

    set qq qq

    9. redis集群在创建的时候不能配置密码认证,因此在集群创建完成之后可以配置密码认证:

    redis-cli -p 7000
    config set requirepass 123456
    auth 123456
    config rewrite

    参考资料:https://blog.csdn.net/u011330018/article/details/106114205

    https://www.cnblogs.com/wxzhe/p/10751449.html

    https://www.cnblogs.com/shengdimaya/p/6800423.html

    TODO redis6的版本如何集群搭建?

    相关文章

      网友评论

          本文标题:redis集群部署

          本文链接:https://www.haomeiwen.com/subject/iobvgltx.html