centos搭建集群


centos 搭建集群步驟


1、使用yum安裝所需要的工具

yum -y install wget vim tcl gcc make

 

2、下載redis並解壓

cd /usr/local

wget http://download.redis.io/releases/redis-3.2.8.tar.gz         (獲取redis)

tar -zxvf redis-3.2.8.tar.gz

 

3、編譯安裝redis源文件

    cd redis-3.2.8

    make    (若安裝報錯,可以改為這一句:make MALLOC=libc)

    make install

        (如果 /usr/local/bin/ 文件夾內沒有 redis-server 那幾個文件,就從 /usr/local/redis-3.2.8/src/ 中拷貝過去,命令:cp         redis-server redis-cli redis-sentinel redis-trib.rb redis-benchmark redis-check-aof redis-check-rdb /usr/local/bin/)

4、配置內核參數(可以省略 沒成功 )

    --配置 vm.overcommit_memory 為1,這可以避免數據被截斷

        systcl -w vm.overcommit_memory=1

 

5、創建多實例的文件夾

    cd /usr/local/

    mkdir cluster

    cd cluster

    mkdir 7000 7001 7002  8001 8002 8003 

6、修改配置文件

    vim /usr/local/redis/etc/redis.conf

    bind  0.0.0.0   (0.0.0.0表示所有節點都可以訪問該redis)

    protected-mode no 

    daemonize yes (設置后台運行redis)

    cluster-enabled yes(開啟集群,把#去掉)

    cluster-node-timeout 15000 (設置請求超時時間,默認為15秒,可以自行修改)

    appendonly yes (aop日志開啟,會每次進行寫操作都記錄一條日志)

    --根據不同的端口需要設置的地方

        port 7000

        pidfile /var/run/redis_7000.pid

        dbfilename dump_7000.rdb

        appendfilename appendonly_7000.aof

        cluster-config-file nodes_7000.conf

7、復制配置文件到各個實例文件夾,並且對相應的端口號和參數進行配置。

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/7000/

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/7001/

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/7002/

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/8001/

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/8002/

    cp -f /usr/local/redis/etc/redis.conf   /usr/local/cluster/8003/

 

8、啟動各個節點
/usr/local/redis/bin/redis-server /usr/local/cluster/7000/redis.conf
/usr/local/redis/bin/redis-server /usr/local/cluster/7001/redis.conf
/usr/local/redis/bin/redis-server /usr/local/cluster/7002/redis.conf
/usr/local/redis/bin/redis-server /usr/local/cluster/8000/redis.conf
/usr/local/redis/bin/redis-server /usr/local/cluster/8001/redis.conf
/usr/local/redis/bin/redis-server /usr/local/cluster/8002/redis.conf

使用ps -ef|grep redis | grep cluster查看是否都啟動成功,ip和端口號是否都正確

9、安裝ruby、redis環境

yum -y install ruby rubygems

gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3

curl -L get.rvm.io | bash -s stable //此處好像需要翻牆才能實現,不然一直下載不下來

source /usr/local/rvm/scripts/rvm

rvm install ruby-2.3.3   (此過程耗時過長,耐心等待~)

rvm use 2.3.3 --default

gem install redis

 

10、創建集群

    (redis官方提供了redis-trib.rb 這個工具,就在解壓目錄src目錄中,第3步中已將它復制到/usr/local/bin目錄中,可以直接在命令行中使用,如果沒復制的話自行復制過去即可)

    redis-trib.rb create --replicas 1 192.168.33.50:7000 192.168.33.50:7001 192.168.33.50:7002 192.168.33.50:8000 192.168.33.50:8001 192.168.33.50:8002

//如果php代碼和服務在一起可以用127.0.0.1 不在一台服務器,最好指定ip 不然laravel 訪問請求到slave節點報錯 無法連接到127.0.0.1:7000  

 (redis-trib.rb創建集群時會嘗試連接列出來的redis節點,如果這里報錯你就要檢查一下你列出來的redis節點是否都正常運行或者所有節點直接是否都網絡互通)

    留意一下屏幕,會有一句(type 'yes' or accept),輸入yes,回車。(意思是:接受自主分配三主三從)

    如果最后出現

      >>> Check for open slots...

      >>> Check slots coverage...

 

    說明搭建成功。

 

11、驗證集群

redis-cli -h 192.168.33.50 -c -p 7000  (加參數 -c 可以連接到集群,因為redis.conf將bind改為了ip地址,所以 -h 不可以省略)

 

參考文檔 https://blog.csdn.net/mm493925121/article/details/81947442
https://www.cnblogs.com/ivictor/p/9768010.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM