中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis3.0集群安裝部署

發布時間:2020-06-22 10:37:23 來源:網絡 閱讀:501 作者:aaron428 欄目:數據庫

wget http://download.redis.io/releases/redis-3.0.0.tar.gz && tar zxvf redis-3.0.0.tar.gz && cd redis-3.0.0 && make PREFIX=/usr/local/redis MALLOC=libc install


mkdir -p /usr/local/redis/run

mkdir -p /usr/local/redis/logs

mkdir -p /usr/local/redis/rdb

mkdir -p /usr/local/redis/etc

mkdir -p /usr/local/redis/nodes


1、###redis集群配置文件,根據實例端口區分


#Redis默認不是以守護進程的方式運行,可以通過該配置項修改,使用yes啟用守護進程

daemonize yes

#當 Redis 以守護進程的方式運行的時候,Redis 默認會把 pid 文件放在/var/run/redis.pid,當運行多個 redis 服務時,需要指定不同的 pid 文件和端口

pidfile /usr/local/redis/run/redis_6381.pid

#配置redis端口

port 6381

tcp-backlog 511

#客戶端連接的超時時間,單位為秒,超時后會關閉連接

timeout 300

tcp-keepalive 0

#日志記錄等級,4個可選值debug、verbose、notice、warning

loglevel notice

#配置 log 文件地址,默認打印在命令行終端的窗口上,也可設為/dev/null屏蔽日志

logfile "/usr/local/redis/logs/6381.log"

#設置數據庫的個數,可以使用 SELECT 命令來切換數據庫

databases 16

#設置 Redis 進行數據庫鏡像的頻率。保存數據到disk的策略 900秒之內有1個keys發生變化時

save 900 1

#設置 Redis 進行數據庫鏡像的頻率。保存數據到disk的策略 30秒之內有10個keys發生變化時

save 300 10 

#設置 Redis 進行數據庫鏡像的頻率。保存數據到disk的策略 60秒之內有10000個keys發生變化時

save 60 10000 

stop-writes-on-bgsave-error yes 

#在進行鏡像備份時,是否進行壓縮

rdbcompression yes 

rdbchecksum yes

#鏡像備份文件的文件名

dbfilename dump6381.rdb 

#數據庫鏡像備份的文件放置的路徑,默認值為 ./

dir /usr/local/redis/rdb 

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

#限制同時連接的客戶數量,當連接數超過這個值時,redis 將不再接收其他連接請求,客戶端嘗試連接時將收到 error 信息

maxclients 10000 

#最大可使用內存。如果超過,Redis會試圖刪除EXPIRE集合中的keys

maxmemory 1G 

#volatile-lru使用LRU算法來刪除過期的set,allkeys-lru刪除任何遵循LRU算法的key,volatile-ttl刪除最近即將過期的key,volatile-random ->隨機地刪除過期set中的key

maxmemory-policy volatile-ttl 

#對于處理redis內存來說,LRU和minor TTL算法不是精確的,而是近似的(估計的)算法。所以我們會檢查某些樣本#來達到內存檢查的目的。默認的樣本數是3,你可以修改它。

maxmemory-samples 3 


#默認情況下,Redis會異步的把數據保存到硬盤。如果你的應用場景允許因為系統崩潰等極端情況而導致最新數據丟失#的話,那這種做法已經很ok了。否則你應該打開‘append only’模式,開啟這種模式后,Redis會在#appendonly.aof文件中添加每一個寫操作,這個文件會在Redis啟動時被讀取來在內存中重新構建數據集。

appendonly no

appendfilename "appendonly6381.aof"

#no:不fsync,只是通知OS可以flush數據了具體是否flush取決于OS性能更好; always: 每次寫入append only 日志文件后都會fsync性能差,但很安全;everysec: 沒間隔1秒進行一次fsync折中.

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 /usr/local/redis/nodes/6381.conf

cluster-node-timeout 5000

slowlog-log-slower-than 10000

slowlog-max-len 1024

latency-monitor-threshold 0

notify-keyspace-events ""

hash-max-ziplist-entries 512

hash-max-ziplist-value 64

list-max-ziplist-entries 512

list-max-ziplist-value 64

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


2、啟動redis實例

/usr/local/redis/bin/redis-server /usr/local/redis/etc/6380.conf &


3、復制redis-trib.rb

cp /root/redis-3.0.0/src/redis-trib.rb /usr/local/redis/bin


4、啟動集群

/usr/local/redis/bin/redis-trib.rb create 10.144.8.86:7000 10.144.8.86:7001 10.144.8.86:7002

如果是6個實例,create 后加參數--replicas 1會產生3個主節點,3個slave節點



執行上面的命令的時候會報錯,因為是執行的ruby的腳本,需要ruby的環境

錯誤內容:/usr/bin/env: ruby: No such file or directory

所以需要安裝ruby的環境,這里推薦使用yum install ruby安裝

