生产环境中间件服务集群搭建-zk-activeMQ-kafka-reids-nacos

本文主要是介绍生产环境中间件服务集群搭建-zk-activeMQ-kafka-reids-nacos,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

环境:

系统:centos7.9

工作目录:/home

安装包位置:/home/op/tools

备注:时空社验收环境

1.系统初始化

安装依赖环境
yum -y install net-tools vim screen telnet vim gcc gcc-c++
修改主机名,为另外两台添加hosts文件
[root@mq01 conf]# hostnamectl set-hostname mq01
[root@mq01 conf]# vim /etc/hosts
192.10.30.11 mq01
192.10.30.12 mq02
192.10.30.13 mq03
上传所有服务器安装包
[root@mq01 tools]# ll /home/op/tools/
总用量 459144
-rw-r--r-- 1 root root  53675823 1月   5 16:18 apache-activemq-5.13.2-bin.tar.gz
-rw-r--r-- 1 root root   9890010 1月   5 16:18 apache-zookeeper-3.5.10-bin.tar.gz
-rw-r--r-- 1 root root 179476803 1月   5 16:19 java1-8.tar.gz
-rw-r--r-- 1 root root 107000763 1月   5 16:21 kafka_2.12-3.5.0.tgz
-rw-r--r-- 1 root root 117593603 1月   5 16:19 nacos-server-2.0.3.tar.gz
-rw-r--r-- 1 root root   2508776 1月   5 16:18 redis-6.2.7.tar.gz
进行解压二进制包
tar -zxf apache-activemq-5.13.2-bin.tar.gz 
tar -zxf apache-zookeeper-3.5.10-bin.tar.gz 
tar -zxf java1-8.tar.gz 
tar -zxf nacos-server-2.0.3.tar.gz 
tar -zxf redis-6.2.7.tar.gz 
注意:redis源码包进行编译
tar -zxf redis-6.2.7.tar.gz 
cd redis-6.2.7
make
make install PREFIX=/wespace/redis-7001
make install PREFIX=/wespace/redis-7002
进行将所有服务文件进行重命名到工作目录下
mv java /wespace/java
mv apache-activemq-5.13.2 /wespace/activeMQ
mv apache-zookeeper-3.5.10-bin /wespace/zookeeper
mv nacos /wespace/nacos
mv kafka_2.12-3.5.0 /wespace/kafka

2.准备Java环境

配置java环境变量
[root@mq01 wespace]# vi /etc/profile
export JAVA_HOME=/wespace/java/jdk1.8.0_111
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:.
export PATH=$JAVA_HOME/bin:$PATH
[root@mq01 wespace]# source /etc/profile
测试[root@mq01 wespace]# java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

3.部署zookeeper集群

1.拷贝其他服务zookeeper配置文件进行修改
[root@mq01 conf]# pwd
/wespace/zookeeper/conf
[root@mq01 conf]# ll
总用量 16
-rw-r--r-- 1 1000 1000  535 5月  19 2022 configuration.xsl
-rw-r--r-- 1 1000 1000 2712 5月  19 2022 log4j.properties
-rw-r--r-- 1 root root  224 1月   5 17:51 zoo.cfg
-rw-r--r-- 1 1000 1000  922 5月  19 2022 zoo_sample.cfg
2.根据本机情况修改zoo.cfg,和创建data,log目录,myid文件

注意:myid是唯一的,第一台为1,第二台2

[root@mq01 zookeeper]# mkdir log data
[root@mq01 conf]# vi zoo.cfg 
dataDir=/wespace/zookeeper/data
dataLogDir=/wespace/zookeeper/log
tickTime=2000
initLimit=10
syncLimit=5
clientPort=12181
server.1=192.10.30.11:12888:13888
server.2=192.10.30.12:12888:13888
server.3=192.10.30.13:12888:13888
[root@mq01 zookeeper]# echo '1' > data/myid 
3.将当前配置文件进行拷贝到两台服务器

注意:在另外两台修服务上修改myid

scp -Cr zoo.cfg root@192.10.30.12:/wespace/zookeeper/conf/
scp -Cr zoo.cfg root@192.10.30.13:/wespace/zookeeper/conf/
echo '2' > data/myid 
echo '3' > data/myid 
4.启动zookeeper
/wespace/zookeeper/bin/zkServer.sh start
ps -ef |grep zoo
lsof -i:12888

4.部署activeMQ集群

