Redis部署說明

1、普通部署

將Redis-x64-3.2.100解壓,修改配置文件,通常不須要修改,直接使用默認,具體要修改可自行百度。node

打開命令行,定位到解壓目錄,執行命令:redis

redis-server.exe redis.windows.confwindows

有以下回顯表示配置正確:緩存

  

命令行執行如下命令可打開客戶端測試:安全

redis-cli.exe –h 127.0.0.1 –p 6379ruby

  

經過如下命令可部署爲WindowsService:服務器

redis-server --service-install redis.windows.confapp

經過如下命令可啓動/中止服務ide

redis-server --service-start工具

redis-server --service-stop

 

 

2、密碼配置

1.在配置文件中經過以下配置設置密碼:

requirepass 123456

2.客戶端鏈接後經過auth命令驗證受權:

 

3.在StackExchange.Redis鏈接字符串中設置密碼:

localhost:6379,password=123456

4.集羣設置密碼:

先經過redis-trib.rb工具構建集羣,集羣構建完成前不要配置密碼,

集羣構建完畢再經過config set + config rewrite命令逐個機器設置密碼

config set masterauth 123456

config set requirepass 123456

config rewrite

注意

1)       對集羣設置密碼,requirepass和masterauth都須要設置,不然發生主從切換時,就會遇到受權問題,能夠模擬並觀察日誌

2)       各個節點的密碼都必須一致,不然Redirected就會失敗

3)       若是設置密碼後須要使用redis-trib.rb的各類命令,須要到rbuy環境的gems裏找到並修改redis工具,路徑以下:

 

修改client.rb以下:

 

3、Cluster集羣部署

Cluster集羣腳本redis-trib.rb是經過Ruby語言編寫,須要安裝Ruby環境,具體步驟以下:

雙擊rubyinstaller-2.2.4-x64.exe安裝:

  

安裝驅動:

gem install --local path_to_gem/ redis-3.2.1.gem 

  

 

部署redis集羣首先要分別部署多個redis服務,集羣節點少於三個沒法部署,因此主服務器最少三個,下面的示例方案部署6個服務,三個主,三個從,

首先建立六個配置文件,端口從7001到7006:

  

其中redis.7001.conf的配置是:

  

其餘的基本相似,分別將其中的7001改爲對應的端口號便可,

配置說明:

port 7001       #端口號

loglevel notice    #日誌的記錄級別,notice是適合生產環境的

logfile "D:/Redis/Cluster/Logs/redis7001_log.txt"         #指定log的保持路徑,默認是建立在Redis安裝目錄下,若是有子目錄須要手動建立,如此處的Logs目錄

syslog-enabled yes                         #是否使用系統日誌

syslog-ident redis6380                   #在系統日誌的標識名

appendonly yes                              #數據的保存爲aof格式

appendfilename "appendonly.7001.aof"    #數據保存文件

cluster-enabled yes                           #是否開啓集羣以及集羣配置

cluster-config-file nodes.7001.conf        #這個文件會自動生成,下次啓動服務的時候回自動使用該集羣配置

cluster-node-timeout 15000

cluster-slave-validity-factor 10

cluster-migration-barrier 1

cluster-require-full-coverage yes

部署6個服務:

  

其中—service-name參數是服務名稱

啓動服務:

  

部署成功後查看服務:

  

部署集羣:

  

其中參數—replicas 是從庫個數。 

輸入yes:

  

集羣成功,測試一下:

 

7001節點能夠鏈接到全部節點,其中7001-7003是主庫,7004-7006是從庫,至此部署已完成,打開客戶端測試:

  

客戶端須要參數-c ,表示集羣

有上圖可知,集羣會自動將緩存存放其中一個節點

key1鍵是在7002節點,如今把7002服務中止掉:

  

檢查集羣:

  

發現7002節點已失去聯繫,7004提高爲主庫。

從新打開redis-cli :

  

獲取key1,是從7004節點獲取,繼續增長鍵,直到分配到7004節點上,打開7002節點:

  

此時7002是從庫,從新啓動7004,

 

發現7002從新被提高爲主庫。

至此,部署完成,主從備份功能正常,故障轉移也正常。

注意,互爲主從庫的節點中,當主庫宕機的時候從庫會自動提高爲主庫,原主庫從新鏈接上爲置爲從庫,若是主從都宕機了,集羣就故障了,爲保障一套主從的安全,要多部署從庫。

相關文章
相關標籤/搜索