日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

Redis集群的部署

發(fā)布時(shí)間:2023/12/20 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis集群的部署 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

RedisCluster集群部署步驟

第一步前提準(zhǔn)備條件

需要準(zhǔn)備的內(nèi)容

1、下載Redis安裝文件,Redis提供msi和zip文件格式的下載文件

下載地址:

https://github.com/microsoftarchive/redis/releases

https://github.com/ServiceStack/redis-windows/tree/master/downloads

https://download.csdn.net/download/LongtengGensSupreme/12157626

2、下載Ruby安裝文件

下載地址:https://rubyinstaller.org/downloads/archives/

下載地址:https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe

3、下載Ruby環(huán)境下Redis的驅(qū)動(dòng)文件,考慮到兼容性,下載版本3.2.2的redis-3.2.2.gem

下載地址:https://rubygems.org/gems/redis/versions/3.2.2

4、下載Redis官方提供的創(chuàng)建Redis集群的ruby腳本文件redis-trib.rb,

下載地址:https://github.com/beebol/redis-trib.rb

?

第二步操作

安裝配置Redis

1、安裝(注:本文下面所操作的文件都是在文件根目錄是E:\Source下進(jìn)行的)

(1)把下載的Redis安裝文件,安裝或者解壓到redisfile文件里面 ,然后新建rediscluster文件夾,之后復(fù)制redisfile文件,在rediscluster文件夾下粘貼六次,為何要粘貼六次呢,Redis集群規(guī)劃至少有三個(gè)節(jié)點(diǎn)的集群,每個(gè)節(jié)點(diǎn)有一主一備,所有一共需要6臺(tái)虛擬主機(jī),之后把rediscluster文件夾下粘貼的6文件以6個(gè)對(duì)應(yīng)的端口來命名,6380,6381,6382,6383,6384,6385,如下圖

?

?

?

?

接著在6380文件中新建logs文件夾,存放日志,然后修改6380文件中的redis.windows.conf文件名稱改成redis.6380.conf,在redis.6380.conf添加下面內(nèi)容,注意行與行之間之后回車換行,不能留有空格,否則無法運(yùn)行。

需要添加的信息:

port 6380

loglevel notice

logfile "E:/Source/rediscluster/6380/logs/redis6380_log.txt"

syslog-enabled yes

syslog-ident redis6380

appendonly yes

appendfilename "appendonly.6380.aof"

cluster-enabled yes

cluster-config-file nodes.6380.conf

cluster-node-timeout 15000

cluster-slave-validity-factor 10

cluster-migration-barrier 1

cluster-require-full-coverage yes

?

?

?

?

保存,之后編寫一個(gè)startredis.bat啟動(dòng)服務(wù),

startredis.bat的內(nèi)容是:redis-server redis.6380.conf

雙擊startredis.bat,啟動(dòng)服務(wù),如下所示

?

?

?

?

?

同理,6381,6382,6383,6384,6385也是按照6380文件的操作方式對(duì)應(yīng)修改即可。上述6380,6381,6382,6383,6384,6385全部操作完成,啟動(dòng)以后,如下圖所示

?

?

?

?

?

注意:服務(wù)啟動(dòng)之后不要關(guān)閉。

(當(dāng)然,因?yàn)閞edis啟動(dòng)服務(wù)使用redis-server 加載redis.windows.conf的,所以上述的操作,也 還有還有另外一種方式,可以在redisfile文件里面1個(gè)logs文件和新建5個(gè)redis.windows.conf,改成對(duì)應(yīng)的端口名稱redis.6380.conf,redis.6381.conf,redis.6382.conf,redis.6383.conf,redis.6384.conf,redis.6385.conf,redis.windows.conf內(nèi)容是上述操作的內(nèi)容大致一樣的,只要修改一個(gè)日志的輸出路徑即可)。

安裝Ruby

把下載的Ruby安裝文件rubyinstaller-2.2.4-x64.exe,進(jìn)行安裝,安裝到Ruby22-x64文件夾下,注意安裝過程中下圖步驟中要全部勾選。

?

?

?

?

安裝Ruby環(huán)境下Redis的驅(qū)動(dòng)

把下載的Ruby環(huán)境下Redis的驅(qū)動(dòng)文件redis-3.2.2.gem,拷貝到Ruby22-x64文件夾下

?

?

?

?

打開E:\Source\Ruby22-x64\bin文件,路徑中輸入cmd,

輸入:gem install --local E:/Source/Ruby22-x64/redis-3.2.2.gem

顯示如下圖,即表示ruby下安裝Redis驅(qū)動(dòng)安裝成功

?

?

?

?

