偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

在邊緣處部署Kafka的用例與架構(gòu)

譯文
開發(fā) 前端 Kafka
本文通過(guò)介紹邊緣處Kafka的用例與架構(gòu),幫助您更好地了解如何在各個(gè)行業(yè)中,利用事件流和工具來(lái)構(gòu)建從邊緣到云端的物聯(lián)網(wǎng)架構(gòu)。

【51CTO.com快譯】如今,在IoT(物聯(lián)網(wǎng))的邊緣處,使用Apache Kafka來(lái)進(jìn)行事件流傳輸,已不再是什么高深的技術(shù)了。作為一種通用的方法,Kafka在邊緣處提供了與云端、以及數(shù)據(jù)中心,相同的開放、靈活且可擴(kuò)展的架構(gòu)。它是橫跨IoT和非IoT(如:傳統(tǒng)數(shù)據(jù)中心和云端基礎(chǔ)架構(gòu))的流式神經(jīng)系統(tǒng)的基本組件。實(shí)際上,Kafka可以被部署在零售商店、手機(jī)信號(hào)塔、火車、小型工廠、以及飯店等各種邊緣位置。

本文將重點(diǎn)向您介紹Kafka客戶和Kafka代理(brokers)在跨行業(yè)邊緣處的用例與架構(gòu),其中包括邊緣的處理、集成、去耦、低延遲、以及經(jīng)濟(jì)高效的數(shù)據(jù)處理。

Kafka在邊緣的類別和體系架構(gòu)

大多數(shù)物聯(lián)網(wǎng)項(xiàng)目的構(gòu)建,都與在數(shù)據(jù)中心或云端的普通Kafka項(xiàng)目有著本質(zhì)的區(qū)別。它們無(wú)法提供可靠的Kafka集群,以及在云端建立穩(wěn)定的網(wǎng)絡(luò)連接,而具有如下的邊緣功能:

  • 由于沒有與中央數(shù)據(jù)中心、或云端的高可用性連接,因此不具備一些本地的預(yù)處理,低延遲的實(shí)時(shí)分析,低帶寬的斷續(xù)連接等,而離線式的業(yè)務(wù)連續(xù)就顯得非常重要。
  • 項(xiàng)目通常需要在零售店、火車、飯店、手機(jī)信號(hào)塔、小型工廠等數(shù)百個(gè)地點(diǎn)部署Kafka代理。因此,單個(gè)代理雖然不需要高可用性,但是要能夠承受背壓(backpressure),并提供本地的處理能力。
  • Kafka代理(不僅是客戶端)需要低空間占用率,少接觸,以及盡量少的DevOps安裝必需性(即:幾乎沒有IT人員到現(xiàn)場(chǎng)運(yùn)維Kafka)。因此,使用經(jīng)過(guò)認(rèn)證的OEM硬件,是在邊緣安裝和操控Kafka的絕佳選擇。
  • 許多邊緣用例都會(huì)涉及到傳感器和遙測(cè)數(shù)據(jù)(telemetry data)。與不能丟失每條交易數(shù)據(jù)的電商系統(tǒng)不同,IoT應(yīng)用場(chǎng)景允許在每秒處理數(shù)百萬(wàn)條消息的應(yīng)用中,丟失少量消息,而且不會(huì)影響到最終的計(jì)算結(jié)果。
  • 混合云或非云:消費(fèi)物聯(lián)網(wǎng)(Consumer IoT,CIoT)會(huì)涉及到智能家居、共享乘車、零售商店等環(huán)境,而工業(yè)物聯(lián)網(wǎng)(Industrial IoT,IIoT)則會(huì)涉及到汽車、食品、能源等生產(chǎn)場(chǎng)景。
  • 通常包含了傳感器、主機(jī)、移動(dòng)設(shè)備等成千上萬(wàn)個(gè)連接接口。

邊緣處Kafka的用例

