Linux下安装Kafka和PHP的相关扩展
以下操作在 Ubuntu 16.04 下进行,其他系统可能略有不同:
安装kafka
- 配置防火墙,开启9092端口,编辑
\etc\iptables.up.rules
文件,添加一行:
1
|
-A
INPUT -p tcp -m state --state NEW -m tcp --dport 9092 -j ACCEPT |
保存后执行:
1
|
iptables-apply /etc/iptables .up.rules |
-
Ubuntu 16.04 自带 JDK,其他系统如果未安装则需要安装。
-
安装 kafka
kafka 最新的发行版本下载地址可以在 http://archive.apache.org/dist/kafka/ 里找。
1
2
3
4
|
cd /tmp wget
http: //archive .apache.org /dist/kafka/0 .10.0.0 /kafka_2 .11-0.10.0.0.tgz tar -xzvf
kafka_2.11-0.10.0.0.tgz mv kafka_2.11-0.10.0.0 /usr/local/kafka |
- 启动 zookeeper 和 kafka
这两者的配置这里就先不研究了,直接启动试试看:
1
2
|
nohup /usr/local/kafka/bin/zookeeper-server-start .sh /usr/local/kafka/config/zookeeper .properties
& nohup /usr/local/kafka/bin/kafka-server-start .sh /usr/local/kafka/config/server .properties
& |
安装PHP相关扩展
zookeeper 扩展
- 安装 libzookeeper_mt
1
2
3
4
5
6
|
cd /tmp wget
-N http: //archive .apache.org /dist/zookeeper/zookeeper-3 .4.6 /zookeeper-3 .4.6. tar .gz; tar zxvf
zookeeper-3.4.6. tar .gz; rm -f
zookeeper-3.4.6. tar .gz cd zookeeper-3.4.6 /src/c . /configure --prefix= /usr/local/zookeeper make sudo make install |
- 安装 PHP 的 zookeeper 扩展:
1
2
3
4
5
6
7
8
|
cd /tmp gid
clone https: //github .com /jbboehr/php-zookeeper .git #
如果是 PHP7: #
git checkout php7 phpize . /configure --with-php-config= /usr/local/php/bin/php-config --with-libzookeeper- dir = /usr/local/zookeeper make sudo make install |
然后就可以使用这个包了:https://github.com/nmred/kafka-php。
rdkafka 扩展
- 安装 librdkafka:
1
2
3
4
5
6
|
cd /tmp wget
-N https: //github .com /edenhill/librdkafka/archive/master .zip
-O librdkafka.zip; unzip librdkafka.zip; rm -f
librdkafka.zip cd librdkafka-master . /configure make sudo make install |
- 安装 php-rdkafka 扩展:
1
2
3
4
5
6
7
8
|
git
clone https: //github .com /arnaud-lb/php-rdkafka .git cd php-rdkafka #
如果是 PHP7 #
git checkout php7 phpize . /configure make all
-j 5 sudo make install
配置php.ini并重启php-fpm在PHP.ini中添加
PHP消费参考https://github.com/arnaud-lb/php-rdkafka
参考 |