扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1. 环境规划:
创新互联从2013年创立,是专业互联网技术服务公司,拥有项目成都网站建设、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元二道做网站,已为上家服务,为二道各地企业和个人服务,联系电话:13518219792主机名 | IP地址 | 角色 |
node1 | 192.168.56.111 | ElasticSearch(master) Zookeeper Kafka |
node2 | 192.168.56.112 | ElasticSearch(slave) Kibana Zookeeper Kafka |
node3 | 192.168.56.113 | ElasticSearch(slave) Zookeeper Kafka |
node4 | 192.168.56.114 | Logstash Filebeat |
2. 配置Zookeeper集群:
1>. 安装zookeeper:三个节点操作一致。
[root@node1 ~]# mkdir /data/
[root@node1 ~]# tar xf zookeeper-3.4.10.tar.gz -C /data/
[root@node1 ~]# cd /data
[root@node1 data]# ln -sv zookeeper-3.4.10/ zookeeper
'zookeeper' ->'zookeeper-3.4.10/'
2>. 配置zookeeper,三个节点都要配置:
[root@node1 data]# cd zookeeper/conf
[root@node1 conf]# cp zoo_sample.cfg zoo.cfg
[root@node1 conf]# vim zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
clientPort=2181 ##zookeeper连接端口
server.1=192.168.56.111:2888:3888
server.2=192.168.56.112:2888:3888
server.3=192.168.56.113:2888:3888
[root@node1 ~]# mkdir /data/zookeeper/data
[root@node1 ~]# echo 1 >/data/zookeeper/data/myid
[root@node2 ~]# echo 2 >/data/zookeeper/data/myid
[root@node3 ~]# echo 3 >/data/zookeeper/data/myid
注意:server.id=host:port:port,其中id为1-255,2888是集群间通讯的端口,3888为Leader
选举的端口。
3>. 启动zookeeper:三个节点同时操作。
[root@node1 ~]# cd /data/zookeeper/bin/
[root@node1 bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
4>. 查看各个节点zookeeper状态:
[root@node1 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Mode: follower
[root@node2 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Mode: leader
[root@node3 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Mode: follower
3. 配置Kafka集群:
1>. 安装kafka:三个节点操作一致。
[root@node1 ~]# tar xf kafka_2.12-2.6.0.tgz -C /data/
[root@node1 ~]# cd /data/
[root@node1 data]# ln -sv kafka_2.12-2.6.0/ kafka
'kafka' ->'kafka_2.12-2.6.0/'
2>. 配置kafka:三个节点都要操作。
[root@node1 data]# cd kafka/config/
[root@node1 config]# cp server.properties{,.bak}
[root@node1 config]# vim server.properties
broker.id=1 ##zookeeper myid
delete.topic.enable=true
listeners=PLAINTEXT://192.168.56.111:9092 ##修改成本机地址
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=/data/kafka/kafka-logs
num.partitions=3
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.segment.bytes=1073741824
log.retention.check.interval.ms=300000
zookeeper.connect=192.168.56.111:2181,192.168.56.112:2181,192.168.56.113:2181 ##配置zookeeper集群
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
3>. 启动Kafka:三个节点都要操作。
[root@node1 ~]# cd /data/kafka/bin/
[root@node1 bin]# ./kafka-server-start.sh -daemon /data/kafka/config/server.properties
##停止kafka
[root@node1 bin]# ./kafka-server-stop.sh
4>. 测试kafka:
## 创建一个名为"test"的topic,它有一个分区和一个副本:
[root@node1 kafka]# bin/kafka-topics.sh --create --zookeeper 192.168.56.111:2181,192.168.56.112:2181,192.168.56.113:2181 --replication-factor 1 --partitions 1 --topic test
Created topic test.
## 查看topic是否创建成功:
[root@node1 kafka]# bin/kafka-topics.sh --list --zookeeper 192.168.56.111:2181,192.168.56.112:2181,192.168.56.113:2181
test
## 运行一个producer,发布消息:ctrl+d结束消息发布
[root@node1 kafka]# bin/kafka-console-producer.sh --broker-list 192.168.56.111:9092 --topic test
>hello world1
hello world2>## 运行一个consumer,订阅主题看看是否可以收到消息:另一个节点测试
[root@node2 kafka]# bin/kafka-console-consumer.sh --bootstrap-server 192.168.56.112:9092 --topic test --from-beginning
hello world1
hello world2
##删除主题:
[root@node1 kafka]# bin/kafka-topics.sh --delete --zookeeper 192.168.56.111:2181,192.168.56.112:2181,192.168.56.113:2181 --topic test
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流