zoukankan      html  css  js  c++  java
  • redis 5.0.5集群部署

    环境:
    192.168.71.201
    192.168.71.202
    192.168.71.203
    
    集群规划:
    192.168.71.201:7000   192.168.71.202:7000   192.168.71.203:7000  
    192.168.71.202:7001   192.168.71.203:7001   192.168.71.201:7001
    192.168.71.203:7002   192.168.71.201:7002   192.168.71.202:7002
    
    手动安装:
    三个节点统一执行:
    1. 下载并解压
    cd /root/software
    wget http://download.redis.io/releases/redis-5.0.5.tar.gz
    tar -zxvf redis-5.0.5.tar.gz 
    2. 编译安装
    cd redis-5.0.5
    make && make install
    3. 修改必要的环境参数:
    echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
    echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled
    
    加入开机启动项:
    vi /etc/rc.local
    echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
    echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled
    
    4.修改内核参数:
    vi /etc/sysctl.conf
    vm.overcommit_memory = 1
    net.core.somaxconn= 1024
    vm.max_map_count=655360
    
    5.修改连接数:
    ulimit -n 655350
    
    6、创建redis用户:
    useradd -d /data/redis -m redis
    
    7、在redis用户根目录创建redis_cluster:
    su - redis
    mkdir redis_cluster
    mkdir logs
    
    8、在 redis_cluster 目录下,创建名为7000、7001的目录,并将 redis.conf 拷贝到这二个目录中
    提前准备好 redis 配置文件:(redis.conf)
    
    bind 0.0.0.0
    protected-mode yes
    port 7000
    tcp-backlog 511
    timeout 0
    tcp-keepalive 300
    daemonize no
    supervised no
    pidfile /data/redis/redis_7000.pid
    loglevel notice
    logfile "/data/redis/logs/redis-7000.log"
    databases 16
    save 900 1
    save 300 10
    save 60 10000
    stop-writes-on-bgsave-error yes
    rdbcompression yes
    rdbchecksum yes
    dbfilename dump-7000.rdb
    dir ./
    slave-serve-stale-data yes
    slave-read-only yes
    repl-diskless-sync no
    repl-diskless-sync-delay 5
    repl-disable-tcp-nodelay no
    slave-priority 100
    maxmemory 17179869184
    appendonly yes
    appendfilename "appendonly-7000.aof"
    appendfsync everysec
    no-appendfsync-on-rewrite no
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb
    aof-load-truncated yes
    lua-time-limit 5000
    cluster-enabled yes
    cluster-config-file nodes-7000.conf
    cluster-node-timeout 15000
    slowlog-log-slower-than 10000
    slowlog-max-len 128
    latency-monitor-threshold 0
    notify-keyspace-events ""
    hash-max-ziplist-entries 512
    hash-max-ziplist-value 64
    list-max-ziplist-size -2
    list-compress-depth 0
    set-max-intset-entries 512
    zset-max-ziplist-entries 128
    zset-max-ziplist-value 64
    hll-sparse-max-bytes 3000
    activerehashing yes
    client-output-buffer-limit normal 0 0 0
    client-output-buffer-limit slave 256mb 64mb 60
    client-output-buffer-limit pubsub 32mb 8mb 60
    hz 10
    aof-rewrite-incremental-fsync yes
    
    修改端口并把配置文件复制至 7001 和 7002 目录下:
    mkdir 7000 7001 7002
    cp redis.conf redis_cluster/7000
    cp redis.conf redis_cluster/7001
    cp redis.conf redis_cluster/7002
    
    9、启动各节点,包括7000、7001、7002
    cat  /data/redis/redis_cluster/7000/start.sh 
    redis-server ./redis.conf &
    启动:
    bash start.sh
    
    10.创建集群:
    su - redis
    redis-cli --cluster create    172.21.1.1:7000  172.21.1.2:7000 172.21.1.3:7000
    
    cd  /data/redis/redis_cluster/7000 &&  cat nodes-7000.conf   |grep master
    
    添加从节点:
    redis-cli --cluster add-node --cluster-slave --cluster-master-id  d3dfc8f2d84f06a8597e6ab999d40800361787fe 192.168.71.202:7001 192.168.71.202:7000 (最后一个参数可以写不是自己的ip)
    redis-cli --cluster add-node --cluster-slave --cluster-master-id  d3dfc8f2d84f06a8597e6ab999d40800361787fe 192.168.71.203:7002 192.168.71.202:7000 
    
    redis-cli --cluster add-node --cluster-slave --cluster-master-id  728995059965e0e4e1e7a6d23f7426764bdff96f 192.168.71.203:7001 192.168.71.203:7000
    redis-cli --cluster add-node --cluster-slave --cluster-master-id  728995059965e0e4e1e7a6d23f7426764bdff96f 192.168.71.201:7002 192.168.71.203:7000
    
    redis-cli --cluster add-node --cluster-slave --cluster-master-id dd894273aa6b33723e489575897602f094dbe1c8 192.168.71.201:7001 192.168.71.202:7000
    redis-cli --cluster add-node --cluster-slave --cluster-master-id dd894273aa6b33723e489575897602f094dbe1c8 192.168.71.202:7002 192.168.71.202:7000
    
    登陆测试:
    $ redis-cli  -h 192.168.71.201  -p 7000
    192.168.71.201:7000> CLUSTER INFO
    cluster_state:ok
    cluster_slots_assigned:16384
    cluster_slots_ok:16384
    cluster_slots_pfail:0
    cluster_slots_fail:0
    cluster_known_nodes:9
    cluster_size:3
    cluster_current_epoch:3
    cluster_my_epoch:1
    cluster_stats_messages_ping_sent:4637
    cluster_stats_messages_pong_sent:4580
    cluster_stats_messages_sent:9217
    cluster_stats_messages_ping_received:4571
    cluster_stats_messages_pong_received:4637
    cluster_stats_messages_meet_received:9
    cluster_stats_messages_received:9217
    
    192.168.71.201:7000> CLUSTER NODES
    e8a8958162462082766c1ea496a26c80342c372d 192.168.71.203:7002@17002 slave d3dfc8f2d84f06a8597e6ab999d40800361787fe 0 1605258166612 1 connected
    d3dfc8f2d84f06a8597e6ab999d40800361787fe 192.168.71.201:7000@17000 myself,master - 0 1605258166000 1 connected 0-5460
    20bc6280f2e69ca06d05f2543b05fd4798592b80 192.168.71.201:7002@17002 slave 728995059965e0e4e1e7a6d23f7426764bdff96f 0 1605258163000 2 connected
    dd894273aa6b33723e489575897602f094dbe1c8 192.168.71.203:7000@17000 master - 0 1605258168117 3 connected 10923-16383
    905c8a1c5d1ed7bf90e0537713dd3eb23cabee44 192.168.71.201:7001@17001 slave dd894273aa6b33723e489575897602f094dbe1c8 0 1605258166000 3 connected
    17cb167b022c7c617c142f5b92bf928398304a39 192.168.71.202:7001@17001 slave d3dfc8f2d84f06a8597e6ab999d40800361787fe 0 1605258166000 1 connected
    728995059965e0e4e1e7a6d23f7426764bdff96f 192.168.71.202:7000@17000 master - 0 1605258168617 2 connected 5461-10922
    20954f8ef17ffbfe76528e13b26ef10e094d8b6c 192.168.71.202:7002@17002 slave dd894273aa6b33723e489575897602f094dbe1c8 0 1605258167616 3 connected
    025bb42319a42ac3e153aa9dfaeb75fa8bb55126 192.168.71.203:7001@17001 slave 728995059965e0e4e1e7a6d23f7426764bdff96f 0 1605258164604 2 connected
    

      

  • 相关阅读:
    技术省钱野路子!轻松节省90%云端开销
    免费服务器迁移上云实践分享!一键迁云,自动同步
    云上自建数据库,秒级备份,看这篇就对了!
    最佳实践 | 弹性计算Region化部署和跨可用区容灾
    云服务器无法远程连接?4步排查,准能解决!
    阿里云弹性计算安全组最佳实践及新特性介绍
    AI云原生浅谈:好未来AI中台实践
    最佳实践 | 基于弹性计算网络能力提升容器密度
    AI性能最高提升20倍 阿里云新一代GPU云服务器亮相 搭载NVIDIA A100
    【转】【用户状态】详细解读Oracle用户ACCOUNT_STATUS的九种状态
  • 原文地址:https://www.cnblogs.com/lixinliang/p/13970288.html
Copyright © 2011-2022 走看看