在進行搭建redis3M 集羣以前,首先要明白如何在單節點上完成redis的搭建。html
單節點單實例搭建能夠參看這個網:http://www.javashuo.com/article/p-rsgpzetn-gb.htmlnode
完成單節點的redis搭建以後,修改配置文件,開啓集羣模式,修改配置文件生成的目錄,修改位對應的端口,便可完成單節點多實例的redis集羣搭建。redis
cp /usr/local/redis/etc/redis.conf /usr/local/redis/etc/nodes7000.confvim
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.confhtm
vim /usr/local/redis/etc/nodes7000.conf (其餘的配置文件按需修改)blog
主要修改的有3個地方(前提是單實例已經搭建成功的redis的配置文件,即daemons已經修改位後臺運行模式)進程
修改1:開啓集羣模式(大約在配置文件的814行左右),須要將配置文件的cluster-enabled yes前面的#去掉,截圖以下資源
修改2:添加修改生成的集羣配置文件。本例是以7000的實例爲例,nodes-7000.conf的配置文件不須要手動建立,改文件會在配置文件所在的目錄自動生成(啓動節點後生成的)。字符串
修改3:每一個實例對應不一樣的端口,因此須要在配置文件中添加相應的端口。Redis默認的端口是6379,本例中是使用的7000端口,因此須要修改
啓動時須要指定啓動的配置文件,啓動後可使用ps查看進程,使用netstat命令查看對應的端口是否監聽。出現以下截圖表示正常
因此集羣節點互通,是指不一樣節點之間相互通訊,讓彼此明白對方的存在。方便在後期對數據進行處理。槽位分配是方便節點資源充分利用的手段。Redis一共只有16383個槽位,數據是根據槽位進行存儲的。若是各個節點的資源不一樣,能夠考慮個性化分配槽位。
節點互通以前,須要將全部的節點所有啓動起來,成功啓動後全部的節點以下圖所示:
截圖中能夠看出,不一樣的實例啓動在不一樣的端口,都是以集羣的方式啓動
登錄節點以後,可使用cluster info查看集羣信息,從下面的截圖中能夠看到,目前集羣知道的節點就只有一個,咱們須要添加其餘兩個節點到集羣。
登錄集羣后可使用cluster meet IP port來完成節點的添加,添加完成後咱們一樣使用cluster info來查看集羣的信息。另外可使用cluster nodes來查看集羣中全部的節點的信息。以下的截圖所示:
上面的截圖中IP地址以前的字符串表示的是節點的id,相似於節點的識別號,咱們在從集羣中刪除節點的時候會用到。
如下截圖是集羣添加節點的截圖
槽位總共16383個,由於是測試環境,使用的是均分槽位分配。現場可視狀況具體分配。
分配的命令以下:
Redis-cli –h IP –p port cluster addslots {xx..xx}
命令執行成功後,會出現ok,以下截圖所示。
經過命令從一個節點上鍊接到集羣,而後隨便建立一個鍵值對,而後在從另外一個節點登錄集羣,獲取健對應的值。操做步驟以下截圖
單節點多實例的redis集羣搭建到此結束。