總的說(shuō)來(lái),Kafka在邊緣處的體系架構(gòu)和部署場(chǎng)景會(huì)包括:數(shù)據(jù)集成,預(yù)處理,云端復(fù)制,邊緣大(小)數(shù)據(jù)的處理和分析,連接中斷時(shí)的脫機(jī)方案,具有數(shù)百個(gè)點(diǎn)位的極低硬件空間占用率方案,以及非高可用性的方案等。下面,我們來(lái)看幾個(gè)典型行業(yè)的應(yīng)用:

  • 公共服務(wù)部門:由政府行政機(jī)構(gòu)牽頭的公共交通管理,來(lái)自不同汽車制造商的各種車聯(lián)網(wǎng)平臺(tái)的集成,圖像捕獲和處理,物聯(lián)網(wǎng)安全等智慧城市的項(xiàng)目。
  • 運(yùn)輸/物流/鐵路/航空:在列車上,Kafka可用于離線處理和本地存儲(chǔ),航旅信息的Track&Trace(包括延遲或取消等信息的跟蹤),實(shí)時(shí)的用戶忠誠(chéng)度平臺(tái)(包括艙位的升級(jí),休息室的使用權(quán))。
  • 汽車/航天/半導(dǎo)體/化工/食品等制造業(yè):物聯(lián)網(wǎng)售后客戶服務(wù),機(jī)器和車輛的OEM,嵌入式標(biāo)準(zhǔn)軟件(如:ERP或MES系統(tǒng)),設(shè)備/機(jī)器/生產(chǎn)線的數(shù)字孿生/流程,以及通過(guò)監(jiān)控工廠的生產(chǎn)線,執(zhí)行預(yù)測(cè)性的維護(hù),質(zhì)量控制,儀表板/車間/外圍健康狀況的跟蹤等。
  • 能源/公用事業(yè)/石油和天然氣:智能家居/建筑/電表,遠(yuǎn)程設(shè)備的監(jiān)控(如:鉆探機(jī)、風(fēng)車或采礦機(jī)),針對(duì)管道和煉油操作的預(yù)測(cè)性異常檢測(cè)與故障診斷。
  • 電信/媒體:OSS(運(yùn)營(yíng)支撐系統(tǒng))的實(shí)時(shí)監(jiān)控,指標(biāo)報(bào)告,問題分析,根本原因分析,網(wǎng)絡(luò)設(shè)備和基礎(chǔ)設(shè)施(如:路由器、交換機(jī)、及其他網(wǎng)絡(luò)設(shè)備)的響應(yīng),BSS(業(yè)務(wù)支撐系統(tǒng))的客戶體驗(yàn),OTT服務(wù)(各種第三方移動(dòng)應(yīng)用的集成),以及5G邊緣(如:街道上的傳感器)設(shè)備的狀態(tài)。
  • 醫(yī)療保?。涸卺t(yī)院中實(shí)施追蹤,遠(yuǎn)程監(jiān)控,設(shè)備傳感器分析等。
  • 零售/食品/餐廳/銀行業(yè)務(wù):客戶溝通,交叉銷售,忠誠(chéng)度分析,零售付款,庫(kù)存盤點(diǎn),PoS機(jī)集成,遠(yuǎn)程CRM集成,以及EFTPOS(銷售點(diǎn)的電子資金轉(zhuǎn)帳)。

