前置知識 ssh工具 連接linux工具 顏色設置, "參考" 中文亂碼, "參考" Linux相關知識 防火牆 的基本使用, "參考" 啟動: 查看狀態: 停止: 禁用: 配置firewalld cmd 查看版本: firewall cmd version 查看幫助: firewall cmd h ...
前置知識
ssh工具
連接linux工具SecureCRT
Linux相關知識
centos7
防火牆firewalld
的基本使用,參考
- 啟動:
systemctl start firewalld
- 查看狀態:
systemctl status firewalld
- 停止:
systemctl disable firewalld
- 禁用:
systemctl stop firewalld
配置firewalld-cmd
- 查看版本: firewall-cmd --version
- 查看幫助: firewall-cmd --help
- 顯示狀態: firewall-cmd --state
- 查看所有打開的埠: firewall-cmd --zone=public --list-ports
- 更新防火牆規則: firewall-cmd --reload
- 查看區域信息: firewall-cmd --get-active-zones
- 查看指定介面所屬區域: firewall-cmd --get-zone-of-interface=eth0
- 拒絕所有包:firewall-cmd --panic-on
- 取消拒絕狀態: firewall-cmd --panic-off
- 查看是否拒絕: firewall-cmd --query-panic
開啟一個對外埠步驟
- 先查看是否開啟,查看所有打開的埠:
firewall-cmd --zone=public --list-ports
- 添加:
firewall-cmd --zone=public --add-port=80/tcp --permanent
(--permanent永久生效,沒有此參數重啟後失效)
//命令含義:
–zone #作用域
–add-port=80/tcp #添加埠,格式為:埠/通訊協議
–permanent #永久生效,沒有此參數重啟後失效
- 重新載入:
firewall-cmd --reload
- 查看是否開啟:
firewall-cmd --zone=public --query-port=80/tcp
- 刪除:
firewall-cmd --zone= public --remove-port=80/tcp --permanent
伺服器環境(針對2m-noslave
)
序號 | IP | 用戶名 | 密碼 | 角色 | 模式 |
---|---|---|---|---|---|
1 | 192.168.100.24 | root | nameServer1,brokerServer1 | Master1 | |
2 | 192.168.100.25 | root | nameServer2,brokerServer2 | Master2 |
Hosts添加信息
修改host,做集群的通訊(兩台機器都修改)
vim /etc/hosts
IP | NAME |
---|---|
192.168.100.24 | rocketmq-nameserver1 |
192.168.100.24 | rocketmq-master1 |
192.168.100.25 | rocketmq-nameserver2 |
192.168.100.25 | rocketmq-master2 |
rocketmq安裝
雙master模式(雙namesrv雙broker)
上傳解壓
上傳
使用 rz
sz
插件,進行上傳下載
yum install -y lrzsz
上傳命令為rz
,下載命令為sz
解壓安裝
tar -zxvf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local //解壓到指定目錄下
mv alibaba-rocketmq alibaba-rocketmq-3.2.6 //重命名,帶版本號
ln -s alibaba-rocketmq-3.2.6 rocketmq //創建軟鏈接、如果不加 -s 就是創建硬鏈接
創建存儲路徑
mkdir /usr/local/rocketmq/store
mkdir /usr/local/rocketmq/store/commitlog
mkdir /usr/local/rocketmq/store/consumequeue
mkdir /usr/local/rocketmq/store/index
修改RocketMQ配置文件
vim /usr/local/rocketmq/conf/2m-noslave/broker-a.properties
vim /usr/local/rocketmq/conf/2m-noslave/broker-b.properties
作為broker
啟動時的參數配置文件
參考配置
#所屬集群名字
brokerClusterName=rocketmq-cluster
#broker名字,註意此處不同的配置文件填寫的不一樣
brokerName=broker-a|broker-b
#0 表示 Master,>0 表示 Slave
brokerId=0
#nameServer地址,分號分割
namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
#在發送消息時,自動創建伺服器不存在的topic,預設創建的隊列數
defaultTopicQueueNums=4
#是否允許 Broker 自動創建Topic,建議線下開啟,線上關閉
autoCreateTopicEnable=true
#是否允許 Broker 自動創建訂閱組,建議線下開啟,線上關閉
autoCreateSubscriptionGroup=true
#Broker 對外服務的監聽埠
listenPort=10911
#刪除文件時間點,預設凌晨 4點
deleteWhen=04
#文件保留時間,預設 48 小時
fileReservedTime=120
#commitLog每個文件的大小預設1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每個文件預設存30W條,根據業務情況調整
mapedFileSizeConsumeQueue=300000
#destroyMapedFileIntervalForcibly=120000
#redeleteHangedFileInterval=120000
#檢測物理文件磁碟空間
diskMaxUsedSpaceRatio=88
#存儲路徑
storePathRootDir=/usr/local/rocketmq/store
#commitLog 存儲路徑
storePathCommitLog=/usr/local/rocketmq/store/commitlog
#消費隊列存儲路徑存儲路徑
storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
#消息索引存儲路徑
storePathIndex=/usr/local/rocketmq/store/index
#checkpoint 文件存儲路徑
storeCheckpoint=/usr/local/rocketmq/store/checkpoint
#abort 文件存儲路徑
abortFile=/usr/local/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
#flushCommitLogThoroughInterval=10000
#flushConsumeQueueThoroughInterval=60000
#Broker 的角色
#- ASYNC_MASTER 非同步複製Master
#- SYNC_MASTER 同步雙寫Master
#- SLAVE
brokerRole=ASYNC_MASTER
#刷盤方式
#- ASYNC_FLUSH 非同步刷盤
#- SYNC_FLUSH 同步刷盤
flushDiskType=ASYNC_FLUSH
#checkTransactionMessageEnable=false
#發消息線程池數量
#sendMessageThreadPoolNums=128
#拉消息線程池數量
#pullMessageThreadPoolNums=128
修改日誌配置文件
修改啟動腳本參數
上面兩步省略,直接上傳到linux解壓等即可
啟動服務namesrv
1.到bin目錄下
加入執行許可權 chmod +x *
2.修改啟動的堆記憶體初始大小
`vim runserver.sh` //更改記憶體設置
3.啟動
./mqnamesrv
4.後臺運行進程:
nohup ./mqnamesrv &
5.jps查看進程
查看是否成功: tail -f nohup.out
啟動服務broker(master)
1.修改啟動的堆記憶體初始大小
vim runbroker.sh //更改記憶體設置
2. 啟動
nohup sh mqbroker -n "192.168.1.107:9876" &
3.指定配置文件的方式啟動
nohup sh mqbroker -n "192.168.1.107:9876" -c ../conf/2m-noslave/broker-a.properties > broker.out &
nohup sh mqbroker -n "127.0.0.1:9876" -c ../conf/2m-noslave/broker-a.properties > broker.out &
nohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &
# 用這個,不要指定namesrv地址
4.使用./mqadmin
來觀察namesrv和broker的情況
./mqadmin clusterList -n 192.168.1.107:9876 //ip為namesrv地址
查看是否成功啟動
netstat -ntlp
# jps
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log
# tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log
停止Rocketmq
cd /usr/local/rocketmq/bin
sh mqshutdown broker
sh mqshutdown namesrv
數據清理(停止後進行數據清理)
--等待停止
# rm -rf /usr/local/rocketmq/store
# mkdir /usr/local/rocketmq/store
# mkdir /usr/local/rocketmq/store/commitlog
# mkdir /usr/local/rocketmq/store/consumequeue
# mkdir /usr/local/rocketmq/store/index
--按照上面步驟重啟NameServer與BrokerServer