環境要求(每臺需要gcc環境):
yum install -y gcc
環境要求(集群初始化節點即可)ruby2.2以上,gemredis模塊
yum install -y zlibzlib-devel openssl openssl-devel
然后每臺機器分別解壓源碼包進行編譯安裝
tar -zxvfredis-4.0.14.tar.gz -C /data/
cd/data/redis-4.0.14/
make && makeinstall
最后在集群初始化節點(通常為1節點)創建集群:
創建新集群命令:
進入bin目錄create集群
選項--replicas1:意味著我們希望每個創建的主服務器都有一個從節點
./redis-trib.rbcreate --replicas 1 172.16.10.15:7000 172.16.10.15:7001172.16.10.16:7000 172.16.10.16:7001 172.16.10.17:7000172.16.10.17:7001
新建集群時,在所有節點單實例部署完成后,在1節點安裝集群依賴的gem環境報錯遇到以下兩種情況
報錯情況1:
/usr/local/ruby/bin/geminstall redis-4.1.0.gem
ERROR:Loading command: install (LoadError)
cannotload such file -- zlib
ERROR:While executing gem ... (NoMethodError)
undefinedmethod `invoke_with_build_args for nil:NilClas
該報錯解決辦法:
yum -y installzlib-devel
進入ruby源碼文件夾,安裝ruby自身提供的zlib包:
cdruby-2.4.4/ext/zlib/
/usr/local/ruby/bin/rubyextconf.rb
make &&makeinstall
編譯報錯
make:*** No rule to make target `/include/ruby.h, needed by `zlib.o.Stop.
解決辦法:
編輯ext/zlib/Makefile文件
找到#zlib.o:$(top_srcdir)/include/ruby.h換成zlib.o:../../include/ruby.h
#zlib.o:$(top_srcdir)/include/ruby.h
zlib.o:../../include/ruby.h
報錯情況2:
/usr/local/ruby/bin/geminstall redis-4.1.0.gem
ERROR:While executing gem ... (Gem::Exception)
Unableto require openssl, install OpenSSL and rebuild ruby (preferred) oruse non-HTTPS sources
解決辦法:
進入ruby源碼文件夾,安裝ruby自身提供的openssl包:
cdruby-2.4.4/ext/openssl
# 找到各個組件的路徑
/usr/local/ruby/bin/rubyextconf.rb --with-openssl-include=/usr/include/openssl/--with-openssl-lib=/usr/lib64/openssl/
make && makeinstal
編譯報錯
make:*** No rule to make target `/thread_native.h, needed by `ossl.o.Stop.
打開Makefile文件:增加top_srcdir= /opt/software/ruby-2.4.4路徑
topdir =/usr/local/ruby/include/ruby-2.4.0
top_srcdir =/opt/software/ruby-2.4.4
hdrdir = $(topdir)
arch_hdrdir =/usr/local/ruby/include/ruby-2.4.0/x86_64-linux
以上兩種在集群初始化時安裝依賴環境ruby,gem等遇到過,當然這些環境和redis版本也有著重要對應關系(上述部署的是redis4.1版本),以上記錄僅供參考,特此貼下部署文檔如下,如有不當,請指正。
一.redis集群配置
環境要求(每臺):
yum install -y gcc
解壓安裝包,到解壓后的目錄進行安裝
tar -zxvf redis-4.0.14.tar.gz -C /data/
cd /data/redis-4.0.14/
make && make install
提示以下信息,表示安裝成功
Hint: Its a good idea to run make test ;)
make[1]: Leaving directory `/data/redis-4.0.14/src
cd src && make install
make[1]: Entering directory `/data/redis-4.0.14/src
CC Makefile.dep
make[1]: Leaving directory `/data/redis-4.0.14/src
make[1]: Entering directory `/data/redis-4.0.14/src
Hint: Its a good idea to run make test ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
make[1]: Leaving directory `/data/redis-4.0.14/src
安裝成功后,再解壓的目錄創建一個以端口號的目錄
mkdir 7000
mkdir 7000{data,log}
cd 7000
cat >>redis.conf<<EOF
#redis.config
port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes
daemonize yes
bind 172.16.10.16
pidfile /data/redis-4.0.14/7000/redis_7000.pid
dir /data/redis-4.0.14/7000/data
logfile /data/redis-4.0.14/7000/log/redis_7000.log
EOF
配置好目錄和配置文件后 復制為其他端口號的目錄
cd /data/redis-4.0.14/
cp -r 7000 7001
修改端口號為7001,直接替換(記得修改bind的IP為服務器本機IP)
vim 7001/redis.conf
:%s/7000/7001/g
然后注冊為系統服務方便啟動維護
cd /data/redis-4.0.14/utils/
./install_server.sh
################################################################################################
[root@domp03 utils]# ./install_server.sh
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379] 7000
Please select the redis config file name [/etc/redis/7000.conf] /data/redis-4.0.14/7000/redis.conf
Please select the redis log file name [/var/log/redis_7000.log] /data/redis-4.0.14/7000/log/redis_7000.log
Please select the data directory for this instance [/var/lib/redis/7000] /data/redis-4.0.14/7000/data
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port : 7000
Config file : /data/redis-4.0.14/7000/redis.conf
Log file : /data/redis-4.0.14/7000/log/redis_7000.log
Data dir : /data/redis-4.0.14/7000/data
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.(確定配置回車即可)
Copied /tmp/7000.conf => /etc/init.d/redis_7000
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful
#####################################################################################
檢測單實例安裝情況
[root@domp03 7001]# systemctl restart redis_7000
[root@domp03 7001]# systemctl restart redis_7001
[root@domp03 7001]# ps -ef|grep redis
root 5081 1 0 16:35 ? 00:00:00 /usr/local/bin/redis-server 172.16.10.17:7000 [cluster]
root 5093 1 0 16:35 ? 00:00:00 /usr/local/bin/redis-server 172.16.10.17:7001 [cluster]
root 5098 1484 0 16:35 pts/1 00:00:00 grep --color=auto redis
集群配置(一臺上做即可)
環境要求ruby2.2以上,gem redis模塊
yum install -y zlib zlib-devel openssl openssl-devel
1.先解壓ruby.gz包
tar -zxvf ruby-2.5.7.tar.gz -C /usr/local/
cd /usr/local/ruby-2.5.7/
./configure && make && make install
檢測安裝后的版本
/usr/local/ruby-2.5.7/ruby -v
/usr/local/ruby-2.5.7/gem -v
2.集成zlib庫到ruby環境
cd /usr/local/ruby-2.5.7/ext/zlib
/usr/local/ruby-2.5.7/ruby extconf.rb
修改Makefile文件中的zlib.o
zlib.o: $(top_srcdir)/include/ruby.h,將$(top_srcdir)修改為../..如下:
zlib.o: ../../include/ruby.h
make && make install
3.集成openssl庫到ruby環境
cd /usr/local/ruby-2.5.7/ext/openssl
/usr/local/ruby-2.5.7/ruby extconf.rb
修改Makefile文件,修改或新增
top_srcdir=../..
make && make install
4.安裝gem redis模塊
gem install /soft/redis-4.0.1.gem
5.配置redis集群
/data/redis-4.0.14/src
創建新集群命令:命令create,選項--replicas 1意味著我們希望每個創建的主服務器都有一個從服
./redis-trib.rb create --replicas 1 172.16.10.15:7000 172.16.10.15:7001 172.16.10.16:7000 172.16.10.16:7001 172.16.10.17:7000 172.16.10.17:7001
###############################################################
>>> Performing Cluster Check (using node 172.16.10.15:7000)
M: 8986394ba0b1dbe1111c86456a64bd4772b8b49c 172.16.10.15:7000
slots:0-5460 (5461 slots) master
1 additional replica(s)
M: 3c43b0063c47b6946a2908a2f7104b76763b39c9 172.16.10.17:7000
slots:10923-16383 (5461 slots) master
1 additional replica(s)
M: a60599db59814392385a1d047bd4f0b529eb1b31 172.16.10.16:7000
slots:5461-10922 (5462 slots) master
1 additional replica(s)
S: b7899e092d0affa3e0ca1d4a367eea3af98f986b 172.16.10.17:7001
slots: (0 slots) slave
replicates a60599db59814392385a1d047bd4f0b529eb1b31
S: f8f577ceca57142e83e1da6886eda590b8fb1e86 172.16.10.15:7001
slots: (0 slots) slave
replicates 3c43b0063c47b6946a2908a2f7104b76763b39c9
S: 8156d4655e6598f651af923e0cb0fd2bfcb53b82 172.16.10.16:7001
slots: (0 slots) slave
replicates 8986394ba0b1dbe1111c86456a64bd4772b8b49c
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
#################################################################
出現這個表示配置正常
集群節點狀態查看
redis-cli -h 172.16.10.15 -p 7000 cluster nodes
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/130078.html
摘要:本文整理了年月國產數據庫大事件和重要產品發布消息。柏睿數據庫加速安全卡面向全球重磅發布。月日,在全球數字經濟大會成果發布會上,中國移動北京分公司與國產數據庫領域新銳企業柏睿數據簽署戰略合作協議。本次大賽主要面向全國愛好數據庫的高校學生。 本文整理了2021年8月國產數據庫大事件和重要產品發布消息。目錄8月國產數據庫大事記TOP108月國產數據庫大事記時間線產品/版本發布兼容認證8月排行榜新增...
摘要:今天,,云原生計算基金會技術監督委員會宣布已經投票決議通過,正式將從沙箱項目晉級至孵化項目。晉級為孵化項目之后,將與其他項目一道,成為與其技術利益一致的中立的基金會的一部分,享有基金會為其提供的治理市場和社區推廣等權益。 今天,CNCF(Cloud Native Computing Foundation,云原生計算基金會)技術監督委員會(TOC)宣布已經投票決議通過,正式將 TiKV...
摘要:月日消息,近日,中國信息通信研究院大數據產品能力評測數據庫方向的測評結果陸續出爐。月日消息,國家工業信息安全發展研究中心發布電信行業數據庫產品第一期測評結果,前三名分別是阿里云數據庫柏睿數據企業級交易型數據庫信創版云和恩墨企業級數據庫。 .markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-si...
摘要:去年年底因為使用了云存儲和其他方面的原因,計劃的將服務器縮減一個機柜出來。云服務的回源服務器的配置中間漏了一臺,后期給補上了。監控遷移完畢之后,除了常規的業務代碼,還需要注意圖片資源的回源是否正常服務器壓力是否正常檢查日志是否出現錯誤。 去年年底因為使用了云存儲和其他方面的原因,計劃的將服務器縮減一個機柜出來。這樣今年每月機房的費用可以減少1萬左右。前前后后抽空在弄這個任務,現做個筆記...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20