最近一直在搞springboot整合kafka,於是自己搭建了一套單機的kafka環境,以便用於測試
wget
tar -xzvf kafka_2.11-1.1.0.tgz
2.kafka需要安裝zookeeper使用,但kafka整合zookeeper,在單機搭建時可直接使用,只需配置kafka_2.11-1.1.0/config 下的「zookeeper.properties」
以下是修改的zookeeper.properties配置引數:
#建立zookeeper目錄
mkdir /usr/local/kafka/zookeeper
#建立zookeeper日誌目錄
mkdir -p /usr/local/kafka/log/zookeeper
#進入配置目錄
cd /usr/local/kafka/config
vi zookeeper.properties
#zookeeper資料目錄
datadir=/usr/local/kafka/zookeeper
#zookeeper日誌目錄
datalogdir=/usr/local/kafka/log/zookeeper
clientport=2181
maxclientcnxns=100
ticktime=2000
initlimit=10
synclimit=5
3.配置kafka_2.11-1.1.0/config下的「server.properties」,修改log.dirs和zookeeper.connect。前者是日誌存放資料夾,後者是zookeeper連線位址(埠和clientport保持一致),目錄建立及引數配置如下:
#建立kafka日誌目錄
mkdir /usr/local/kafka/log/kafka
#進入配置目錄
cd /usr/local/kafka/config
#編輯修改kafka相應的引數
vi server.properties
broker.id=0
#topic可以刪,預設是false
delete.topic.enable=true
#埠號,可不配置
port=9092
#伺服器ip位址,也可修改為自己的伺服器ip
host.name=192.254.64.128
#日誌存放路徑,上面建立的目錄
log.dirs=/usr/local/kafka/log/kafka
#zookeeper位址和埠,單機配置部署,localhost:2181
zookeeper.connect=192.254.64.128:2181
listeners=plaintext:
到此,kafka的單機環境就搭建成功了。
啟動zookeeper
啟動啟動kakfa
/usr/local/kafka/bin/kafka-server-start.sh-daemon/usr/local/kafka/config/server.properties
-daemon:這個比較關鍵需要注意,守護執行緒,要不然xshell一關程序就丟了
jps程序顯示如下:
./kafka-topics.sh --zookeeper 192.168.226.129:2182 --describe --topic ordertopic ;檢視名字為ordertopic的topic
./kafka-topics.sh --zookeeper 192.168.226.129:2182 --list ;檢視topic 列表
記一段問題:(kafka丟失最開始日誌訊息的問題)
props = new properties();
props.put(consumerconfig.bootstrap_servers_config, address);
props.put(consumerconfig.enable_auto_commit_config, false);
props.put(consumerconfig.auto_commit_interval_ms_config, 1000);
props.put(consumerconfig.session_timeout_ms_config, 100000);
props.put(consumerconfig.request_timeout_ms_config,110000);
props.put(consumerconfig.key_deserializer_class_config, stringdeserializer.class);
props.put(consumerconfig.value_deserializer_class_config, stringdeserializer.class);
props.put(consumerconfig.group_id_config, "testconsumer"+system.currenttimemillis());
props.put(consumerconfig.auto_offset_reset_config, "earliest");
props.put(consumerconfig.max_poll_records_config, 50);
public static mapconsume(string topics, maprtnmap)
consumer.subscribe(collections.singletonlist(topics));
stringbuffer sb = new stringbuffer();
consumerrecordsrecords = null;
records = consumer.poll(duration.ofmillis(1000));
for (consumerrecordrecord : records)
if(stringutils.isnotempty(sb.tostring()))
rtnmap.put("msg", sb.tostring());
return rtnmap;
}
records = consumer.poll(duration.ofmillis(1000));留意一下就好,遇到具體問題具體對待
kafka 單機環境kafka搭建
目錄 一 kafka搭建方法 二 kafka常用命令行 1.topic建立 2.命令列生產者 3.命令列消費者 step1 解壓kafka tar zxvf kafka 2.13 2.4.0.tgzstep2 啟動zookeeper bin zookeeper server start.sh con...
Kafka單機模式搭建
kafka作為一種高吞吐量的分布式發布訂閱訊息系統現在非常流行,所以自己也在該技術上進行簡單的嘗試,為了以後深入研究打下基礎。下面主要介紹一下在ubuntu單機環境下kafka安裝和簡單使用。kafka 2.10 0.8.2.2.tgz 解壓並重命名 tar zxvf kafka 2.10 0.8 ...
Kafka單機Windows環境搭建
kafka單機windows環境搭建 1,安裝jdk1.8 安裝目錄不能有中文空格 解壓到d zookeeper 3.4.11之後,在conf目錄下面重新命名zoo sample.cfg為zoo.cfg,在zoo.cfg修改如下內容 datadir d zookeeper 3.4.11 data d...