1.拷贝配置文件
[root@mq01 conf]# ll -rt
总用量 76
-rw-r--r-- 1 root users  665 3月   2 2016 client.ts
-rw-r--r-- 1 root users 1357 3月   2 2016 client.ks
-rw-r--r-- 1 root users  665 3月   2 2016 broker.ts
-rw-r--r-- 1 root users  592 3月   2 2016 broker-localhost.cert
-rw-r--r-- 1 root users 1370 3月   2 2016 broker.ks
-rw-r--r-- 1 root users  961 3月   2 2016 users.properties
-rw-r--r-- 1 root users 1016 3月   2 2016 login.config
-rw-r--r-- 1 root users 1207 3月   2 2016 logging.properties
-rw-r--r-- 1 root users 3084 3月   2 2016 log4j.properties
-rw-r--r-- 1 root users  964 3月   2 2016 jmx.password
-rw-r--r-- 1 root users  965 3月   2 2016 jmx.access
-rw-r--r-- 1 root users 1087 3月   2 2016 jetty-realm.properties #账号配置文件
-rw-r--r-- 1 root users  962 3月   2 2016 groups.properties
-rw-r--r-- 1 root users 1121 3月   2 2016 credentials.properties
-rw-r--r-- 1 root users 1172 3月   2 2016 credentials-enc.properties
-rw-r--r-- 1 root users 6117 1月   5 18:06 activemq.xml    #activeMQ集群zk配置文件
-rw-r--r-- 1 root users 8183 1月   5 18:09 jetty.xml     #activeMQ配置文件
2.修改jetty.xml配置文件[root@mq01 conf]# vim jetty.xml 
114         <property name="host" value="192.10.30.11"/>    #修改为当前主机IP地址
115         <property name="port" value="8161"/>            #修改端口号
3.修改activemq.xml配置文件
[root@mq01 conf]# vim activemq.xml 
40     <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}"   schedulerSupport="true">      #schedulerSupport="true"启动延迟队列
81         <persistenceAdapter>
82             <replicatedLevelDB directory="${activemq.data}/leveldb" replicas="3" bind="tcp://0.0.0.0:61617" zkAddress="192.10.30.11:12181,192.10.30.12:12181,192.10.30.13:12181" hostname="mq01" zkPath="/home/data/activeMQ/leveldb-stores"/>
83        </persistenceAdapter>
#修改zookeeper集群地址和端口  修改集群存放配置文件位置  zkAddress   zkPath
4.修改jetty-realm.properties配置文件
[root@mq01 conf]# vim jetty-realm.properties 
admin: admin, admin
user: user, user
5.将三个配置文件进行拷贝到另外两台服务器中
scp -Cr jetty-realm.properties root@192.10.30.12:/wespace/activeMQ/conf/
scp -Cr jetty-realm.properties root@192.10.30.13:/wespace/activeMQ/conf/
scp -Cr activemq.xml root@192.10.30.12:/wespace/activeMQ/conf
scp -Cr activemq.xml root@192.10.30.13:/wespace/activeMQ/conf
scp -Cr jetty.xml root@192.10.30.12:/wespace/activeMQ/conf
scp -Cr jetty.xml root@192.10.30.13:/wespace/activeMQ/conf
注意:修改配置文件主机IP
6.开启activemq
/wespace/activeMQ/bin/activemq start
ps -ef | grep active

5.部署kafka集群

1.修改kafka配置文件
[root@mq01 config]# pwd
/wespace/kafka/config
[root@mq01 config]# vim server.properties
broker.id=1     #唯一ID
port=9092
host.name=localhost
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/wespace/kafka/log
num.partitions=1
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.retention.check.interval.ms=300000
zookeeper.connect=192.10.30.11:12181,192.10.30.12:12181,192.10.30.13:12181  #zookeeper集群IP
zookeeper.connection.timeout.ms=18000
group.initial.rebalance.delay.ms=0
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://192.10.30.11:9092  #本机IP地址
2.将配置文件进行拷贝到另外两台服务器
#注意拷贝到其他主机后
1.修改ID
2.确认端口号
3.确认zkIP和端口
4.访问本机IP和端口
3.进行守护进程启动/home/kapai/kafka/bin/kafka-server-start.sh -daemon /home/kapai/kafka/config/server.properties

6.部署nacos集群

1.修改nacos主配置文件
[root@mq01 conf]# pwd
/wespace/nacos/conf
[root@mq01 conf]# vi application.properties19 server.servlet.contextPath=/nacos20 ### Default web server port:21 server.port=8848                #端口号35 ### Count of DB:36 db.num=1                        #指定数据库个数42 db.url.0=jdbc:mysql://192.30.10.99:3316/nacos?characterEncoding=utf8&connect    Timeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC43 db.user.0=nacos             #连接数据库用户名44 db.password.0=2023Nacos!!!  #数据库连接密码
2.修改集群文件
cp cluster.conf.example cluster.conf
[root@mq01 conf]# vim cluster.conf
192.10.30.11:8848
192.10.30.12:8848
192.10.30.13:8848
3.进行将配置文件拷贝到另外两台服务器
4.启动nacos服务
/wespace/nacos/bin/startup.sh 

