kafka linux下的叢集安裝
第一步.kafka 叢集安裝環境準備
環境:CentOS6.5 叢集環境: 192.168.139.130 master 192.168.139.131 node1 192.168.139.132 node2 zookeeper 版本:zookeeper-3.3.6.tar.gz kafka 版本:kafka_2.11-0.9.0.0.tar.gz第二步.安裝zoookeeper叢集
注意kafka有自己自帶的zookeeper,我這裡沒用kafka自帶的zookeeper叢集,而是自己安裝的zookeeper叢集,因為zookeeper在其他地方用到比如hadoop叢集中
安裝自己的zookeeper叢集很簡單,這裡我就不一步步安裝了,詳細的安裝流程見我的另外一篇關於zookeeper安裝的博文:http://blog.csdn.net/wangguanyin98/article/details/51200747
安裝完成後啟動zookeeper叢集啟動順序master、node1、node2
在master、node1、node2上分別用zookeeper的客戶端連線上zookeeper的伺服器
執行命令:
[[email protected] bin]# ./zkCli.sh
出現下面的效果表示zookeeper客服端連線服務端成功注意: zookeeper 常用命令 啟動ZK服務: bin/zkServer.sh start 檢視ZK服務狀態: bin/zkServer.sh status 停止ZK服務: bin/zkServer.sh stop 重啟ZK服務: bin/zkServer.sh restart 連線伺服器 zkCli.sh -server 127.0.0.1:2181 檢視根目錄 ls / 建立 kafka節點,關聯字串'' create /kafka
node2節點檢視結果如圖:
因為是叢集所以在每個節點都能檢視到剛建立節點kafka的結果:這樣證明zookeeper叢集安裝成功並且可以使用
第三步:kafka叢集安裝
1.建立kafka的安裝目錄 mkdir /usr/local/kafka 2.把kafka_2.11-0.9.0.0.tar.gz移動到安裝目錄kafka解壓縮 tar -zxvf kafka_2.11-0.9.0.0.tar.gz 3.配置叢集檔案 vi server.properties 內容如下: # The id of the broker. This must be set to a unique integer for each broker. #broker id,每個broker id在叢集中必須唯一broker.id=1 #監聽埠 listeners=PLAINTEXT://:9091
#埠 # The port the socket server listens on
#port=9092 port=9091
#
# Hostname the broker will bind to. If not set, the server will bind to all interfaces
#host.name=localhost host.name=192.168.139.130
# The number of threads handling network requests
num.network.threads=3
# The number of threads doing disk I/O
num.io.threads=8
# The send buffer (SO_SNDBUF) used by the socket server
socket.send.buffer.bytes=102400
# The receive buffer (SO_RCVBUF) used by the socket server
socket.receive.buffer.bytes=102400
# The maximum size of a request that the socket server will accept (protection against OOM)
socket.request.max.bytes=104857600
# A comma seperated list of directories under which to store log files #kafka的日誌記錄目錄
log.dirs=/tmp/kafka-logs
# The default number of log partitions per topic. More partitions allow greater
# parallelism for consumption, but this will also result in more files across
# the brokers.
num.partitions=1
# The number of threads per data directory to be used for log recovery at startup and flushing at shutdown.
# This value is recommended to be increased for installations with data dirs located in RAID array.
num.recovery.threads.per.data.dir=1
# The minimum age of a log file to be eligible for deletion
log.retention.hours=168
# A size-based retention policy for logs. Segments are pruned from the log as long as the remaining
# segments don't drop below log.retention.bytes.
#log.retention.bytes=1073741824
# The maximum size of a log segment file. When this size is reached a new log segment will be created.
log.segment.bytes=1073741824
# The interval at which log segments are checked to see if they can be deleted according
# to the retention policies
log.retention.check.interval.ms=300000
# By default the log cleaner is disabled and the log retention policy will default to just delete segments after their retention expires.
# If log.cleaner.enable=true is set the cleaner will be enabled and individual logs can then be marked for log compaction.
log.cleaner.enable=false
zookeeper.connect=192.168.139.130:2181,192.168.139.131:2181,192.168.139.132:2181/kafka
# Timeout in ms for connecting to zookeeper
#連線zookeeper超時
zookeeper.connection.timeout.ms=6000
注意:紅色代表必須配置的項,叢集其他節點的配置更這個配置一樣,只是下面的四項不相同
broker.id=1 listeners=PLAINTEXT://:9091port=9091
host.name=192.168.139.130 需要注意的是zookeeper.connect=192.168.139.130:2181,192.168.139.131:2181,192.168.139.132:2181/kafka 這條配置資訊的 /kafka 是kafka叢集連線外部zookeeper叢集必須配置的節點否則會安裝不成功,報錯好多博文並未指出這一點,所以導致初學者安裝叢集會花費很長的時間,這是一個坑,大家需要特別注意,我會把詳細的配置檔案server.properties放在CSDN的資料下載上,歡迎大家下載
4.配置成功以後按順序啟動kafka,master->node1->node2
bin
/kafka-server-start
.sh
config
/server
.properties
&
注意&符號是為了能夠繼續輸入命令沒有特殊含義
5.啟動成功後就是驗證kafka叢集安裝是否成功
建立一個名稱為my-replicated-topic5的Topic,5個分割槽,並且複製因子為3
bin/kafka-topics.sh
--create --zookeeper 192.168.139.130:2181,192.168.139.131:2181,192.168.139.132:2181/kafka
--replication-factor
3 --partitions 5 --topic my-replicated-topic5
檢視建立的Topic,執行如下命令
bin/kafka-topics.sh
--describe --zookeeper 192.168.139.130:2181,192.168.139.131:2181,192.168.139.132:2181/kafka
--topic
my-replicated-topic5
檢視結果
解釋
bin/kafka-topics.sh –list –zookeeper 192.168.172.98:2181/kafka
:
1 Partition: 分割槽
2 Leader : 負責讀寫指定分割槽的節點
3 Replicas : 複製該分割槽log的節點列表
4 Isr : “in-sync” replicas,當前活躍的副本列表(是一個子集),並且可能成為Leader
我們可以通過Kafka自帶的bin/kafka-console-producer.sh和bin/kafka-console-consumer.sh指令碼,來驗證演示如果釋出訊息、消費訊息。
6.在node2終端,啟動Producer,並向我們上面建立的名稱為my-replicated-topic5的Topic中生產訊息
bin/kafka-console-producer.sh --broker-list 192.168.139.130:9091,192.168.139.133:9092,192.168.139.132:9092 --topic my-replicated-topic5
7.在master上啟動Consumer,並訂閱我們上面建立的名稱為my-replicated-topic5的Topic中生產的訊息
bin/kafka-console-consumer.sh --zookeeper 192.168.139.130:2181,192.168.139.131:2181,192.168.139.132:2181/kafka --from-beginning --topic my-replicated-topic5
現在就可以在Producer輸入你的訊息,然後你就可以在consumer端看到你輸入的訊息內容,說明你的叢集安裝成功
8.啟停kafka叢集
啟動:bin
/kafka-server-start
.sh
config
/server
.properties
&
停止:
bin
/kafka-server-stop
.sh
第四步:kafka叢集安裝成功後怎樣建立topic
建立: bin/kafka-topics.sh --create --zookeeper 192.168.139.130:2181/kafka --replication-factor 3 --partitions 3 --topic test_topic5 zookeeper指定其中一個節點即可,叢集之間會自動同步。 –-replication-factor 2 –-partitions 3理論上應該是可選引數,但此指令碼必須寫這2個引數。檢視全部topic:
[[email protected]
kafka_2.11-0.9.0.0]# bin/kafka-topics.sh --list --zookeeper 192.168.139.130:2181/kafka
[2016-04-22 04:27:20,928] WARN Connected to an old server; r-o mode will be unavailable (org.apache.zookeeper.ClientCnxnSocket)
my-replicated-topic5
test_topic5
刪除:
bin/kafka-topics.sh
--delete --zookeeper 192.168.139.130:2181/kafka test_topic5
(1)配置檔案中必須delete.topic.enable=true,否則只會標記為刪除,而不是真正刪除。
(2)執行此指令碼的時候,topic的資料會同時被刪除。如果由於某些原因導致topic的資料不能完全刪除(如其中一個broker
down了),此時topic只會被marked for deletion,
而不會真正刪除。此時建立同名的topic會有衝突
叢集安裝結束 希望安裝本部落格安裝成功的同學 給予好評 謝謝
配置檔案下載路徑:http://download.csdn.net/detail/wangguanyin98/9499185
相關推薦
kafka linux下的叢集安裝
第一步.kafka 叢集安裝環境準備 環境:CentOS6.5 叢集環境: 192.168.139.130 master 192.168.139.131 node1 192.168.139.132
Linux下單機安裝部署kafka及代碼實現
{} edt serial integer exc height 復制 有一個 images 技術交流群:233513714 這幾天研究了kafka的安裝及使用,在網上找了很多教程但是均以失敗告終,直到最後想起網絡方面的問題最終才安裝部署成功,下面就介紹一下kaf
Linux下圖示安裝Kafka
一:Kafka的下載安裝. 1. Kafka官網. 2. 官網下載. &nbs
Kafka學習筆記(1)----Kafka的簡介和Linux下單機安裝
1. Kafka簡介 Kafka is a distributed,partitioned,replicated commit logservice。它提供了類似於JMS的特性,但是在設計實現上完全不同,此外它並不是JMS規範的實現。kafka對訊息儲存時根據Topic進行歸類,傳送訊息者成為Produ
kafka學習(1)linux下的安裝和啟動,以及Java示例程式碼
1. 安裝 1.1 下載kafka並解壓 wget http://mirror.bit.edu.cn/apache/kafka/0.11.0.0/kafka_2.11-0.11.0.0.tgz tar -zxvf kafka_2.11-0.11.0.0.tgz 1.2 修改
Linux下Redis安裝+叢集+效能監控
最近專案即將上線,由於人手問題,各種研究運維相關知識,這兩天剛弄完redis叢集部署的問題,跟大家嘮嘮。 一、Redis安裝 *以下均是在Linux環境下執行,系統ubuntu16.04 1. 下載穩定版 sudo wget http://dow
Linux下靜默安裝 oracle參考連結(for單例項、for RAC叢集)
1. http://www.dbdream.com.cn/2012/03/03/linux%e7%8e%af%e5%a2%83%e4%b8%8b%e9%9d%99%e9%bb%98%e5%bb%ba%e5%ba%93oracle11gr2/ 2.http://www.dbd
linux 下yum安裝
下載 ges mage ima 雲服務 url install 公司 服務器 背景: 公司的阿裏雲服務器上總是報這個錯 網上百度無果後 打算重裝一下yum 1.下載 wget http://yum.baseurl.org/download/3.2/yum-3.2.
linux下jenkins安裝
結果 style content 下載地址 文件夾 csdn get clas http 在安裝jenkins之前。首先確認jdk和tomcat,maven已經配置好 詳細配置方法,請看的我博客。 jdk:jdk的安裝與配置 tomcat:tomcat的安裝與配置 ma
linux下memcached安裝以及啟動
啟動參數 actor 是否 設置 查看 解決 bsp rem 內存 1.下載memcached服務器端安裝文件 版本: memcached-1.4.2.tar.gz 下載地址:http://www.danga.com/memcached/download.
Linux 下MySQL 安裝與卸載
word stat client int etc dpkg init net 是否 參考博客:http://www.cnblogs.com/steven_oyj/archive/2010/05/24/1742808.html http://www.linuxidc.com/
Linux下 剛安裝完mysql 修改密碼
itl root密碼 date 修改 b- text password pda tex 在Centos中安裝MySQL後默認的是沒有root密碼的,默認的是回車, 那麽為了方便需要修改密碼。 沒有密碼為MYSQL加密碼: mysql -uroot -p 回車 提示輸入密
Linux下MongoDB安裝
pan b- oca 命令行 export spa $path cal -c 1. 下載壓縮包 wget -c http://downloads.mongodb.org/linux/mongodb-linux-i686-2.4.9.tgz 2. 解壓 tar -xzvf m
Db2數據庫在Linux下的安裝和配置
fig 用戶密碼 oca authent linux token reat local ken 一.DB2數據庫的安裝和配置: 1.安裝完成後,需要增加三個操作系統的組和三個操作系統用戶,如下: groupadd -g 999 db2iadm1 #(管理實例的組) gro
Linux下php安裝Redis擴展
centos 6 end pecl php.ini restart ext 目錄 安裝完成 con http://pecl.php.net/package/redis 安裝環境:CentOS 6.4 1、下載 下載地址:http://pecl.php.n
在Linux下編譯安裝memcached
linux memcache 一.在編譯安裝之前,先安裝系統所需要的相關庫文件#yum -y install gcc gcc-c++ make cmake libtool autoconf libaio二.下載相應的依賴庫和memcached源碼包1.從http://libevent.org/下載li
centos/linux下的安裝Tomcat
con utf src jdk 關閉 配置 class 快速 star 1.啟動tomcat時候需要JDK依賴 如果沒有安裝的請移步到該鏈接Centos/linux下的JDK安裝 2.從官網上下載tomcat壓縮包 wget -c http://apache.f
centos/linux下的安裝Maven
環境變量 bsp roo 解壓 png http ash highlight ror 1.保證該項目安裝了JDK 請在系統中輸入java -version查看該命令是否存在 如果沒有安裝JDK請移步到Centos/linux下的JDK安裝 2.下載Maven
linux下nginx安裝php
啟動 end pen ini 找不到 令行 pdo 主配置文件 ref 把php安裝包上傳到linux的/usr/local/src 1.解壓 cd /usr/local/src tar zxvf php-5.6.9.tar.gz cd php-5.6.9
centos/linux下的安裝Nginx
bsp ima .org nts open spa nbsp make figure 1.安裝gcc編譯器 先查看gcc編譯器是否安裝 在shell控制臺輸入gcc-v 如果沒有安裝請看下一步 使用yuma安裝gcc yum intsall gcc 看到如下