[喵咪KafKa(2)]單機模式執行KafKa
[喵咪KafKa(2)]單機模式執行KafKa#
前言##
在上節我們介紹完KafKa之後,今天我們來搭建KafKa三種模式(單機模式,偽叢集,叢集)中的一種單機模式的搭建,在正常的使用中我們一般吧單機模式作為開發環境的標配,今天就來和喵咪一同搭建一個KafKa的單機環境吧!
附上:
喵了個咪的部落格:w-blog.cn
KafKa官網地址:http://kafka.apache.org/
Git地址:https://github.com/apache/kafka
1. 安裝配置JDK
首先我們應該要安裝配置JDK,應為zookeeper和KafKa都依賴與java環境
tar -zxvf jdk-7u79-linux-x64.tar.gz mv jdk1.7/ /usr/local/
設定JAVA_HOME環境變數,編輯vim /etc/profile 加入如下內容
export JAVA_HOME=/usr/local/jdk1.7
export JRE_HOME=/usr/local/jdk1.7/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:
export PATH=$JAVA_HOME/bin:$PATH
更改後,執行命令使其生效
source /etc/profile
執行 java -version 會看到如下版本資訊證明已經安裝成功
java version "1.7.0_79" Java(TM) SE Runtime Environment (build 1.7.0_79-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
2. 安裝zookeeper##
KafKa依賴zookeeper的配置,排程,偏移,總之就是魚兒離不開水這個道理,KafKa沒有zookeeper也沒辦法玩起來,所以我們的第一步就是安裝zookeeper,KafKa在內部帶有一套zookeeper但是還是簡單單獨安裝配置(zookeeper需要叢集分散式來保證n-1的高可用)
zookeeper這裡使用的時3.4.5版本可在上方百度網盤進行下載
安裝配置zookeeper單機模式 :
cd /app/install tar zxvf zookeeper-3.4.5-cdh4.3.0.tar.gz mv zookeeper-3.4.5-cdh4.3.0 /tmp/zookeeper cd /tmp/zookeeper/ mv conf/zoo_sample.cfg conf/zoo.cfg mkdir data echo 1 > data/myid #將本節點id設定到data/myid檔案中
修改bin/zkEnv.sh指令碼:
將ZOO_LOG_DIR="."修改為
ZOO_LOG_DIR="/tmp/zookeeper/data"
將ZOO_LOG4J_PROP=”INFO,CONSOLE”修改為
ZOO_LOG4J_PROP="INFO,ROLLINGFILE"
修改bin/zkServer.sh指令碼:
將ZOOBIN="${BASH_SOURCE-$0}"修改為
ZOOBIN=`readlink -f "${BASH_SOURCE-$0}"`
修改bin/zkCli.sh指令碼:
將ZOOBIN="${BASH_SOURCE-$0}"修改為
ZOOBIN=`readlink -f "${BASH_SOURCE-$0}"`
建立軟連線到PATH:
ln -s /tmp/zookeeper/bin/zkServer.sh /usr/local/bin/zk-server
ln -s /tmp/zookeeper/bin/zkCli.sh /usr/local/bin/zk-cli
使用如下命令即可啟動zookeeper
zk-server start
#以下輸出為執行成功
JMX enabled by default
Using config: /tmp/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
在後續博文中喵咪會對zookeeper單獨開一個系列進行說明
3. 安裝KafKa0.8.2.2##
第二步就是安裝KafKa了,KafKa目前最新的版本是0.10.0.1,但是此版本基本只有親兒子語言能夠很好地使用,這裡採用一個比較穩定大部分kafka拓展能夠支援的0.8.2.2
KafKa的安裝包同樣可以在上方百度網盤中下載到或到http://kafka.apache.org/downloads.html下載相應的版本
tar -zxvf kafka_2.9.1-0.8.2.2.tgz
mv kafka_2.9.1-0.8.2.2 /usr/local/
到這裡KafKa就已經安裝完成(心裡暗念太簡單了),我們進入大KafKa得更目錄/usr/local/kafka_2.9.1-0.8.2.2來執行起來,這裡是需要制定KafKa連線的zookeeper才能啟動成功預設是localhost:2181,可以自行修改config/server.properties
// 執行KafKa
sh bin/kafka-server-start.sh config/server.properties &
這個時候會看到很多INFO語句如之中沒有包含的ERROR的報錯並且停留到如下輸出證明你的KafKa已經啟動成功了
INFO [Kafka Server 0], started (kafka.server.KafkaServer)
4. 使用命令列測試KafKa##
最後就是對KafKa進行一下簡單的測試,建立一個生產者和一個消費者之間互相通訊訊息
執行生產者producer
sh bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
執行消費者consumer
sh bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
此時在生產者輸入內容,消費者這裡也能顯示出來
注意:當有跨機的producer或consumer連線時需要配置config/server.properties的host.name
5.總結
本節講解了KafKa在單機模式下如何安裝執行,近期的內容個將介紹使用PHP如何來操作KafKa,以及KafKa的配置檔案要如何配置講解,那麼今天的內容就到這裡了,多謝大家的支援別忘了關注喵咪的部落格哦!
注:筆者能力有限有說的不對的地方希望大家能夠指出,也希望多多交流!