云服务器安装Kafka集群

上一篇 云服务器搭建zookeeper集群 讲解了在云服务器环境下,zookeeper集群的搭建,今天我们在其基础上来搭建一下在云服务器环境下 kafka集群。

服务器环境

  • 阿里云:轻量服务器 1核2G(CENTOS)
  • 腾讯云:轻量服务器 1核2G(CENTOS)
  • 金山云:轻量服务器 1核2G(CENTOS)

搭建Kafka集群

安装Scala

从scala官方网站地址 下载,我这里下载的是 scala-2.12.8.tgz。其他的安装步骤可以参考 linux SCALA 安装 及环境搭建。

将三台服务器都安装好Scala。

安装Kafka

安装好 Scala后,从Kafka 官方网站地址 下载,我这里下载的是 kafka_2.12-2.3.0.tgz 对应了上面的Scala语言版本。

具体的解压步骤这里就不多做赘述,我就简单的列出命令

  • 解压压缩包 : tar -xzvf kafka_2.12-2.3.0.tgz

  • 重命名压缩包:mv kafka_2.12-2.3.0 kafka

  • 移动文件目录:mv kafka /usr/local/

将三台机器安装好即可。

配置Kafka集群

主要配置的文件就是 /usr/local/kafka/config/server.properties 我们来打开这个文件进行编辑。

执行 vi /usr/local/kafka/config/server.properties 命令打开这个文件,以下我只给出修改的地方。

kafka1.jpg

这里一定要注意修改 advertised.listeners 这个变量,否则在使用spring-kafka 时,会出现无法找到集群的情况。具体原因可以看其配置的注释。这里就不多做解释了。

kafka2.jpg

将自己的zookeeper集群设置进去即可。

修改以上几个参数即可。

将三台服务器安装即可。

启动并测试

启动

我们进入bin文件夹 cd /usr/local/kafka/bin

执行 ./kafka-server-start.sh -daemon ../config/server.properties

将三台服务器启动后, 执行 jps命令,查看进程状态

kafka3.jpg

测试

创建测试topic (test)

进入bin文件夹

cd /usr/local/kafka/bin

首先选择一台服务器 执行

./kafka-topics.sh --zookeeper zookeeperIP1:2181,zookeeperIP2:2181,zookeeperIP3:2181 --topic test --replication-factor 1 --partitions 1 --create

将以上的 zookeeperIP 改为你自己的服务器外网IP

在另外一台服务器上创建生产者

./kafka-console-producer.sh --broker-list kafka1:9092,kafka2:9092,kafka3:9092 --topic test

将以上的 kafka 改为你自己服务器的外网IP(一定要和之前 配置的 advertised.listeners 参数保持一致 )。

在最后一台机器上创建消费者

./kafka-console-consumer.sh --bootstrap-server kafka1:9092,kafka2:9092,kafka3:9092 --topic test --from-beginning

将以上的 kafka 改为你自己服务器的外网IP(一定要和之前 配置的 advertised.listeners 参数保持一致 )。

在生产者机器上 输入 任何信息,然后查看 消费者机器是否接收到,如果接收到,表示集群搭建完成

总结

在云服务器环境中搭建和本地虚拟机搭建还是有区别的,特别是Kafka 节点发现时 主机配置,这也是我在搭建的时候踩的坑。

你可能感兴趣的:(云服务器安装Kafka集群)