25.redis集羣搭建筆記

###Redis集羣###
0.準備
軟件:
redis-3.0.0.gem
redis-3.0.0.tar.gz#源碼
 
1.安裝ruby環境
redis基於ruby槽位計算,hash算法技術,key是用hash存在的,key分佈在數組的槽位內(16384個槽位),下標從0到2^N,而且採用鏈表解決衝突。
yum install -y ruby
yum install -y rubygems
2.安裝ruby和redis的接口程序
cp redis-3.0.0.gem /usr/local/
gem install redis-3.0.0.gem
2.安裝到opt下面
cd /opt/
mkdir redis-cluster
cd /home
tar -zxvf redis-3.0.0.tar.gz -C /opt/redis-cluster
建立6個目錄7001--7006,redis集羣最低6臺機器,搭建僞集羣須要建立6個redis實例,以端口區分;redis集羣要求最低3個主節點,因此3個master,3個slave一共最少6個redis實例.
mkdir 7001 7002 7003 7004 7005 7006
 
修改配置文件夾redis.conf
pidfile /opt/redis-cluster/7001/redis.pid[是否是非必須須要測]
port 7001[同一臺機器僞集羣必須改]
daemonize yes
cluster-enabled yes[必須]
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
bind 192.168.10.100[每一個redis改爲本身的ip]
 
cp redis.conf ../7001
cp redis.conf ../7002
cp redis.conf ../7003
cp redis.conf ../7004
cp redis.conf ../7005
cp redis.conf ../7006
 
修改端口號:
cd ../
vim 7001/redis.conf
vim 7002/redis.conf
vim 7003/redis.conf
vim 7004/redis.conf
vim 7005/redis.conf
vim 7006/redis.conf
 
#編譯源碼
cd /opt/redis-cluster/redis-3.0.0
make && make install
 
複製生成的可執行文件
cd src
cp redis-server/opt/redis-cluster/7001#redis服務端
cp redis-server/opt/redis-cluster/7002
cp redis-server/opt/redis-cluster/7003
cp redis-server/opt/redis-cluster/7004
cp redis-server/opt/redis-cluster/7005
cp redis-server/opt/redis-cluster/7006
 
cp redis-cli /opt/redis-cluster#控制檯客戶端工具
cp redis-trib.rb/opt/redis-cluster#初始化集羣可執行文件
 
#3.啓動集羣
先啓動6臺redis實例
進入7001 7002 7003 7004 7005 7006
分別執行
./redis-server ./redis.conf
ps -ef | grep redis
6個redis啓動成功
 
初始化集羣,把6臺機器歸入集羣
cd /opt/redis-cluster
./redis-trib.rb create --replicas 1 192.168.10.100:7001 192.168.10.100:7002 192.168.10.100:7003 192.168.10.100:7004 192.168.10.100:7005  192.168.10.100:7006
到此redis集羣搭建啓動成功.
 
#鏈接redis任意一臺
./redis-cli -c -p 7001 -h ip
#查看集羣信息
>cluster info
>cluster nodes
#殺死全部redis進程
kill -9 $(ps -ef|grep -E 'redis'|grep -v grep|awk '{print $2}')
有關配置文件參數說明:參考分類筆記-->NoSQL-->Redis-->Redis配置文件參數說明
 
集羣動態擴展:
客戶端鏈接redis:
./redis-cli -p 7001 -h ip
cluster info
quit
 
添加節點:
主節點
./redis-trib.rb add-node  192.168.10.100:7001  192.168.10.100 :7007 一次添加一臺機器
從節點
./redis-trib.rb add-node --slave --master-id
[OK] New node added correctly.
刪除主節點
./redis-trib.rb del-node 192.168.10.100:7001 192.168.10.100:  7007
 
cluster nodes查看集羣節點信息
./redis-cli -c -p 7001
 
分配槽位:
./redis-trib.rb reshard 192.168.10.100:7001
500
8ebe5fe6f79a343319201066c962f55327f1037a
all
./redis-cli -c -p 7001
cluster nodes
看到:ted 0-165 5461-5627 10923-11088分配成功
 
添加從節點:
./redis-trib.rb add-node --slave --master-id 8ebe5fe6f79a343319201066c962f55327f1037a 192.168.10.100:7007 192.168.10.100:7008
 
 
 
 
 



相關文章
相關標籤/搜索