redisクラスタの構築上の注意事項

3951 ワード

redisクラスタの構築上の注意事項
構成する必要がある項目は、次のリストを参照してください.
#   redis         IP      ,       ,         
bind 192.16.1.174

#        ,    。
protected-mode yes

#redis      。
port 7000

#      TCP        
tcp-backlog 511

#              timeout,        , 0            ,    0。
timeout 0

#  TCP        ,"  "   server   。   0.    
tcp-keepalive 300

#   redis            ,         ,         yes
daemonize yes

    upstart systemd  Redis    
supervised no

# redis       
pidfile /var/run/redis_7000.pid


#     ,log     4  ,debug,verbose,notice,  warning。         notice
loglevel notice

#       
logfile /var/log/redis/redis_7000.log

#         ,    SELECT         。         0  。  16  
databases 16

#          
dir /usr/local/cluster/7000

#  master              ,                   。
 "yes"   ,slave            ,            ; "no"   ,
    server         (       server slave)     "error"
slave-serve-stale-data yes

#    slave ,     ,     
slave-read-only yes

    socket      
repl-diskless-sync no

diskless       ,     0。      ,        slave          rdb  。
          ,    slave   
repl-diskless-sync-delay 5



      tcp   tcp nodelay[gs1] [gs2]   
repl-disable-tcp-nodelay no

 master   ,Sentinel   slave        master。       slave,  master。
    0,       。
slave-priority 100


  redis    rdb     
appendonly no

sof   
appendfilename "appendonly_7000.aof"

#aof        
appendfsync everysec
# appendfsync no


 aof      rdb     ,     IO,
    everysec always aof    ,  fsync         ,
no-appendfsync-on-rewrite          no。
no-appendfsync-on-rewrite no


aof      。
auto-aof-rewrite-percentage 100
 #         aof    
auto-aof-rewrite-min-size 64mb

#aof            , redis     ,aof          。
aof-load-truncated yes

#        
  cluster-enabled yes

  redis            。
  cluster-config-file ./nodes-7000.conf

          
 cluster-node-timeout 3000




“     ”  
slowlog-log-slower-than 10000

     ”       ,
slowlog-max-len 128

    ,                 ,       ,   0。
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

#intset            ,      ,intset      hashtable
set-max-intset-entries 512

#zset     , 2     :ziplist,skiplist。
  "  "         , zset      ,      skiplist。
zset-max-ziplist-entries 128
zset-max-ziplist-value 64


hll-sparse-max-bytes 3000

#           rehash  ,      ,   。rehash         K-V     
activerehashing yes

#buffer      :normal ->     ;slave-> slave     ;pubsub ->pub/sub    ,
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60

#Redis server         ,   10
hz 10
#   child   AOF     ,  aof-rewrite-incremental-fsync  yes  ,
          32M       ,              ,         。
aof-rewrite-incremental-fsync yes



  • はクラスタredisを配置する.confファイルを開くときはデータの持続化を開かないでください.以下の項目は
  • を注釈する必要があります.
    
        Redis           : 
     900         1   key     ,    
     300         10   key     ,    
     60         10000   key     ,   
     #save 900 1
     #save 300 10
     #save 60 10000
     
               ,         .
     #stop-writes-on-bgsave-error yes
     
            ,    。
     #rdbcompression yes
     
                CRC64  ,      .
     #rdbchecksum yes
     
               。
     #dbfilename dump_7002.rdb
     
    
    

    redisクラスタの再起動とノードの作成
  • クラスタのすべてのプロセスコマンドを殺す:
  •    pkill  -9  redis  
    
  • redisクラスタを再起動してredisに入る.confファイルディレクトリでコマンドを実行する:redis-serverファイルパスとredisを見つける.confファイルパス
  • /usr/local/redis-cluster/bin/redis-server /usr/local/redis-cluster/9001/redis.conf
    
  • redisクラスタノードを作成してredis-tribを見つける.rbの正しいパスは、次の参照コマンドを実行します:
  • /usr/local/redis-3.2.10/src/redis-trib.rb create --replicas 1 192.16.1.173:7000 192.16.1.173:7001 192.16.1.173:7002 192.16.1.174:7000 192.16.1.174:7001 192.16.1.174:7002