redis-cluster集群搭建
生活随笔
收集整理的這篇文章主要介紹了
redis-cluster集群搭建
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
redis cluster集群搭建
1、環境說明
系統版本:CentOS Linux release 7.2.1511 (Core)
Redis 版本:3.2.5
Ruby 版本:2.4.4
數據目錄:/data/redis/{6379,6380,6381}/
安裝位置:/data/software/
日志目錄:/data/logs/redis/{6379,6380,6381}/
端口:1.247: 6379 6380 6381 :1.248: 6379 6380 6381
2、創建 redis 數據目錄,日志目錄
mkdir -p /data/redis/{6379,6380,6381} mkdir -p /data/logs/redis/{6379,6380,6381}3、安裝 ruby 及 redis 模塊
3.1 安裝 rvm:
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable source /usr/local/rvm/bin/ruby-rvm-env source /etc/profile.d/rvm.sh備注:第一步如因網絡問題導致失敗,可多嘗試幾次
參考:http://rvm.io/
3.2 安裝ruby
查看 rvm 庫中已知的 ruby 版本,安裝一個較新 ruby 版本:
rvm list known rvm install 2.43.3安裝 redis 模塊:
gem install redis4. 安裝Redis
4.1 下載redis
cd /data/software/ wget http://download.redis.io/releases/redis-3.2.5.tar.gz4.2 解壓安裝redis
tar xf redis-3.2.5.tar.gz cd redis-3.2.5 make && make install cd utils/ +./install_server.sh Welcome to the redis service installer This script will help you easily set up a running redis server ....... Starting Redis server... Installation successful!備注:執行install_server.sh腳本后,一路回車即可,或者根據需要修改相關配置,腳本執行完畢后會自動啟動實例,此時先停止實例,繼續修改配置文件。
關閉redisl
5.修改配置文件,并啟動多實例
5.1 修改redis-cluster配置參數
bind 192.168.1.247 appendonly yes cluster-enabled yes cluster-config-file /data/tools/redis/conf/6379-node.conf cluster-node-timeout 15000 cluster-slave-validity-factor 10 master cluster-migration-barrier 1 cluster-require-full-coverage no5.2 創建多實例
修改配置文件和啟動文件中的端口即可。其他配置一樣,注意數據目錄和配置目錄要創建好
以下為2啟動程序和配置文件的示例,修改端口即可。
6379啟動程序
6379配置文件
bind 192.168.1.248 protected-mode yes port 6379 tcp-backlog 511 timeout 0 tcp-keepalive 300 daemonize yes supervised no pidfile /var/run/redis.pid loglevel notice logfile "/data/logs/redis/6379/redis.log" databases 16 save "" stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir /data/redis/6379 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 4gb appendonly yes appendfilename "appendonly.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 /data/tools/redis/conf/6379/6379-node.conf cluster-node-timeout 5000 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 yes5.3 啟動redis,2臺機器分別執行
/etc/init.d/redis_6379 start /etc/init.d/redis_6380 start /etc/init.d/redis_6381 start6、啟動redis-cluster
6.1 初始化redis-cluster
redis-trib.rb create --replicas 1 192.168.1.247:6379 192.168.1.247:6380 192.168.1.247:6381 192.168.1.248:6379 192.168.1.248:6380 192.168.1.248:63816.2 基本測試,命令行進入cluster 需要 加上-c參數,由于bind了IP,因此此處要-h 指定ip
redis-cli -c -h 192.168.1.247 192.168.1.247:6379> cluster info cluster_state:ok cluster_slots_assigned:16384 cluster_slots_ok:16384 cluster_slots_pfail:0 cluster_slots_fail:0 cluster_known_nodes:6 cluster_size:3 cluster_current_epoch:6 cluster_my_epoch:1 cluster_stats_messages_sent:57818 cluster_stats_messages_received:57818 192.168.1.247:6379>從上可以看出,節點狀態是ok,有6個節點。此命令也可用于監控redis-cluster的集群狀態。
監控腳本
轉載于:https://www.cnblogs.com/cangyuefeng/p/10339106.html
總結
以上是生活随笔為你收集整理的redis-cluster集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: StackExchange.Redis学
- 下一篇: redis雪崩解决方案