我們?cè)?jīng)為一個(gè)零售快餐連鎖品牌--Chic-fil-A,部署了針對(duì)邊緣計(jì)算的相關(guān)服務(wù)。我們?cè)谄?000家餐廳中都部署了Kubernetes集群(請(qǐng)參見--https://www.infoq.com/presentations/chick-fil-a-k8-clusters/),以便在沒有互聯(lián)網(wǎng)連接的情況下,仍然可以憑借著邊緣計(jì)算實(shí)現(xiàn)實(shí)時(shí)的分析(請(qǐng)參見--https://medium.com/@cfatechblog/edge-computing-at-chick-fil-a-7d67242675e2)。下圖是他們的硬件邊緣設(shè)備,外觀體積非常小,內(nèi)部配置了Intel四核處理器、8 GB RAM和SSD。

邊緣架構(gòu)示例:運(yùn)輸和物流行業(yè)的Kafka

讓我們通過(guò)一個(gè)鐵路公司的特定案例,來(lái)具體討論邊緣處的Kafka混合方案。該方案利用離線式邊緣處理,實(shí)現(xiàn)了客戶通信,云端復(fù)制分析,以及與第三方合作伙伴的接口和API相集成。雖然這是一個(gè)鐵路和運(yùn)輸行業(yè)的例子,但是我們可以輕松地將其映射到其他的行業(yè)中。

混合架構(gòu)—從邊緣到云端

設(shè)想,一列火車正在邊緣處對(duì)產(chǎn)生的信息進(jìn)行局部處理。如果有互聯(lián)網(wǎng)連接和免費(fèi)的網(wǎng)絡(luò)資源,那么這列火車會(huì)將相關(guān)的數(shù)據(jù)實(shí)時(shí)復(fù)制到云端。而如果火車在行進(jìn)中失去網(wǎng)絡(luò)連接,那么Kafka將處理背壓,并在網(wǎng)絡(luò)連接恢復(fù)時(shí)將數(shù)據(jù)復(fù)制到云端。下圖是在邊緣和云端用到的Kafka混合架構(gòu):

Kafka在邊緣處的事件流

如下圖所示,火車在邊緣處使用Apache Kafka,實(shí)現(xiàn)對(duì)實(shí)時(shí)消息/事件流的傳遞和背壓處理。

在掉線/離線場(chǎng)景中使用Kafka

火車在駛過(guò)隧道或到達(dá)沒有網(wǎng)線連接的區(qū)域時(shí),就會(huì)出現(xiàn)離線的情況。此時(shí),我們需要火車上的邊緣設(shè)備仍然可以進(jìn)行本地處理。畢竟,業(yè)務(wù)連續(xù)性是改善客戶體驗(yàn)和增加銷售量的關(guān)鍵因素。即使火車處于離線,乘客仍然需要通過(guò)移動(dòng)應(yīng)用,來(lái)查看時(shí)刻表信息,在餐廳購(gòu)買食物,或在火車的本地服務(wù)器上觀看電影。同時(shí),一旦火車重建互聯(lián)網(wǎng)連接,乘客的購(gòu)買交易將會(huì)被轉(zhuǎn)移到云端的用戶忠誠(chéng)度系統(tǒng)中,需要查詢的最新消息也會(huì)從云端被傳遞(consume)過(guò)來(lái),并存儲(chǔ)在火車的邊緣--Kafka代理處。下圖展示了Kafka在離線和斷開連接的模式下,如何在邊緣處進(jìn)行數(shù)據(jù)處理。

跨公司的Kafka和邊緣整合

由于數(shù)據(jù)處理會(huì)在邊緣(如:火車)和云端系統(tǒng)(如:CRM、忠誠(chéng)度系統(tǒng)等)之間的整合系統(tǒng)中持續(xù)發(fā)生,因此不同的合作伙伴也要進(jìn)行此類整合。與通過(guò)非擴(kuò)展性的同步REST API調(diào)用/API管理,進(jìn)行合作伙伴間的整合相比,使用Kafka原生的事件流復(fù)制機(jī)制,是一種更好、更具可擴(kuò)展性的方法。下圖展示了合作伙伴之間如何進(jìn)行跨公司的Kafka復(fù)制與API管理。

在邊緣部署Kafka的基礎(chǔ)架構(gòu)和硬件要求

下面我們來(lái)討論如何在邊緣處部署Kafka。注意,Kafka需要目標(biāo)系統(tǒng)具有一定的計(jì)算能力。這取決于您正在使用的:硬件供應(yīng)商、基礎(chǔ)架構(gòu)、特定的SLA、以及高可用性要求等諸多因素。值得慶幸的是,Kafka可以被部署在包括裸金屬(bare metal)、虛擬機(jī)、容器、Kubernetes在內(nèi)的許多基礎(chǔ)架構(gòu)中。而當(dāng)前廠商能夠生產(chǎn)的、可被用在邊緣處的最小芯片通常具有4GB、8GB、甚至16GB的RAM。

在實(shí)際應(yīng)用中,運(yùn)行Kafka所需的最低硬件配置為:?jiǎn)魏颂幚砥?+ 幾個(gè)100MB的RAM。該配置已經(jīng)能夠讓單個(gè)Kafka節(jié)點(diǎn)(復(fù)制因子 = 1)以超過(guò)100Mb/sec的吞吐量進(jìn)行邊緣處理了。當(dāng)然,實(shí)際數(shù)值也會(huì)取決于分區(qū)的數(shù)量、消息的大小、網(wǎng)絡(luò)的速度等各方面的因素。這與數(shù)據(jù)中心或云端的性能和可擴(kuò)展性肯定是沒法比的。

