0


ELK-日志服务【kafka-配置使用】

kafka-01

10.0.0.21

kafka-02

10.0.0.22

kafka-03

10.0.0.23

【1】安装zk集群、配置

  1. [root@es-01 ~]# yum -y install java maven
  2. [root@es-01 ~]# tar xf apache-zookeeper-3.5.9-bin.tar.gz -C /opt/
  3. [root@es-01 ~]# cd /opt/apache-zookeeper-3.5.9-bin/conf/
  4. [root@es-01 conf]# cp zoo_sample.cfg zoo.cfg
  5. [root@es-01 conf]# vim zoo.cfg
  6. # 服务器之间或客户端与服务器之间维持心跳的时间间隔。tickTime以毫秒为单位
  7. tickTime=2000
  8. # 集群中的follower服务器(F)与leader服务器(L)之间的厨师连接心跳数 10* tickTime
  9. initLimit=10
  10. # 集群中的follower服务器于leader服务器之间请求和应答之间能容忍的最多心跳 5
  11. syncLimit=5
  12. # 数据保存目录
  13. dataDir=../data
  14. # 日志保存目录
  15. dataLogDir=../logs
  16. # 客户端连接端口
  17. clientPort=2181
  18. # 客户端最大连接数,默认是 60 个
  19. maxClientCnxns=60
  20. # 三个节点配置,格式为:server、服务编号=服务地址、LF通信端口、选举端口
  21. server.1=10.0.0.21:2888:3888
  22. server.2=10.0.0.22:2888:3888
  23. server.3=10.0.0.23:2888:3888
  24. [root@es-01 conf]# mkdir ../data
  25. # 将配置好的zook 拷贝到其他两台节点中
  26. [root@es-01 conf]# scp -rp /opt/apache-zookeeper-3.5.9-bin/ root@10.0.0.22:/opt
  27. [root@es-01 conf]# scp -rp /opt/apache-zookeeper-3.5.9-bin/ root@10.0.0.23:/opt
  28. # 在节点上写入节点标记
  29. [root@es-01 conf]# echo "1" > /opt/apache-zookeeper-3.5.9-bin/data/myid
  30. [root@es-02 ~]# echo "2" > /opt/apache-zookeeper-3.5.9-bin/data/myid
  31. [root@es-03 ~]# echo "3" > /opt/apache-zookeeper-3.5.9-bin/data/myid
  32. # 启动zook集群
  33. [root@es-01 conf]# cd /opt/apache-zookeeper-3.5.9-bin/bin/
  34. [root@es-01 bin]# ./zkServer.sh start
  35. /usr/bin/java
  36. ZooKeeper JMX enabled by default
  37. Using config: /opt/apache-zookeeper-3.5.9-bin/bin/../conf/zoo.cfg
  38. Starting zookeeper ... STARTED
  39. # 检查集群状态,每个节点都要执行
  40. [root@es-01 bin]# ./zkServer.sh status
  41. /usr/bin/java
  42. ZooKeeper JMX enabled by default
  43. Using config: /opt/apache-zookeeper-3.5.9-bin/bin/../conf/zoo.cfg
  44. Client port found: 2181. Client address: localhost. Client SSL: false.
  45. Mode: follower
  46. [root@es-02 bin]# ./zkServer.sh status
  47. /usr/bin/java
  48. ZooKeeper JMX enabled by default
  49. Using config: /opt/apache-zookeeper-3.5.9-bin/bin/../conf/zoo.cfg
  50. Client port found: 2181. Client address: localhost. Client SSL: false.
  51. Mode: follower
  52. [root@es-03 bin]# ./zkServer.sh status
  53. /usr/bin/java
  54. ZooKeeper JMX enabled by default
  55. Using config: /opt/apache-zookeeper-3.5.9-bin/bin/../conf/zoo.cfg
  56. Client port found: 2181. Client address: localhost. Client SSL: false.
  57. Mode: leader
  58. # 检查端口,leader(3888,2888)follower(3888)
  59. [root@es-03 bin]# netstat -lntp
  60. Active Internet connections (only servers)
  61. Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
  62. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1963/sshd
  63. tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2027/master
  64. tcp6 0 0 10.0.0.23:3888 :::* LISTEN 2518/java
  65. tcp6 0 0 :::8080 :::* LISTEN 2518/java
  66. tcp6 0 0 10.0.0.23:9200 :::* LISTEN 2281/java
  67. tcp6 0 0 10.0.0.23:9300 :::* LISTEN 2281/java
  68. tcp6 0 0 :::22 :::* LISTEN 1963/sshd
  69. tcp6 0 0 ::1:25 :::* LISTEN 2027/master
  70. tcp6 0 0 :::37308 :::* LISTEN 2518/java
  71. tcp6 0 0 :::2181 :::* LISTEN 2518/java
  72. tcp6 0 0 10.0.0.23:2888 :::* LISTEN 2518/java

