linux安装kafka

  • php使用kafka进行消费和生产:https://www.cnblogs.com/lz0925/p/11280654.html

  • 确保有java环境,我的版本:java version "1.8.0_112"

  • 地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • 下载
    cd /usr/local/src
    wget http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz
    tar zxvf kafka_2.12-2.3.0.tgz
    mv kafka_2.12-2.3.0 ../kafka
    cd ../kafka

  • 启动zookeeper,然后再启动kafka,顺序不能错

    bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
    bin/kafka-server-start.sh -daemon config/server.properties

  • 创建话题 'test'
    bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3 --partitions 3 --topic test
    // 这条命令会创建一个名为test的topic,有3个分区,每个分区需分配3个副本。

  • 查看话题列表
    bin/kafka-topics.sh --list --zookeeper localhost:2181

  • 查看 test 话题详情
    bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

  • 启动一个生产者
    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
    [等待输入自己的内容 出现>输入即可]

i am a new msg !
i am a good msg ?

  • 启动一个消费者(等待消息)

    • 注意这里的--from-beginning,每次都会从头开始读取,你可以尝试去掉和不去掉看下效果
      bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
      [等待消息]
      i am a new msg !
      i am a good msg ?
  • 安装kafka的php扩展

先安装rdkfka库文件

git clone https://github.com/edenhill/librdkafka.git
cd librdkafka/
./configure
make
sudo make install

git clone https://github.com/arnaud-lb/php-rdkafka.git
cd php-rdkafka
phpize
./configure
make all -j 5
sudo make install

vim [php]/php.ini
extension=rdkafka.so

ps:服务器允许远程客户端连接,需要修改broker的配置文件

打开config/server.properties配置文件,更改如下

把31行的注释去掉,listeners=PLAINTEXT://:9092
把36行的注释去掉,把advertised.listeners值改为PLAINTEXT://host_ip:9092(我的服务器ip是172.168.10.100)

posted @ 2019-07-15 16:01  _Eternity味道  Views(1473)  Comments(0Edit  收藏  举报