所以說(shuō),您可以將Kafka代理部署在樹莓派(Raspberry Pi)上,但不能部署到小型嵌入式設(shè)備上,畢竟我們可以在設(shè)備上運(yùn)行Kafka客戶端。

在邊緣處部署Kafka的“Confluent Way(融合方式)”

從技術(shù)角度來(lái)看,在邊緣處部署Kafka與在數(shù)據(jù)中心或云端比較類似,只是環(huán)境和要求有所不同。而且一些附加的功能還會(huì)方便我們部署和操作Kafka。下面,讓我們來(lái)了解一下Confluent部署方式的創(chuàng)新與差異化功能:

1. Confluent服務(wù)器包含了Kafka代理和各種增強(qiáng)型功能,其中包括:自平衡群集、分層存儲(chǔ)、嵌入式REST API、服務(wù)器端模式驗(yàn)證等。它可以被部署為單個(gè)節(jié)點(diǎn)(非常輕便,但不具備高可用性)或群集模式(主要針對(duì)依賴于邊緣處高可用性的關(guān)鍵任務(wù)負(fù)載)。

2. 雖然目前該方式仍需要ZooKeeper作為附加組件,以實(shí)現(xiàn)協(xié)同工作,但是預(yù)計(jì)2021年將不再需要。屆時(shí),它將是一個(gè)由Kafka支持的、獨(dú)立且單流程化的邊緣解決方案。