?

安裝Redis集群的Ruby腳本

把下載的Redis創(chuàng)建Redis集群的Ruby腳本redis-trib.rb文件拷貝到E:\Source\rediscluster\6380文件下,使用Redis創(chuàng)建Redis集群的Ruby腳本redis-trib.rb來啟動(dòng)集群,路徑中輸入cmd? 回車,

輸入:

redis-trib.rb create --replicas 1 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385 ???回車

其中--replicas 1 表示每個(gè)主數(shù)據(jù)庫(kù)擁有從數(shù)據(jù)庫(kù)個(gè)數(shù)為1。之前遇到錯(cuò)誤提示master節(jié)點(diǎn)不能少于3個(gè),輸入命令以后顯示如下界面:

redis-trib.rb create --replicas 1 127.0.0.1:6380 127

.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385, 回車

注意:

1、--replicas 1 表示每個(gè)主數(shù)據(jù)庫(kù)擁有從數(shù)據(jù)庫(kù)個(gè)數(shù)為1。master節(jié)點(diǎn)不能少于3個(gè),所以我們用了6個(gè)redis(即6380, 6381,6382,6383,6384,6385)

2、上面的語句執(zhí)行不成功的話,可以在前面加上ruby再運(yùn)行。(本人就是加了ruby之后才創(chuàng)建成功的,不加ruby的話,不報(bào)錯(cuò),但會(huì)有提示)

Ruby腳本redis-trib.rb啟動(dòng)集群,如下

?

?

?

?

在出現(xiàn) Can I set the above configuration? (type 'yes' to accept): ? 請(qǐng)確定并輸入 yes 。成功后的結(jié)果如下:

?

?

?

?

?

?

第三步測(cè)試

使用Visual Studio 2019 Enterprise新建.Net Fromwork 4.7 控制臺(tái)項(xiàng)目ConsoleTestRedisCluster,

1、選擇項(xiàng)目右鍵,點(diǎn)擊 管理NuGet包程序,搜索StackExchange.Redis,點(diǎn)擊安裝,

2、添加代碼

using StackExchange.Redis; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace ConsoleTestRedisCluster {class Program{static void Main(string[] args){#region 向Redis集群的6380端口添加數(shù)據(jù)//使用的redis api 前提1、安裝redis 2、NuGet包管理器添加 StackExchange.RedisConnectionMultiplexer _connectionMultiplexer = ConnectionMultiplexer.Connect("localhost:6380");IDatabase _database = _connectionMultiplexer.GetDatabase(0);string key1 = "set";string value1 = "55555";bool result = _database.StringSet(key1, value1);string messageSet = result ? "sucess" : "fail";Console.WriteLine($"Redis集群的 6380 端口添加數(shù)據(jù){key1}:{value1},結(jié)果:{messageSet}");_connectionMultiplexer.Close();#endregion#region 從Redis集群的6385端獲取數(shù)據(jù)ConnectionMultiplexer _connectionMultiplexer1 = ConnectionMultiplexer.Connect("localhost:6385");IDatabase _database1 = _connectionMultiplexer1.GetDatabase(0);string messageGet = _database1.StringGet(key1).ToString();Console.WriteLine($"從Redis集群的 6385 端口獲取 {key1} 的數(shù)據(jù):{messageGet}");_connectionMultiplexer1.Close(); Console.ReadLine();#endregion }} }

?

運(yùn)行結(jié)果:

?

?

?

?

附件一:

redis.6380.conf內(nèi)容:

# Redis configuration file

# 端口號(hào)

port 6380

# 日志記錄級(jí)別,notice是適合生產(chǎn)環(huán)境下的

loglevel notice

# 指定log的保存路徑,默認(rèn)是創(chuàng)建在Redis的安裝目錄下,如果子目錄需要手動(dòng)創(chuàng)建

logfile "E:/Source/RedisCluster/logs/redis6380_log.txt"

# 是否使用系統(tǒng)日志

syslog-enabled yes

# 使用系統(tǒng)日志時(shí),在系統(tǒng)日志中的標(biāo)識(shí)名

syslog-ident redis6380

appendonly yes

# 數(shù)據(jù)保存為aof格式

appendfilename "appendonly.6380.aof"

# 是否開啟集群

cluster-enabled yes

# 集群配置節(jié)點(diǎn)文件

cluster-config-file nodes.6380.conf

# 集群配置超時(shí)時(shí)間

cluster-node-timeout 15000

cluster-slave-validity-factor 10

cluster-migration-barrier 1

cluster-require-full-coverage yes

總結(jié)

以上是生活随笔為你收集整理的Redis集群的部署的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。