2 172.02 php,kafka安装、相关命令以及PHP使用
1、安裝JAVA
#下載安裝包
https://www.oracle.com/technetwork/java/javase/downloads/index.html
tar -xzvf jdk-8u211-linux-x64.tar.gz
vim /etc/profile
export JAVA_HOME=/www/softs/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
java -version
2、安裝zookeeper
#下載zookeeper
https://zookeeper.apache.org/
#解壓
tar -xzvf apache-zookeeper-3.5.5-bin.tar.gz
mv apache-zookeeper-3.5.5-bin zookeeper
cd /www/softs/zookeeper
mkdir /www/softs/zookeeper/data
#修改配置文件
cp conf/zoo_sample.cfg conf/zoo.cfg
vim conf/zoo.cfg
dataDir=/www/softs/zookeeper/data
server.1=172.19.60.175:2888:3888
server.2=172.19.60.174:2888:3888
【服務器-1】
echo "1" > /www/softs/zookeeper/data/myid
【服務器-2】
echo "2" > /www/softs/zookeeper/data/myid
#啟動服務
/www/softs/zookeeper/bin/zkServer.sh start
/www/softs/zookeeper/bin/zkServer.sh status
/www/softs/zookeeper/bin/zkServer.sh stop
/www/softs/zookeeper/bin/zkServer.sh restart
【從服務器顯示狀態】
Mode: follower
【主服務器顯示狀態】
Mode: leader
3、安裝kafka
#下載
https://www.apache.org/dyn/closer.cgi?path=/kafka/1.0.0/kafka_2.12-1.0.0.tgz
#解壓
tar -xzvf kafka_2.12-2.2.1.tgz
mv kafka_2.12-2.2.1 kafka
#編輯配置文件
vim /www/softs/kafka/config/server.properties
【服務器-1】
broker.id=0
port=9092
log.dirs=/www/softs/kafka/kafka-logs
listeners=PLAINTEXT://192.168.10.41:9092
4、命令
# 啟動zookeeper
/www/softs/kafka/bin/zookeeper-server-start.sh -daemon /www/softs/kafka/config/zookeeper.properties
# 啟動broker
nohup /www/softs/kafka/bin/kafka-server-start.sh /www/softs/kafka/config/server.properties 1>/dev/null 2>&1 &
# 停止zookeeper
/www/softs/kafka/bin/zookeeper-server-stop.sh
# 停止broker
/www/softs/kafka/bin/kafka-server-stop.sh
# 創建topic
/www/softs/kafka/bin/kafka-topics.sh --create --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --replication-factor 1 --partitions 6 --topic test
# 查看所有topic
/www/softs/kafka/bin/kafka-topics.sh --list --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092
# 查看單個topic信息
/www/softs/kafka/bin/kafka-topics.sh --describe --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --topic test
# 給topic增加partitions
/www/softs/kafka/bin/kafka-topics.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --alter --topic test --partitions 6
# 生產消息
/www/softs/kafka/bin/kafka-console-producer.sh --broker-list 172.19.60.175:9092,172.19.60.174:9092 --topic test
# 消費消息
/www/softs/kafka/bin/kafka-console-consumer.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --topic test --from-beginning
# 刪除topic
/www/softs/kafka/bin/kafka-topics.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --delete --topic test
#查看消費組個數
/www/softs/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --list
#查看消費者數量
/www/softs/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --describe --group test --members
# 檢測消費者位置
/www/softs/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --describe --group test
# 查看消費者狀態
/www/softs/kafka/bin/kafka-consumer-groups.sh --bootstrap-server 172.19.60.175:9092,172.19.60.174:9092 --describe --group test
# 殺死進程
ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9
# 清除日志
rm -rf /tmp/kafka-logs/ && rm -rf /tmp/zookeeper/ && rm -rf /home/kafka/logs/*
5、PHP擴展
# kafka php庫
# 下載源碼librdkafka
https://github.com/edenhill/librdkafka.git
cd librdkafka-master
./configure
make && make install
# 安裝php kafka擴展 php-rdkafka extension
# 下載源碼
https://github.com/arnaud-lb/php-rdkafka.git
# 編譯安裝
unzip php-rdkafka-master.zip
cd php-rdkafka-master
/www/server/php/72/bin/phpize
./configure --with-php-config=/www/server/php/72/bin/php-config
make && make install
# 查看.so名稱
ls /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/
# 修改php.ini
extension = /www/server/php/72/lib/php/extensions/no-debug-non-zts-20170718/rdkafka.so
# 重啟php,查看phpinfo,搜索kafka,找到即成功
# 使用示例:
https://arnaud-lb.github.io/php-rdkafka/phpdoc/rdkafka.examples.html
6、PHP使用
總結
以上是生活随笔為你收集整理的2 172.02 php,kafka安装、相关命令以及PHP使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mimo 鲁棒控制 matlab,项目调
- 下一篇: apache相对路径 php,php简单