redis安裝以及主從複製完整版
redis版本:redis-3.2.11
主從複製模式:master--> slave1--> slave2
master:10.10.11.32 slave1:10.10.11.33 slave2:10.10.11.34html
1.解壓安裝redis
tar -zxvf redis-3.2.11.tar.gz;cd redis-3.2.11;make;make install
2.配置修改redis配置文件,日誌文件。(master,slave1,slave2都作以下修改)
建立配置文件目錄:
mkdir /etc/redis ;cp redis-3.2.11/redis.conf /etc/redis/
建立redis日誌文件目錄:
mkdir /var/log/redis
3.修改redis配置文件:
進入/etc/redis目錄,打開redis.conf文件作以下修改:
1) 指定存放redis日誌的文件,默認發送至/dev/null文件中 修改成 ====> logfile"/var/log/redis/redis.log"
2) 修改bind字段,將bind 127.0.0.1 修改成bind 0.0.0.0 或者直接註釋掉bind字段。
緣由以下:
若是redis主服務器綁定了127.0.0.1,那麼跨服務器IP的訪問就會失敗,從服務器用IP和端口訪問主的時候,主服務器發現本機6379端口綁在了127.0.0.1上,也就是隻能本機才能訪問,外部請求會被過濾,這是linux的網絡安全策略管理的。若是bind的IP地址是172.168.10.70,那麼本機經過localhost和127.0.0.一、或者直接輸入命令redis-cli登陸本機redis也就會失敗了。只能加上本機ip才能訪問到。因此,在研發、測試環境能夠考慮bind 0.0.0.0,線上生產環境建議綁定IP地址。
3) 修改protected-mode 爲 protected-mode no
緣由以下:設置爲 no,代表不以保護模式運行。
4) slave1服務器還須要以下修改:
修改以下: slaveof 10.10.11.32 6379
slave2服務器還須要以下修改:
修改以下:slaveof 10.10.11.33 6379
歷來實現master->slave1->slave2配置。linux
4.配置修改完畢以後,啓動redis服務。
redis-server /etc/redis/redis.conf &redis
5.檢測運行結果:
netstat -lntp | grep redis
運行以下:
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 29538/redis-server
tcp 0 0 :::6379 :::* LISTEN 29538/redis-server數據庫
6.測試
master服務器 ==> redis-cli set key "hello"
slave1服務器 ==> redis-cli get key
slave2服務器 ==> redis-cli get key緩存
7.參考網址:
構建高性能數據庫緩存之Redis(一) http://blog.51cto.com/cfwlxf/1423106
構建高性能數據庫緩存之redis主從複製 http://blog.51cto.com/cfwlxf/1433637
redis.conf 配置詳細解析 https://www.cnblogs.com/kreo/p/4423362.html安全
redis單主機多實例 https://www.cnblogs.com/super-d2/p/3855229.html
redis一個實例下多個數據庫 http://www.ttlsa.com/redis/redis-database/
主redis 奔潰,從redis升級到主 http://redis.readthedocs.io/en/2.6/server/slaveof.html服務器