1. 程式人生 > >redhat6.5 redis單節點多例項3A叢集搭建

redhat6.5 redis單節點多例項3A叢集搭建

在進行搭建redis3M 叢集之前,首先要明白如何在單節點上完成redis的搭建。

單節點單例項搭建可以參看這個網:https://www.cnblogs.com/butterflies/p/9628207.html

完成單節點的redis搭建之後,修改配置檔案,開啟叢集模式,修改配置檔案生成的目錄,修改位對應的埠,即可完成單節點多例項的redis叢集搭建。

 

一:多例項配置檔案生成和修改

1 配置檔案拷貝

cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7000.conf

cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7001.conf

cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7002.conf

2 配置檔案修改

vim /usr/local/redis/etc/nodes7000.conf (其他的配置檔案按需修改)

主要修改的有3個地方(前提是單例項已經搭建成功的redis的配置檔案,即daemons已經修改位後臺執行模式)

修改1:開啟叢集模式(大約在配置檔案的814行左右),需要將配置檔案的cluster-enabled yes前面的#去掉,截圖如下

修改2:新增修改生成的叢集配置檔案。本例是以7000的例項為例,nodes-7000.conf的配置檔案不需要手動建立,改檔案會在配置檔案所在的目錄自動生成(啟動節點後生成的)。

 

修改3:每個例項對應不同的埠,所以需要在配置檔案中新增相應的埠。Redis預設的埠是6379,本例中是使用的7000埠,所以需要修改

 

 

3 啟動例項,檢測是否成功啟動

啟動時需要指定啟動的配置檔案,啟動後可以使用ps檢視程序,使用netstat命令檢視對應的埠是否監聽。出現如下截圖表示正常

 

二:叢集節點互通和槽位分配

所以叢集節點互通,是指不同節點之間相互通訊,讓彼此明白對方的存在。方便在後期對資料進行處理。槽位分配是方便節點資源充分利用的手段。Redis一共只有16383個槽位,資料是根據槽位進行儲存的。如果各個節點的資源不同,可以考慮個性化分配槽位。

1 節點互通

節點互通之前,需要將所有的節點全部啟動起來,成功啟動後所有的節點如下圖所示:

 截圖中可以看出,不同的例項啟動在不同的埠,都是以叢集的方式啟動

1.1 登陸節點,檢視叢集資訊

登陸節點之後,可以使用cluster info檢視叢集資訊,從下面的截圖中可以看到,目前叢集知道的節點就只有一個,我們需要新增其他兩個節點到叢集。

1.2 登陸叢集,新增節點到叢集

登陸集群后可以使用cluster meet IP port來完成節點的新增,新增完成後我們同樣使用cluster info來檢視叢集的資訊。另外可以使用cluster nodes來檢視叢集中所有的節點的資訊。如下的截圖所示:

上面的截圖中IP地址之前的字串表示的是節點的id,類似於節點的識別號,我們在從叢集中刪除節點的時候會用到。

 以下截圖是叢集新增節點的截圖

 

2 槽位分配

槽位總共16383個,因為是測試環境,使用的是均分槽位分配。現場可視情況具體分配。

分配的命令如下:

Redis-cli –h IP –p port cluster addslots {xx..xx}

命令執行成功後,會出現ok,如下截圖所示。

 

3 檢驗

通過命令從一個節點上連線到叢集,然後隨便建立一個鍵值對,然後在從另一個節點登陸叢集,獲取健對應的值。操作步驟如下截圖

 

單節點多例項的redis叢集搭建到此結束。