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
參考 |