centos7下Redis-Sentinel安裝和配置

1、Redis的安裝c++

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

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

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

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

  四、在centOs上安裝編譯必要的軟件(根據本身機器狀況,若是已有請忽略)ide

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

  五、開始編譯Redis測試

# make

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

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

# make MALLOC=libc  //改成libc

沒什麼意外稍等一下就編譯經過了日誌

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

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

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  就沒什麼問題了

 

  六、安裝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

至此,安裝就完成了

 

2、Redis配置

   一、打開端口:6379 , Redis默認端口就是6379,能夠在配置文件中修改

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

   二、修改配置文件

把配置文件/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  //數據文件

還有不少配置信息,建議仔細閱讀一遍,滿滿幹活啊  。。。。

  

  三、啓動Redis

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

 

  四、登錄測試一下

# redis-cli

 

  單機的Redis安裝配置完成

 

 

 

3、Redis-Sentinel的配置

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

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

  一、部署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,其餘也作相似修改

 

  二、啓動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

 

  三、配置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

其餘兩個文件也作相應修改

 

  四、啓動sentinel服務

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

 

  五、檢查sentinel

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

> sentinel slaves mymaster //查看全部從服務信息

 

配置相關就算完成了

相關文章
相關標籤/搜索