配置 redis 集群時(shí)(redis 版本 6.2.5),我使用了同一個(gè) server 端運(yùn)行3個(gè)不同的配置文件。

配置文件中只修改了端口號(hào)并打開(kāi)了 cluster-enable。
腳本運(yùn)行后什么提示都沒(méi)有,我以為成功了,但是 ps 卻看到只有第一個(gè)6379端口的和哨兵端啟動(dòng)了。

然后我就下意識(shí)地輸入了redis-server /root/redis.conf.d/redis-6380.conf,運(yùn)行后還是沒(méi)有任何提示,也沒(méi)有啟動(dòng)。后來(lái)?yè)v鼓了一會(huì)兒得知是因?yàn)榈谝粋€(gè)服務(wù)啟動(dòng)時(shí)在配置文件的 dir 配置目錄下生成了 nodes.conf 的文件,由于三個(gè)配置文件是復(fù)制出來(lái)的, dir 都是一樣的,所以第一個(gè) redis 啟動(dòng)成功了,但是后面第二三個(gè)檢測(cè)到 dir 目錄下有 nodes.conf 文件,就以為已經(jīng)啟動(dòng),所以就沒(méi)有啟動(dòng)。簡(jiǎn)而言之,就是 nodes.conf 文件沖突了。

如何解決這個(gè)問(wèn)題呢,有兩個(gè)辦法:第一是修改 dir 的位置,第二是修改 nodes.conf 的文件名。 dir 可以認(rèn)為是 redis 的 home , rdb 文件、 aof 文件和 nodes 文件都會(huì)生成在這里。把三個(gè) dir 改得不同,自然可以避免nodes 配置沖突的問(wèn)題。事實(shí)上,不僅 nodes 會(huì)沖突, rdb 和 aof 也會(huì)沖突,但是我之前有把 rdb 文件改過(guò)名:在配置里找到 dbfilename ,把名字改得不同即可。同理,nodes 也是,找到 cluster-config-file ,把名字改得不同即可。這里我采用的是第二種方法,三個(gè)服務(wù)的文件都生成在一個(gè)文件夾里。


這樣,就解決了文件沖突的問(wèn)題。
浙公網(wǎng)安備 33010602011771號(hào)