3. 群集鏈接(Cluster Linking,請(qǐng)參見--https://www.confluent.io/blog/kafka-cluster-linking-with-confluent-platform)允許所有小的Kafka邊緣站點(diǎn)使用Kafka協(xié)議,連接到數(shù)據(jù)中心或云端更大的Kafka群集中,而無(wú)需使用諸如Confluent Replicator或MirrorMaker等其他工具與架構(gòu)。據(jù)此,開發(fā)人員可以大幅減少在基礎(chǔ)架構(gòu)上的成本與工作量。

4. 使用Confluent的工具集,來(lái)進(jìn)行監(jiān)控和主動(dòng)支持(Proactive Support,請(qǐng)參見--https://docs.confluent.io/5.4.0/proactive-support.html)。例如,一個(gè)控制中心可以監(jiān)控幾個(gè)不同的遠(yuǎn)程Kafka群集。受監(jiān)控的目標(biāo)不僅包括技術(shù)架構(gòu),還包括應(yīng)用程序,以及端到端的集成。而Confluent Telemetry Reporter(請(qǐng)參見--https://docs.confluent.io/current/kafka/telemetry.html#what-data-is-sent-and-how-it-is-used)則會(huì)從邊緣站點(diǎn)收集相關(guān)的數(shù)據(jù)。

5. 目前,Kubernetes(MicroK8s Kubernetes發(fā)行版,請(qǐng)參見--https://microk8s.io/)正在成為許多邊緣部署的首選編排平臺(tái)。Confluent Operator恰好能以CRD(自定義資源定義,https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/)的方式,提供了對(duì)邊緣處單一代理、或群集部署的滾動(dòng)升級(jí)、以及安全自動(dòng)化等操作功能。前文提到的Chic-fil-A其在2000多家快餐店中運(yùn)行著Kubernetes(請(qǐng)參見--https://medium.com/@cfatechblog/edge-computing-at-chick-fil-a-7d67242675e2),并提供各項(xiàng)低延遲的邊緣服務(wù),恰恰是Confluent Operator在Confluent Cloud和數(shù)據(jù)中心內(nèi)Confluent Platform上進(jìn)行大型實(shí)際部署的成功案例。當(dāng)然,Kubernetes是按需選用的。有些邊緣處在使用了Kubernetes后,反而增加了復(fù)雜性,以及對(duì)于有限資源的耗費(fèi)。

6. 由于數(shù)據(jù)集成和數(shù)據(jù)處理是邊緣計(jì)算的關(guān)鍵,Confluent提供了用于新舊系統(tǒng)的連接器,其中包括針對(duì)PLC、OPC-UA和IIoT集成的PLC4X(請(qǐng)參見--https://www.kai-waehner.de/blog/2019/09/02/apache-kafka-ksql-and-apache-plc4x-for-iiot-data-integration-and-processing/)、數(shù)據(jù)庫(kù)CDC的連接器、MQ與MQTT的集成、云端連接器、以及用于高安全性或“骯環(huán)境”中的單向UDP網(wǎng)絡(luò)的Data Diode連接器(請(qǐng)參見--https://docs.confluent.io/current/connect/kafka-connect-data-diode/index.html)。當(dāng)然,Kafka Streams和ksqlDB則允許輕量級(jí)且功能強(qiáng)大的事件流處理。

7. 輕量級(jí)邊緣客戶端(如:嵌入式設(shè)備)可以利用Kafka和REST代理的C與C++客戶端上的API(請(qǐng)參見--https://github.com/edenhill/librdkafka),通過(guò)HTTP(S)與任何編程語(yǔ)言進(jìn)行通信。這對(duì)于許多計(jì)算能力有限的低功率邊緣設(shè)備來(lái)說(shuō)是非常重要的。畢竟,我們?cè)谶@些設(shè)備中無(wú)法部署Java、或類似的“資源密集型(resource-hungry)技術(shù)”。

8. 您也可以選擇將已認(rèn)證的、預(yù)配置的OEM硬件放置在邊緣處,將其連接到LAN或WiFi上,然后使用由硬件商提供的遠(yuǎn)程軟件,對(duì)基礎(chǔ)架構(gòu)進(jìn)行管理和監(jiān)控。“在Hivecell上進(jìn)行可行性處理”的視頻(請(qǐng)參見--https://medium.com/hivecell/feasible-video-processing-on-hivecell-a28f9a059ccf)展示了如何通過(guò)Kafka集群、Kafka Streams應(yīng)用、以及用于圖像識(shí)別的嵌入式機(jī)器學(xué)習(xí)模型,進(jìn)行邊緣分析。

小結(jié)

作為絕佳的邊緣解決方案,Kafka使您能夠在邊緣處、數(shù)據(jù)中心和云端,部署同樣開放、可靠、且可擴(kuò)展的技術(shù)。希望上述介紹的有關(guān)邊緣處Kafka的用例與架構(gòu),能夠幫助您更好地了解如何在各個(gè)行業(yè)中,利用事件流和工具來(lái)構(gòu)建從邊緣到云端的物聯(lián)網(wǎng)架構(gòu)。

原文標(biāo)題:Kafka at the Edge — Use Cases and Architectures,作者:Kai Wähner

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2022-08-03 14:04:33

邊緣計(jì)算云計(jì)算

2020-01-15 09:00:00

物聯(lián)網(wǎng)邊緣計(jì)算Kafka

2020-10-11 16:55:06

邊緣計(jì)算網(wǎng)絡(luò)云計(jì)算

2022-09-02 17:51:32

邊緣計(jì)算物聯(lián)網(wǎng)

2022-08-24 10:48:44

邊緣物聯(lián)網(wǎng)邊緣計(jì)算物聯(lián)網(wǎng)

2023-10-09 06:55:48

云計(jì)算部署互聯(lián)網(wǎng)

2022-09-23 14:05:53

邊緣計(jì)算工業(yè)部門

2021-12-06 13:59:20

邊緣計(jì)算互聯(lián)網(wǎng)5G

2024-04-17 16:26:25

邊緣計(jì)算云計(jì)算制造業(yè)

2023-10-24 15:56:08

邊緣計(jì)算

2024-08-23 16:04:45

2019-12-05 17:52:12

人工智能機(jī)器人網(wǎng)絡(luò)安全

2022-05-18 09:21:44

邊緣計(jì)算云計(jì)算CIO

2023-11-02 09:00:00

Kubernetes集群

2023-07-26 11:26:42

2020-12-09 15:02:06

AI深度學(xué)習(xí)邊緣

2020-12-10 09:28:46

AI部署深度學(xué)習(xí)

2024-06-03 09:44:33

2020-06-22 10:33:52

云計(jì)算邊緣計(jì)算IT

2023-01-18 10:44:15

RedpandaKafkaAPI
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)