宅男在线永久免费观看网直播,亚洲欧洲日产国码无码久久99,野花社区在线观看视频,亚洲人交乣女bbw,一本一本久久a久久精品综合不卡

全部
常見問題
產品動態(tài)
精選推薦

Redis Cluster模式部署(上)

管理 管理 編輯 刪除

Redis的哨兵模式基本已經可以實現(xiàn)高可用,讀寫分離 ,但是在這種模式下每臺 Redis 服務器都存儲相同的數據,很浪費內存,所以在 redis3.0上加入了Cluster 集群模式,實現(xiàn)了 Redis 的分布式存儲,也就是說每臺 Redis 節(jié)點上存儲不同的內容。下面是Cluster 集群模式的一些特點:

  • Sentinel模式基本可以滿足一般生產的需求,具備高可用性。但是當數據量過大到一臺服務器存放不下的情況時,主從模式或sentinel模式就不能滿足需求了,這個時候需要對存儲的數據進行分片,將數據存儲到多個Redis實例中。cluster模式的出現(xiàn)就是為了解決單機Redis容量有限的問題,將Redis的數據根據一定的規(guī)則分配到多臺機器。
  • Cluster可以說是sentinel+主從模式的結合體,通過cluster可以實現(xiàn)主從和master重選功能,所以如果配置兩個副本三個分片的話,就需要六個Redis實例。因為Redis的數據是根據一定規(guī)則分配到cluster的不同機器的,當數據量過大時,可以新增機器進行擴容。
  • 使用集群,只需要將redis配置文件中的cluster-enable配置打開即可,每個集群中至少需要三個主數據庫才能正常運行,新增節(jié)點非常方便。

下面是Cluster 集群模式的架構示意圖。

可以看到,Cluster集群模式有如下一些特點:

  • 多個redis節(jié)點網絡互聯(lián),數據共享;
  • 所有的節(jié)點都是一主一從(也可以是一主多從),其中從不提供服務,僅作為備用;
  • 不支持同時處理多個key(如MSET/MGET),因為redis需要把key均勻分布在各個節(jié)點上,并發(fā)量很高的情況下同時創(chuàng)建key-value會降低性能并導致不可預測的行為;
  • 支持在線增加、刪除節(jié)點;
  • 客戶端可以連接任何一個主節(jié)點進行讀寫。

#環(huán)境說明

為了模擬Cluster 集群模式,我們需要準備至少三臺機器,然后分別開啟三個redis服務,即每個節(jié)點都要是一主兩從模式。

| IP | 主機名 | 端口 | 節(jié)點 | |---|---|---| | 192.168.182.110 | local-168-182-110 | 7001, 70002, 7003 | node1 | | 192.168.182.111 | local-168-182-111 | 7001, 70002, 7003 | node2 | | 192.168.182.112 | local-168-182-112 | 7001, 70002, 7003 | node3 |

#修改配置

接下來,我們基于主從模式的配置進行如下修改。

# 創(chuàng)建存儲目錄
mkdir -p /opt/software/redis-7.0.3/cluster/redis_{7001..7003}
cp /usr/local/redis/redis.conf /usr/local/redis/cluster_redis_7001.conf
cp /usr/local/redis/redis.conf /usr/local/redis/cluster_redis_7002.conf
cp /usr/local/redis/redis.conf /usr/local/redis/cluster_redis_7003.conf

chown -R redis:redis /usr/local/redis ;chown -R redis:redis /opt/software/redis-7.0.3/cluster

然后,修改位于/usr/local/redis/cluster_redis_7001.conf目錄的配置文件

cluster_redis_7001.conf。
# 【注意】節(jié)點不一樣,IP不一樣,記得修改這個bind配置
bind 192.168.182.110
port 7001
daemonize yes
pidfile "/var/run/cluster_redis_7001.pid"
logfile "/usr/local/redis/cluster_redis_7001.log"
dir "/opt/software/redis-7.0.3/cluster/redis_7001"
#replicaof 192.168.182.110 6379
masterauth "123456"
requirepass "123456"
appendonly yes
# 開啟集群模式
cluster-enabled yes
# 雖然此配置的名字叫"集群配置文件",但是此配置文件不能人工編輯,它是集群節(jié)點自動維護的文件,主要用于記錄集群中有哪些節(jié)點、他們的狀態(tài)以及一些持久化參數等,方便在重啟時恢復這些狀態(tài)。通常是在收到請求之后這個文件就會被更新。
cluster-config-file nodes_7001.conf
cluster-node-timeout 15000

然后,修改配置文件cluster_redis_7002.conf,位于/usr/local/redis/cluster_redis_7002.conf目錄下。

# 【注意】節(jié)點不一樣,IP不一樣,記得修改這個bind配置
bind 192.168.182.110
port 7002
daemonize yes
pidfile "/var/run/cluster_redis_7002.pid"
logfile "/usr/local/redis/cluster_redis_7002.log"
dir "/opt/software/redis-7.0.3/cluster/redis_7002"
#replicaof 192.168.182.110 6379
masterauth "123456"
requirepass "123456"
appendonly yes
# 配置yes則開啟集群功能,此redis實例作為集群的一個節(jié)點,否則,它是一個普通的單一的redis實例。
cluster-enabled yes
# 雖然此配置的名字叫"集群配置文件",但是此配置文件不能人工編輯,它是集群節(jié)點自動維護的文件,主要用于記錄集群中有哪些節(jié)點、他們的狀態(tài)以及一些持久化參數等,方便在重啟時恢復這些狀態(tài)。通常是在收到請求之后這個文件就會被更新。
cluster-config-file nodes_7002.conf
cluster-node-timeout 15000

