centos7下Redis-Sentinel安裝和配置


一、Redis的安裝

  1、從官網https://redis.io/download下載最新的stable版本(也可以下載unstable版本)redis-4.0.9.tar.gz。

  2、上傳到CentOS 7服務器的 /data/目錄

  3、解壓縮文件到 /data/redis-4.0.9目錄下

> cd /data
> tar -zxvf redis-4.0.9.tar.gz -C /data/redis-4.0.9

  4、在centOs上安裝編譯必要的軟件(根據自己機器情況,如果已有請忽略)

# yum install gcc gcc-c++
# yum -y install automake autoconf libtool

  5、開始編譯Redis

# make

  編譯過程中可能會出現這個錯誤,因為默認分配器是jemalloc,我機器沒有,具體可以自行度娘 。。。。。

 解決辦法之一就是修改默認分配器(我使用的辦法)

# make MALLOC=libc  //改為libc

沒什么意外稍等一下就編譯通過了

等等,我還遇到了一個問題,截圖如下

因為一個文件沒有執行權限,解決辦法很簡單

chmod 777 mkreleasehdr.sh

再次執行make命令 “# make MALLOC=libc” , 應該就沒啥問題了

 

不過編譯最后出現了一句話

Hint: It's a good idea to run 'make test' ;)

什么意思呢? 執行下make test 是個好主意

我真的執行了,結果如下

[root@vm82220 redis-4.0.9]# make test
cd src && make test
make[1]: Entering directory `/data/redis-4.0.9/redis-4.0.9/src'
/bin/sh: ./runtest: Permission denied
make[1]: *** [test] Error 126
make[1]: Leaving directory `/data/redis-4.0.9/redis-4.0.9/src'
make: *** [test] Error 2

繼續添加權限  “chmod 777 runtest” ,再次執行 make test, 又出問題了

[root@vm82220 redis-4.0.9]# make test
cd src && make test
make[1]: Entering directory `/data/redis-4.0.9/redis-4.0.9/src'
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] Error 1
make[1]: Leaving directory `/data/redis-4.0.9/redis-4.0.9/src'
make: *** [test] Error 2

看到紅字了吧,需要8.5以上的版本

安裝tcl

# yum install tcl

再make test  就沒什么問題了

 

  6、安裝Redis到指定地方

本人喜歡把常用服務放到喜歡地方,這次就放到/data/redis目錄下吧

# mkdir /data/redis

執行安裝命令

# make PREFIX=/data/redis/ install

其實/data/redis 下只有一個bin目錄,里面有幾個命令文件

 為了后續方面使用命令,可以把bin文件夾放到環境變量中,也可以把這幾個命令連接到/usr/local/bin中,我采用后者

//軟連接一定要是有全路徑哦,否則可能出現錯誤
# ln -s /data/redis/bin/redis-server /usr/local/bin/redis-server
# ln -s /data/redis/bin/redis-server /usr/local/bin/redis-sentinel
# ln -s /data/redis/bin/redis-benchmark^Cusr/local/bin/redis-sentinel
# ln -s /data/redis/bin/redis-benchmark /usr/local/bin/redis-benchmark
# ln -s /data/redis/bin/redis-check-aof /usr/local/bin/redis-check-aof
# ln -s /data/redis/bin/redis-check-rdb /usr/local/bin/redis-check-rdb

至此,安裝就完成了

 

二、Redis配置

   1、打開端口:6379 , Redis默認端口就是6379,可以在配置文件中修改

firewall-cmd --permanent --zone=public --add-port=6379/tcp
firewall-cmd --reload

   2、修改配置文件

把配置文件/data/redis-4.0.9/redis.conf復制到/data/redis/conf文件夾中,修改配置

protected-mode no   //打開其他機器連接
port 6379    //端口
daemonize yes  //啟用守護進程
pidfile /data/redis/run/redis_6379.pid  //運行時
logfile /data/redis/log/redis_6379.log  //日志
dir /data/redis/dir  //數據文件夾
dbfilename dump_6379.rdb  //數據文件

還有很多配置信息,建議仔細閱讀一遍,滿滿干活啊  。。。。

  

  3、啟動Redis

redis-server /data/redis/config/redis.conf

 

  4、登陸測試一下

# redis-cli

 

  單機的Redis安裝配置完成

 

 

 

三、Redis-Sentinel的配置

  下面說一下單機中哨兵HA的配置

  哨兵模式中至少需要三個redis節點啟用,一個主節點,兩個從節點,我們分別使用6379(主)、6380(從)、6381(從)端口啟動三個redis服務。

  1、部署redis主從模式

  創建文件夾/data/redis/conf,把redis.conf 分別復制三份 redis_6379.conf、redis_6380.conf、redis_6381.conf,vi打開redis_6380.conf修改

#端口
port 6380

#運行時
pidfile /data/redis/run/redis_6380.pid

#日至
logfile /data/redis/log/redis_6380.log

#數據
dbfilename dump_6380.rdb

#指定master
slaveof 10.60.82.220 6379

redis_6381.conf把端口改為6381,其他也做類似修改

 

  2、啟動redis服務

  先啟動主服務

# redis-server redis_6379.conf  //主服務

  再分別啟動兩個從服務

# redis-server redis_slave_6380.conf //從服務
# redis-server redis_slave_6381.conf  //從服務

查看進程狀態

登陸主節點   

# redis-cli -h 10.60.82.220 -p 6379

 

  3、配置sentinel 

  也分別復制三個文件sentinel_26379.conf、sentinel_26380.conf、sentinel_26381.conf, 相關信息修改如下:

port 26379
daemonize yes
protected-mode no
dir "/data/redis/log/"
logfile "sentinel_26379.log"

sentinel monitor mymaster 10.60.82.220 6379 2
sentinel down-after-milliseconds mymaster 50000
sentinel failover-timeout mymaster 15000
sentinel parallel-syncs mymaster 1
#sentinel auth-pass mymaster YKHykh123456

sentinel known-slave mymaster 10.60.82.220 6380
sentinel known-slave mymaster 10.60.82.220 6381
#sentinel current-epoch 1

其他兩個文件也做相應修改

 

  4、啟動sentinel服務

# redis-sentinel sentinel_26379.conf
# redis-sentinel sentinel_26380.conf
# redis-sentinel sentinel_26381.conf

 

  5、檢查sentinel

# redis-cli -h 10.60.82.220 -p 26379 //登陸服務
> sentinel masters  //查看主服務信息

> sentinel slaves mymaster //查看所有從服務信息

 

配置相關就算完成了

 


免責聲明!

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



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