如何在Ubuntu-16.04上配置Apache Kafka叢集!
在本教程中,我們將學習如何在基於Ubuntu的環境中安裝開源Apache Kafka平臺以及Java SDK。
介紹
Apache Kafka是一個免費的開源流處理軟體平臺,由Apache軟體基金會用Scala編寫。它是一種分散式訊息代理,專門用於有效處理大量實時資訊。與其他訊息代理系統(如ActiveMQ和RabbitMQ)相比,Apache Kafka具有更高吞吐量。Apache Kafka基於提交日誌,允許使用者訂閱並將資料釋出到任意數量的系統或實時應用程式。
Apache Kafka可以部署在單個Web伺服器上,也可以部署在分散式叢集環境中。Apache Kafka有四個主要的API:Producer API,Consumer API,Connector API和Streams API。
特徵:
-
支援並行資料載入到Hadoop;
-
高吞吐量,即便使用適中的硬體,也能支援每秒數十萬條訊息;
-
持久的訊息傳遞與O(1)磁碟結構,提供穩定的時間效能,即使有數TB的儲存訊息;
-
分散式系統可輕鬆擴充套件,無需停機。
本教程要求
-
安裝Ubuntu 16.04伺服器的雲ECS平臺;
-
配置靜態IP地址192.168.0.103;
-
在伺服器上設定Root密碼。
啟動雲ECS例項
首先,登入雲ECS控制檯,你可以選擇喜歡的雲平臺。建立一個新的ECS例項,選擇Ubuntu 16.04作為具有至少2GB RAM的作業系統。 連線到ECS例項並以root使用者身份登入。
登入到Ubuntu 16.04例項後,執行以下命令以使用最新的可用軟體包更新基本系統:
apt-get update -y
安裝Java
Apache Kafka需要Java執行時環境,因此需要在系統中安裝最新版本的Java。預設情況下,Ubuntu 16.04儲存庫中不提供最新版本的Java。因此,我們需要將Java儲存庫新增到系統中,可以透過執行以下命令來執行此操作:
add-apt-repository ppa:webupd8team/java
接下來,透過執行以下命令更新儲存庫並安裝Java:
apt-get install oracle-java8-installer -y
安裝Java後,可以使用以下命令檢查Java版本:
java -version
輸出:
java version "1.8.0_161" Java(TM) SE Runtime Environment (build 1.8.0_161-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
安裝Zookeeper
Apache Kafka依靠Zookeeper維護配置資訊,提供分散式同步,命名和提供組服務。因此,我們需要將Zookeeper安裝到系統中,可以透過執行以下命令來安裝它:
apt-get install zookeeperd -y
預設情況下,Zookeeper偵聽埠2181,可以透過執行以下命令來檢查它:
netstat -nlpt | grep ':2181'
你應該可以看到以下輸出:
tcp6 0 0 :::2181 :::* LISTEN
安裝Apache Kafka
首先,你需要從Apache網站下載最新版本的Kafka,可以透過執行以下命令來下載:
wget
下載完成後,使用以下命令解壓縮檔案:
tar -xvzf kafka_2.12-1.1.0.tgz
接下來,將解壓縮目錄複製到/ opt:
cp -r kafka_2.12-1.1.0 /opt/Kafka
透過執行以下指令碼啟動Kafka伺服器:
/opt/Kafka/bin/kafka-server-start.sh /opt/Kafka/config/server.properties
你應該可以看到以下輸出:
[2018-05-20 08:13:54,271] INFO [/config/changes-event-process-thread]: Starting (kafka.common.ZkNodeChangeNotificationListener$ChangeEventProcessThread) [2018-05-20 08:13:54,449] INFO Kafka version : 1.1.0 (org.apache.kafka.common.utils.AppInfoParser) [2018-05-20 08:13:54,461] INFO Kafka commitId : fdcf75ea326b8e07 (org.apache.kafka.common.utils.AppInfoParser) [2018-05-20 08:13:54,466] INFO [KafkaServer id=0] started (kafka.server.KafkaServer)
Kafka伺服器正在偵聽埠9092。
測試Apache Kafka
現在,透過執行以下命令,使用單個分割槽和僅一個副本建立名為Topic1的第一個主題:
/opt/Kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic Topic1
應該看到以下輸出:
Created topic "Topic1".
現在,你可以透過執行以下命令在Kafka上檢視已建立的主題:
/opt/Kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181
應該可以看到以下輸出:
Topic1
現在,使用以下命令將示例訊息釋出到名為Topic1的Apache kafka主題:
/opt/Kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Topic1 >>Hello Kafka >How R You >Ok >
接下來,執行Kafka consumer命令從Kafka叢集讀取資料並將訊息顯示到標準輸出:
/opt/Kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic Topic1 --from-beginning
以下輸出應該可以看到釋出的訊息:
Hello Kafka How R You OK
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31077337/viewspace-2213964/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Apache Kafka – 叢集架構ApacheKafka架構
- Kafka叢集配置Kafka
- 如何在 Rocky Linux 上安裝 Apache Kafka?LinuxApacheKafka
- Zookeeper叢集 + Kafka叢集Kafka
- 如何在CentOS上建立Kubernetes叢集CentOS
- zookeeper叢集及kafka叢集搭建Kafka
- kafka叢集搭建Kafka
- alpakka-kafka(5)-kafka叢集配置與分散式應用部署Kafka分散式
- 安裝Kafka叢集Kafka
- 初識kafka叢集Kafka
- SpringBoot 和 Kafka 叢集Spring BootKafka
- kafka-2.11叢集搭建Kafka
- 06 . ELK Stack + kafka叢集Kafka
- 快速安裝 kafka 叢集Kafka
- linux搭建kafka叢集,多master節點叢集說明LinuxKafkaAST
- 用 Docker 快速搭建 Kafka 叢集DockerKafka
- 安裝Zookeeper和Kafka叢集Kafka
- 如何在滴滴雲 DC2 上搭建 ETCD 叢集
- redis偽叢集配置Cluster叢集模式Redis模式
- Mac 使用 docker 搭建 kafka 叢集 + Zookeeper + kafka-managerMacDockerKafka
- Zookeeper3.4.14(單叢集)、Kafka_2.12-2.2.2(叢集)安裝Kafka
- KubeSphere 部署 Kafka 叢集實戰指南Kafka
- Docker Elasticsearch 叢集配置DockerElasticsearch
- mysql通過kafka實現資料實時同步(三)——es叢集配置MySqlKafka
- 如何在滴滴雲 DC2 上搭建高可用 MySQL 叢集MySql
- Kafka 叢集如何實現資料同步?Kafka
- RabbitMQ和Kafka的高可用叢集原理MQKafka
- Kafka叢集搭建及必知必會Kafka
- linux 原始碼搭建Kafka叢集,100%有效Linux原始碼Kafka
- Kubernetes 叢集搭建(上)
- 39_配置redis叢集Redis
- dubbo&nacos叢集配置
- linux 怎麼配置叢集Linux
- es 叢集配置推薦
- vCenter6.7 叢集配置
- Etcd叢集靜態配置
- Kafka高可用叢集部署與配置指南Kafka
- 如何在AWS上構建Apache DolphinSchedulerApache