然后,繼續(xù)修改配置文件cluster_redis_7003.conf,文件目錄位于/usr/local/redis/cluster_redis_7003.conf。

# 【注意】節(jié)點不一樣,IP不一樣,記得修改這個bind配置
bind 192.168.182.110
port 7003
daemonize yes
pidfile "/var/run/cluster_redis_7003.pid"
logfile "/usr/local/redis/cluster_redis_7003.log"
dir "/opt/software/redis-7.0.3/cluster/redis_7003"
#replicaof 192.168.182.110 6379
masterauth "123456"
requirepass "123456"
appendonly yes
# 配置yes則開啟集群功能,此redis實例作為集群的一個節(jié)點,否則,它是一個普通的單一的redis實例。
cluster-enabled yes
# 雖然此配置的名字叫"集群配置文件",但是此配置文件不能人工編輯,它是集群節(jié)點自動維護的文件,主要用于記錄集群中有哪些節(jié)點、他們的狀態(tài)以及一些持久化參數等,方便在重啟時恢復這些狀態(tài)。通常是在收到請求之后這個文件就會被更新。
cluster-config-file nodes_7003.conf
cluster-node-timeout 15000

其它兩臺機器配置與192.168.182.110一致,只是ip不同,此處省略。

# 將配置copy到另外兩個節(jié)點
scp -r /usr/local/redis/cluster_redis_{7001..7003}.conf local-168-182-111:/usr/local/redis/
scp -r /usr/local/redis/cluster_redis_{7001..7003}.conf local-168-182-112:/usr/local/redis/

# 在node2上執(zhí)行
sed -i 's/192.168.182.110/192.168.182.111/g' /usr/local/redis/cluster_redis_{7001..7003}.conf

# 在node3上執(zhí)行
sed -i 's/192.168.182.110/192.168.182.112/g' /usr/local/redis/cluster_redis_{7001..7003}.conf

#啟動Redis服務

接下來,啟動Redis服務的所有的節(jié)點。

redis-server /usr/local/redis/cluster_redis_7001.conf
netstat -tnlp|grep 7001
redis-server /usr/local/redis/cluster_redis_7002.conf
netstat -tnlp|grep 7002
redis-server /usr/local/redis/cluster_redis_7003.conf
netstat -tnlp|grep 7003
tail -f /usr/local/redis/cluster_redis_7001.log
tail -f /usr/local/redis/cluster_redis_7002.log
tail -f /usr/local/redis/cluster_redis_7003.log

啟動成功之后,如下圖。

#創(chuàng)建集群

為了能夠正常工作,我們需要集群的一個主節(jié)點有2個從節(jié)點。

# –cluster-replicas 2 : 表示集群的一個主節(jié)點有2個從節(jié)點,就是一主兩從模式
redis-cli -a 123456 --cluster create \
192.168.182.110:7001 192.168.182.110:7002 192.168.182.110:7003 \
192.168.182.111:7001 192.168.182.111:7002 192.168.182.111:7003 \
192.168.182.112:7001 192.168.182.112:7002 192.168.182.112:7003 \
--cluster-replicas 2

接著,系統(tǒng)會會自動生成nodes.conf文件,然后打開文件即可看到集群的相關信息。

ll /opt/software/redis-7.0.3/cluster/redis_{7001..7003}


請登錄后查看

嘻嘻哈哈 最后編輯于2024-12-17 14:44:25

快捷回復
回復
回復
回復({{post_count}}) {{!is_user ? '我的回復' :'全部回復'}}
排序 默認正序 回復倒序 點贊倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理員 企業(yè)

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
{{item.is_suggest == 1? '取消推薦': '推薦'}}
沙發(fā) 板凳 地板 {{item.floor}}#
{{item.user_info.title || '暫無簡介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打賞
已打賞¥{{item.reward_price}}
{{item.like_count}}
{{item.showReply ? '取消回復' : '回復'}}
刪除
回復
回復

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回復 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打賞
已打賞¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回復' : '回復'}}
刪除
回復
回復
查看更多
打賞
已打賞¥{{reward_price}}
885
{{like_count}}
{{collect_count}}
添加回復 ({{post_count}})

相關推薦

快速安全登錄

使用微信掃碼登錄
{{item.label}} 加精
{{item.label}} {{item.label}} 板塊推薦 常見問題 產品動態(tài) 精選推薦 首頁頭條 首頁動態(tài) 首頁推薦
取 消 確 定
回復
回復
問題:
問題自動獲取的帖子內容,不準確時需要手動修改. [獲取答案]
答案:
提交
bug 需求 取 消 確 定
打賞金額
當前余額:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
請輸入 0.1-{{reward_max_price}} 范圍內的數值
打賞成功
¥{{price}}
完成 確認打賞

微信登錄/注冊

切換手機號登錄

{{ bind_phone ? '綁定手機' : '手機登錄'}}

{{codeText}}
切換微信登錄/注冊
暫不綁定
CRMEB客服

CRMEB咨詢熱線 咨詢熱線

400-8888-794

微信掃碼咨詢

CRMEB開源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
返回頂部 返回頂部
CRMEB客服