7.部署redis群集

环境:三台服务器 两个实例

端口:7001 7002

1.创建工作目录
cd /wespace/redis-7001/
mkdir conf data log
cd /wespace/redis-7002/
mkdir conf data log
2.编写redis配置文件
cd /wepsace/redis-7001/etc/
vim redis-7001.conf
daemonize yes
pidfile /wespace/redis-7001/redis-7001.pid
port 7001
bind 192.10.30.11
#requirepass 123456     设置redis密码
timeout 0
tcp-keepalive 0
loglevel notice
logfile /wespace/redis-7001/log/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir /wespace/redis-7001/data
slave-serve-stale-data yes
slave-read-only yes
repl-disable-tcp-nodelay no
slave-priority 100
appendonly yes
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
lua-time-limit 5000
maxclients 65535
slowlog-log-slower-than 10000
slowlog-max-len 128
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes
maxmemory 20480mb
maxmemory-policy allkeys-lru
cluster-enabled yes
cluster-config-file nodes-7001.conf
cluster-node-timeout 15000
cluster-require-full-coverage yes
cluster-migration-barrier 1
3.配置redis-7002
cp redis-7001.conf ../../redis-7002/conf/
cd ../../redis-7002/conf
mv redis-7001.conf redis-7002.conf
vim redis-7002.conf
注意:修改配置文件与文件不同的字段如pid,log,目录
4.进行将两个配置文件进行拷贝到另外两台服务器上
#注意
#1.修改IP
#2.端口
#3.日志pid等存放路径
5.启动redis,进行确认
/wespace/redis-7001/bin/redis-server /wespace/redis-7001/conf/redis-7001.conf 
/wespace/redis-7002/bin/redis-server /wespace/redis-7002/conf/redis-7002.conf 
netstat -anptl | grep redis
ps -ef |grep redis
6.自动搭建集群模式

注意:3.以下低版本redis需要手动进行部署集群或者安装第三方工具进行部署

/wespace/redis-7001/bin/redis-cli --cluster create --cluster-replicas 1 192.10.30.11:7001 192.10.30.12:7001 192.10.30.13:7001 192.10.30.11:7002 192.10.30.12:7002 192.10.30.13:7002
7.检测集群redis状态
/wespace/redis-7001/bin/redis-cli --cluster check 192.10.30.11:7001 #更换IP和端口
8.连接redis增加key测试cluster分布,和查看cluster的关系和状态
#注意:/wespace/redis-7001/bin/redis-cli -h 192.10.30.11 -p 7001 #这种方式只适用于主从redis或者单机redis等情况,否则连接添加key测试会报错
#192.10.30.11:7001> set k1 v1
#(error) MOVED 12706 192.10.30.13:7001
/wespace/redis-7001/bin/redis-cli -h 192.10.30.11 -p 7001 -c  #集群连接方式 -c
set k1 v1 #添加key
keys *  #查看所有key
cluster nodes #查看集群状态

这篇关于生产环境中间件服务集群搭建-zk-activeMQ-kafka-reids-nacos的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/811844

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

HDFS—集群扩容及缩容

白名单:表示在白名单的主机IP地址可以,用来存储数据。 配置白名单步骤如下: 1)在NameNode节点的/opt/module/hadoop-3.1.4/etc/hadoop目录下分别创建whitelist 和blacklist文件 (1)创建白名单 [lytfly@hadoop102 hadoop]$ vim whitelist 在whitelist中添加如下主机名称,假如集群正常工作的节

Hadoop集群数据均衡之磁盘间数据均衡

生产环境,由于硬盘空间不足,往往需要增加一块硬盘。刚加载的硬盘没有数据时,可以执行磁盘数据均衡命令。(Hadoop3.x新特性) plan后面带的节点的名字必须是已经存在的,并且是需要均衡的节点。 如果节点不存在,会报如下错误: 如果节点只有一个硬盘的话,不会创建均衡计划: (1)生成均衡计划 hdfs diskbalancer -plan hadoop102 (2)执行均衡计划 hd

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

每天认识几个maven依赖(ActiveMQ+activemq-jaxb+activesoap+activespace+adarwin)

八、ActiveMQ 1、是什么? ActiveMQ 是一个开源的消息中间件(Message Broker),由 Apache 软件基金会开发和维护。它实现了 Java 消息服务(Java Message Service, JMS)规范,并支持多种消息传递协议,包括 AMQP、MQTT 和 OpenWire 等。 2、有什么用? 可靠性:ActiveMQ 提供了消息持久性和事务支持,确保消

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联