離線安裝redis集群


 

Step0:redis集群組件需求

Step1:離線安裝ruby

Step2:離線安裝rubygems

Step3:安裝rubygems的 redis api

Step4:離線安裝tcl 8.6

Step5:離線安裝redis

Step6:啟動redis守護進程及配置主從復制

Step7:測試redis集群

 


 

Step0:redis集群需要安裝如下組件:

ruby

rubygems

redis.gem

tcl

redis

----------------------------------------------------------------------------------

Step1:離線安裝ruby

1:上傳ruby-2.3.1.tar.gz至服務器;

2:tar -xzvf ruby-2.3.1.tar.gz;

3:cd ruby-2.3.1

4:./configure --prefix='/opt/ruby'

5:make

6:make install

安裝完畢后添加ruby至系統環境變量:

7:vim /etc/profile

在最末尾添加如下:

PATH=$PATH:/opt/ruby/bin

export PATH

保存退出

8:source /etc/profile

至此ruby安裝結束,通過ruby -v可查看當前系統安裝ruby的版本

 

-------------------------------------------------------------------------------------------------------------

Step2:離線安裝rubygems

1:下載rubygems安裝包(需翻牆),此處以rubygems-2.6.4.tgz為例;

2:tar -xzvf rubygems-2.6.4.tgz;

3:cd rubygems-2.6.4;

4:ruby setup.rb,將會將rubygems安裝至上一步ruby的安裝目錄的lib目錄下;

5:配置rubygems環境變量

vim /etc/profile

在剛才的$PATH變量后加上:/root/redis/rubygems-2.6.4/bin(這里的路徑是解壓文件路徑下的bin目錄路徑)

6:source /etc/profile

至此rubygems安裝完畢,echo $PATH應該輸出當前rubygems的版本號:2.6.4

 

------------------------------------------------------------------------------------------------

Step3:安裝rubygems的 redis api

1:下載redis-3.3.0.gem

2:gem install -l redis-3.3.0.gem

3:安裝完畢,提示"1 gem installed"

 

---------------------------------------------------------------------------------------------------

Step4:離線安裝tcl 8.6

1:下載tcl8.6.0,以下以tcl8.6.0-src.tar.gz文件為例;

2:tar -xzvf tcl8.6.0-src.tar.gz;

3:cd tcl8.6.0/unix;

4:./configure /opt/tcl;

5:make;

6:make install && make install-private-headers && ln -v -sf tclsh8.6 /opt/tcl/bin/tclsh && chmod -v 755 /opt/tcl/lib/libtcl8.6.so

以上安裝完畢后,修改環境變量

7:vim /etc/profile

8:在$PATH后加入":/opt/tcl/bin";

9:source /etc/profile;

配置完畢后,輸入tclsh,應該可以進入tcl編譯環境

 

----------------------------------------------------------------------------------------------------------------------------

Step5:離線安裝redis

1:下載redis源碼安裝包,以下以redis-3.2.0.tar.gz為例;

2:tar -xzvf redis-3.2.0.tar.gz;

3:cd redis-3.2.0/src;

4:make 這里如果不指定PREFIX,默認將安裝在/usr/local/bin下,保持默認就好;

5:make && make install;

如果需要test,則make test依賴於tclsh環境;

安裝完成后,將在/usr/local/bin下生成redis的對應服務端、客戶端等文件。

 

---------------------------------------------------------------------------------------------------------------------------

Step6:啟動redis守護進程及配置主從復制

注:redis自治集群功能是從V3后加入的,這里我們用簡單的主從復制就能滿足需求

1:修改master配置文件redis.conf

daemonize yes

pidfile /var/run/redis_16000.pid      # 如果是實驗環境,在同一台主機部署集群,則需要監聽不同端口,對應pid文件也需要修改

bind 10.200.50.198  # 這里改為服務器IP即可

port 16000  #這里是監聽端口,默認6379,如果是多節點部署集群可以不變

 

2:修改slave配置文件redis.conf

daemonize yes

pidfile /var/run/redis_16001.pid      # 如果是實驗環境,在同一台主機部署集群,則需要監聽不同端口,對應pid文件也需要修改

bind 10.200.50.198  # 這里改為服務器IP即可

port 16001  #這里是監聽端口,默認6379,如果是多節點部署集群可以不變

slaveof 10.200.50.198 16000

另外一個slave節點配置文件類似,將16001改為16002即可;

 

3:從centos7開始,服務注冊通過systemd來進行,可以通過在/usr/lib/systemd/中創建服務文件,通過systemctl來管理服務

這個目錄又分為system目錄和user目錄,由於我們需要在服務器啟動以后就啟動redis集群,因此我們在system目錄下定義對應的redis服務,在測試環境中,集群涉及的三個節點,分別對應3個服務:redis_16000.service,redis_16001.service,redis_16002.service。

服務內容如下:

[Unit]
Description=redis-server on 16000
After=syslog.target
After=network.target

[Service]
Type=forking
#PIDFile=/var/run/redis_16000.pid
ExecStart=/usr/local/bin/redis-server /usr/local/bin/16000/redis.conf
ExecStop=/usr/local/bin/redis-cli -h 10.200.50.198 -p 16000 shutdown
PrivateTmp=true

[Install]
WantedBy=multi-user.target

三個服務文件類似,修改16000對應為16001及16002即可,注意reidis-server后是服務啟動的配置文件,改為前2步所創建的對應的每個服務的配置文件絕對路徑即可;

 

4:配置文件,服務文件均創建完畢后,通過systemd即可管理這個節點上的三個redis服務

通過

systemctl enable redis_1600X.service

systemctl start redis_1600X.service啟動整個集群,即可自動組件一個1主2從的redis集群。

 

----------------------------------------------------------------------------------------------------------------------

Step7:測試redis集群

寫:redis-cli -h 10.200.50.198 -p 16000

set key01 'hello world'

讀:redis-cli -h 10.200.50.198 -p 16001

get key01

'hello world'

注:配置文件中默認配置slave節點是只讀模式,因此做寫操作只能針對master節點,讀操作可以在slave節點進行。

 

---------------------------------------------------------------------------------------------------------------------------------------------

離線安裝涉及的組件安裝包:

redis源碼包:redis-3.2.0.tar.gz

ruby源碼包:ruby-2.3.1.tar.gz

rubygems源碼包:rubygems-2.6.4.tgz

redis gem api:redis-3.3.0.gem

tcl編譯器源碼包:tcl8.6.0-src.tar.gz (可選,如不需要redis的make test則可不安裝)

 


免責聲明!

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



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