yum install ruby

 

然后再執行第6步的創建集群命令,還會報錯,提示缺少rubygems組件,使用yum安裝

 

錯誤內容:

./redis-trib.rb:24:in `require': no such file to load -- rubygems (LoadError)

from ./redis-trib.rb:24

yum install rubygems

6.3再次執行第6步的命令,還會報錯,提示不能加載redis,是因為缺少redis和ruby的接口,使用gem 安裝

錯誤內容:

/usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- redis (LoadError)

from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'

from ./redis-trib.rb:25



使用gem 安裝 :gem install redis


5、通過redis-trib.rb工具的check子命令來查看集群信息

/usr/local/redis/bin/redis-trib.rb check 127.0.0.1:6379


6、通過redis客戶端實現對Redis Cluster的讀寫。當前,redis客戶端同樣實現了對集群的支持,但使用方法略有不同,即在啟動的時候需要添加一個-c參數。

/usr/local/redis/bin/redis-cli -c -h 127.0.0.1 -p 6379




http://blog.csdn.net/xu470438000/article/details/42972123

http://blog.csdn.net/myrainblues/article/details/25881535

Redis集群添加節點

1:首先把需要添加的節點啟動


2:執行以下命令,將這個新節點添加到集群中

cd /usr/local/redis3.0/src/

./redis-trib.rb add-node 127.0.0.1:7006 127.0.0.1:7000


3:執行命令redis-cli -c -p 7000 cluster nodes,查看剛才新增的節點


4:增加了新的節點之后,這個新的節點可以成為主節點或者是從節點

4.1 把這個節點變成主節點,使用redis-trib程序,將集群中的某些哈希槽移動到新節點里面, 這個新節點就成為真正的主節點了。

執行下面的命令對集群中的哈希槽進行移動

cd /usr/local/redis3.0/src

./redis-trib.rb reshard 127.0.0.1:7000

系統會提示我們要移動多少哈希槽,這里移動1000個

然后還需要指定把這些哈希槽轉移到哪個節點上,

輸入我們剛才新增的節點的ID

f32dc088c881a6b930474fc5b52832ba2ff71899

然后需要我們指定轉移哪幾個幾點的哈希槽

輸入all 表示從所有的主節點中隨機轉移,湊夠1000個哈希槽

然后再輸入yes,redis集群就開始分配哈希槽了。

至此,一個新的主節點就添加完成了,執行命令查看現在的集群中節點的狀態

redis-cli -c -p 7000 cluster nodes

4.2:把這個節點變成從節點

前面我們已經把這個新節點添加到集群中了,現在我們要讓新節點成為127.0.0.1:7001的從節點,只需要執行下面的命令就可以了,命令后面的節點ID就是127.0.0.1:7001的節點ID

redis-cli -c -p 7006 cluster replicate 0b00721a509444db793d28448d8f02168b94bd38

使用下面命令來確認一下127.0.0.1:7006是否已經成為127.0.0.1:7001的從節點

 redis-cli -p 7000 cluster nodes | grep slave | grep 0b00721a509444db793d28448d8f02168b94bd38

看到下面圖片中的情況就表示添加成功

 

 

 

 

Redis集群刪除節點

1:如果刪除的節點是主節點,這里我們刪除127.0.0.1:7006節點,這個節點有1000個哈希槽

首先要把節點中的哈希槽轉移到其他節點中,執行下面的命令

cd /usr/local/redis3.0/src

./redis-trib.rb reshard 127.0.0.1:7000

系統會提示我們要移動多少哈希槽,這里移動1000個,因為127.0.0.1:7006節點有1000個哈希槽

然后系統提示我們輸入要接收這些哈希槽的節點的ID,這里使用127.0.0.1:7001的節點ID

然后要我們選擇從那些節點中轉出哈希槽,這里一定要輸入127.0.0.1:7006這個節點的ID,最后輸入 done  表示輸入完畢

最后一步,使用下面的命令把這個節點刪除

cd /usr/local/redis3.0/src/

./redis-trib.rb del-node 127.0.0.1:7006 127.0.0.1:7006

2:如果節點是從節點的,直接使用下面的命令刪除即可。

cd /usr/local/redis3.0/src/

./redis-trib.rb del-node 127.0.0.1:7006 127.0.0.1:7006


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

白河县| 班戈县| 江川县| 抚顺县| 卢氏县| 开江县| 正安县| 满洲里市| 道孚县| 益阳市| 桐柏县| 平定县| 柯坪县| 南平市| 临城县| 云南省| 沁源县| 潢川县| 无极县| 长乐市| 巴东县| 瑞丽市| 三河市| 长宁区| 孝感市| 镇雄县| 西吉县| 达拉特旗| 呼玛县| 济南市| 内江市| 甘谷县| 新河县| 金秀| 华蓥市| 宜黄县| 临沂市| 遂昌县| 东丽区| 喀喇| 韩城市|