【2】安装kafka集群

  1. [root@es-01 ~]# tar xf kafka_2.12-2.8.1.tgz -C /opt/
  2. [root@es-01 ~]# cd /opt/kafka_2.12-2.8.1/config/
  3. [root@es-01 config]# vim server.properties
  4. # broker的id,值为整数,且唯一,在一个集群中不能重复
  5. broker.id=1
  6. # kafka监听的端口,默认是9092
  7. listeners=PLAINTEXT://10.0.0.21:9092
  8. # 处理网络请求的线程数量,默认是3个
  9. num.network.threads=3
  10. # 执行磁盘IO操作的线程数量,默认是8个
  11. num.io.threads=8
  12. # socket服务发送数据的缓冲区大小,默认100KB
  13. socket.send.buffer.bytes=102400
  14. # socket服务接收数据的缓冲区大小,默认100KB
  15. socket.receive.buffer.bytes=102400
  16. # socket服务所能接受的一个请求的最大大小,默认是100M
  17. socket.request.max.bytes=104857600
  18. # kafka存储消息数据的目录
  19. log.dirs=../data
  20. # 每个topic默认的partition
  21. num.partitions=1
  22. # 设置副本数量为3,当leader的replication故障,会进行故障自动转移
  23. default.replication.factor=3
  24. # 在启动时恢复数据和关闭时刷新数据时每个数据目录的线程数量
  25. num.recovery.threads.per.data.dir=1
  26. # 消息刷新到磁盘中的消息条数阈值
  27. log.flush.interval.messages=10000
  28. # 消息刷新到磁盘中的最大时间间隔1s
  29. log.flush.interval.ms=1000
  30. # 日志保留小时数,超时会自动删除,默认为7天
  31. log.retention.hours=168
  32. # 日志保留大小,超出大小自动删除,默认为1G
  33. #log.retention.bytes=1073741824
  34. # 日志分片策略,单个日志文件的大小最大为1G,超出后则创建一个新的日志文件
  35. log.segment.bytes=1073741824
  36. # 每个多长时间检测数据是否达到删除条件,300s
  37. log.retention.check.interval.ms=300000
  38. # zookeeper简介信息,如果是zookeeper集群,则以逗号隔开
  39. zookeeper.connect=10.0.0.21:2181,10.0.0.22:2181,10.0.0.23:2181
  40. # 简介zookeeper的超时时间,6s
  41. zookeeper.connection.timeout.ms=60000
  42. # 创建数据目录
  43. [root@es-01 config]# mkdir ../data
  44. # 将kafka拷贝至其他节点中
  45. [root@es-01 config]# scp -rp /opt/kafka_2.12-2.8.1/ root@10.0.0.22:/opt/
  46. [root@es-01 config]# scp -rp /opt/kafka_2.12-2.8.1/ root@10.0.0.23:/opt/
  47. # 修改22、23配置文件中的broker.id 、listeners
  48. [root@es-02 ~]# vim /opt/kafka_2.12-2.8.1/config/server.properties
  49. # broker的id,值为整数,且唯一,在一个集群中不能重复
  50. broker.id=2
  51. # kafka监听的端口,默认是9092
  52. listeners=PLAINTEXT://10.0.0.22:9092
  53. ......
  54. [root@es-03 ~]# vim /opt/kafka_2.12-2.8.1/config/server.properties
  55. # broker的id,值为整数,且唯一,在一个集群中不能重复
  56. broker.id=3
  57. # kafka监听的端口,默认是9092
  58. listeners=PLAINTEXT://10.0.0.23:9092
  59. ......
  60. # 启动kafka集群
  61. [root@es-01 ~]# export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
  62. [root@es-02 ~]# export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
  63. [root@es-03 ~]# export KAFKA_HEAP_OPTS="-Xmx256M -Xms128M"
  64. [root@es-01 ~]# /opt/kafka_2.12-2.8.1/bin/kafka-server-start.sh -daemon /opt/kafka_2.12-2.8.1/config/server.properties
  65. [root@es-02 ~]# /opt/kafka_2.12-2.8.1/bin/kafka-server-start.sh -daemon /opt/kafka_2.12-2.8.1/config/server.properties
  66. [root@es-03 ~]# /opt/kafka_2.12-2.8.1/bin/kafka-server-start.sh -daemon /opt/kafka_2.12-2.8.1/config/server.properties
  67. [root@es-01 ~]# yum install java-1.8.0-openjdk.x86_64
  68. [root@es-01 ~]# yum install java-1.8.0-openjdk-devel.x86_64
  69. [root@es-01 ~]# jps
  70. 4456 Jps
  71. 4380 Kafka
  72. 3358 QuorumPeerMain
  73. 639 cerebro.cerebro-0.8.5-launcher.jar
  74. # 验证集群
  75. # 使用kafka创建一个topic
  76. [root@es-01 bin]# /opt/kafka_2.12-2.8.1/bin/kafka-topics.sh --create --zookeeper 10.0.0.21:2181,10.0.0.22:2181,10.0.0.23:2181 --partitions 1 --replication-factor 3 --topic xiaocheng
  77. # 生产者
  78. [root@es-02 ~]# /opt/kafka_2.12-2.8.1/bin/kafka-console-producer.sh --broker-list 10.0.0.21:9092,10.0.0.22:9092,10.0.0.0.23:9092 --topic xiaocheng
  79. OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
  80. [2023-07-13 07:04:02,171] WARN Couldn't resolve server 10.0.0.0.23:9092 from bootstrap.servers as DNS resolution failed for 10.0.0.0.23 (org.apache.kafka.clients.ClientUtils)
  81. >hello
  82. >你好?
  83. # 消费者
  84. [root@es-03 ~]# /opt/kafka_2.12-2.8.1/bin/kafka-console-consumer.sh --bootstrap-server 10.0.0.21:9092,10.0.0.22:9092,10.0.0.23:9092 --topic xiaocheng --from-beginning
  85. OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N
  86. hello
  87. 你好?

标签: elk kafka 分布式

本文转载自: https://blog.csdn.net/L596462013/article/details/131720897
版权归原作者 梦有一把琐 所有, 如有侵权,请联系我们删除。

“ELK-日志服务【kafka-配置使用】”的评论:

还没有评论