國產自研、安全、高可用——袋鼠雲大數據基礎平臺EasyMR築基企業數字化轉型

来源:https://www.cnblogs.com/DTinsight/archive/2022/12/01/16942385.html
-Advertisement-
Play Games

近年來,國際形勢的風雲變幻,中美雙邊關係的惡化,自2013年“棱鏡門”事件之後,又一次警示國人,對於科技領域,只有自己掌握核心關鍵技術,實現自主可控,才能擺脫越來越頻繁的“卡脖子事件”,保證企業和國家信息安全。 俗話說“基礎不牢,地動山搖“。大數據基礎平臺什麼?是打地基的,是重中之重,地基扎得越深、 ...


近年來,國際形勢的風雲變幻,中美雙邊關係的惡化,自2013年“棱鏡門”事件之後,又一次警示國人,對於科技領域,只有自己掌握核心關鍵技術,實現自主可控,才能擺脫越來越頻繁的“卡脖子事件”,保證企業和國家信息安全。

俗話說“基礎不牢,地動山搖“。大數據基礎平臺什麼?是打地基的,是重中之重,地基扎得越深、打得越牢,上面的建築才能越穩定。可以說,數字化轉型的“萬丈高樓”起於基礎平臺,具備自主可控的平臺建設能力,是真正意義上一切的前提。

袋鼠雲今年7月最新推出自研大數據基礎平臺EasyMR,該產品提供Hadoop、Hive、Spark、Trino、HBase、Kafka等組件的自動化安裝、中心化管理與集群監控告警功能,完全相容Apache開源生態,支持企業級安全管控,一鍵開啟LDAP+Kerberos+Ranger認證許可權體系,以及提供一站式運維管理平臺。

file

結合袋鼠雲在大數據領域多年的實踐經驗和沉澱積累,袋鼠雲大數據基礎平臺EasyMR適配多種信創軟硬體,可以更加自主化地幫助企業快速構建大數據平臺,降低運維成本,極大提高集群管理效率。

一、EasyMR的系統架構

先來看看EasyMR的系統架構,由主體部分和監控告警組件共同構成:

file

EasyMR的主體部分由以下三部分構成:server端(matrix)、agent管控服務(easyagent-server)、agent管控客戶端(sidecar):

matrix

matrix主要用於用戶前端交互,將用戶期望對大數據集群的對應運維操作通過web UI的方式呈獻給用戶,也可以通過這種方式將用戶的運維指令下發到Hadoop集群中,比如安裝HDFS Namenode、啟動HDFS Namenode、停止HDFS Namenode等等,從而完成用戶與Hadoop集群的交互。

matrix一般不部署在大數據服務節點上,是作為管控服務單獨部署。

easyagent-server

作為matrix與easyagent-sidecar之間的中間服務,easyagent-server向上作為http服務端提供給業務層matrix一些restful介面,向下作為rpc服務端提供給底層easyagent-sidecar一些rpc介面供遠程調用,從而將業務層與底層服務成功解耦。

並且支持高可用分散式部署,當集群壓力增加時可以增加節點部署,緩解集群壓力。與matrix一樣,easyagent-server一般不部署在大數據服務節點上,是作為管控服務單獨部署。

easyagent-sidecar

easyagent-sidecar是由golang語言開發,負責執行easyagent-server下發的指令,進行大數據基礎服務的安裝、部署、啟動、停止、配置下發等操作。同時還負責進行集群內主機和服務監控信息以及心跳狀態監控上報,當matrix檢測到sidecar未及時上報心跳數據時在頁面會顯示主機狀態異常。

雖然sidecar是與大數據集群最近的一個組件,但是它不保存任何跟集群相關的內容,只負責執行easyagent-server下發的命令以及自身主機與服務的心跳與健康檢查上報。easyagent-sidecar部署在大數據服務節點上。

file
easyagent-server/easyagent-sidecar架構圖

除了上述三種基礎組件之外,EasyMR作為一個完備的大數據基礎平臺,對於集群的監控告警也引入了一些開源組件(prometheus、grafana),並根據需求對其進行了相應的二次開發,同時EasyMR還自研了專用告警通道發送組件(dt-alert):

prometheus

prometheus是由 SoundCloud 開源的監控告警解決方案,從 2012 年開始編寫代碼,2015 年在 GitHub 上開源,2016 年 Prometheus 成為繼 Kubernetes 之後,CNCF (Cloud Native Computing Foundation)中的第二個項目成員,也是第二個正式畢業的項目,是新一代開源解決方案。

對於使用EasyMR接入過的主機以及使用EasyMR部署的大數據服務,我們會為其啟動對應的prometheus exporter(如主機會使用node_exporter),prometheus會定期抓取主機與服務的監控數據並寫入存儲中,便於頁面查詢展示以及針對監控數據進行告警。

grafana

grafana是一個監控儀錶系統,它是由 Grafana Labs 公司開源的系統監測 (System Monitoring) 工具。它可以極大地助力簡化監控的複雜度,用戶只需要提供需要監控的數據,它就可以幫助生成各種可視化儀錶。同時它還有報警功能,可以在系統出現問題時做到及時通知。

EasyMR將開源版本的grafana進行了二次開發,做到無痕嵌入EasyMR UI中,大大豐富了監控圖表的多樣化展示。除此之外,對grafana的儀錶盤配置告警規則後還可以對接自研的dt-alert組件進行告警發送。

file
DataNode監控大盤

dt-alert

dt-alert是袋鼠雲自研的專用告警通道發送組件,原生支持郵件、簡訊、釘釘機器人、企業微信四種方式發送告警信息,同時也支持可擴展的自定義插件發送方式,用戶可以根據我們設定的介面規範開發自定義插件發送告警信息到內部告警通道中。
file
添加告警通道

二、使用EasyMR部署Hadoop的操作原理

結合上述對EasyMR核心組件的描述,下文使用Hadoop集群的實例為大家說明,在使用EasyMR部署Hadoop時的底層操作原理:

Part.1

本地部署一套EasyMR服務,得到前端頁面訪問入口。

Part.2

通過前端頁面進入主機接入頁面進行主機接入操作,此時matrix會向easyagent-server發送請求在指定主機上安裝easyagent-sidecar,easyagent-server會將安裝腳本下發到對應主機,easyagent-sidecar安裝完畢之後會通過回調的方式通知matrix,完成主機接入。

此外,EasyMR還會在主機上安裝node_exporter,並將採集配置寫入prometheus配置文件中,無需重啟即可熱載入配置進行主機監控數據採集。

Part.3

頁面選中Hadoop產品包,根據提示進行前期配置觸發部署操作,matrix也是通過easyagent-server向easyagent-sidecar發送下載安裝包、解壓安裝、啟動命令,啟動完成之後easyagent-sidecar會定期對服務進行健康檢查,並將結果通過easyagent-server上報到matrix。

與主機類似,EasyMR還會在主機上安裝對應服務的prometheus exporter,並將採集配置寫入prometheus配置文件中,無需重啟即可熱載入配置進行服務監控數據採集。

Part.4

進入儀錶盤頁面查看Hadoop服務的圖表監控,此時查看的頁面來自於iframe嵌入的grafana。

Part.5

對儀錶盤進行監控告警配置並設置告警發送通道,那麼當告警觸發時(比如HDFS namenode full GC次數過大),grafana會調用dt-alert的介面將告警信息發送到用戶指定的渠道。

三、EasyMR的能力優勢

袋鼠雲大數據基礎平臺EasyMR不僅擁有高效、完備的系統架構,還擁有更多的亮點優勢,主要體現在以下三方面:

全面的國產化適配能力

外部環境漸趨複雜,我國正大力推進信創國產化的進程,逐步將CPU、操作系統、資料庫等基礎軟硬體技術換成國內自主研發的技術,減少對國外產品的依賴。

EasyMR具備極強的國產化適配能力,可靈活部署在多種國產操作系統、CPU、伺服器規格中,具體適配清單如下:

file
後續EasyMR也會繼續適配其餘國產化操作系統、CPU等基礎組件,深耕信創國產化領域,為信創國產化獻出自己的力量。

豐富的組件可擴展性

EasyMR本身提供了豐富的大數據組件,包括但不限於Hadoop、Hive、Spark、Flink、HBase、Kafka、Trino,可以滿足用戶不同需求場景下對大數據集群的一站式創建、管理、部署、運維與監控。
file

除此之外,EasyMR還擁有一套統一的產品包schema定義規範,將產品包完整的生命周期(安裝、啟動、配置、升級、卸載等)通過標準的schema定義表示。

當後續需要添加其餘類型的大數據組件時,無需對EasyMR平臺本身做出改造,只需根據規範定義新組件的產品包即可將其投入EasyMR平臺使用。

支持高可用的可靠性平臺

對於EasyMR系統架構中的多個核心組件,出於對平臺穩定性方面的考慮,EasyMR做到了核心組件支持高可用且分散式可水平擴展。

• 當一臺核心組件因為外界原因宕機後,EasyMR可以保證其餘服務能夠正常運行,包括但不限於服務安裝、啟動、停止、卸載等;

• 當需要接入大數據組件的節點數量增加時可以靈活擴展核心組件的數量以適配,同理,當需要接入大數據組件的節點數量減少時也可以靈活減少核心組件的數量以節省資源。

四、EasyMR使用場景

EasyMR作為一款自主研發、完全可控,致力於助力企業信息化智慧轉型的“企業數據底座”,可以幫助客戶輕鬆應對各類應用場景。

快速搭建Hadoop集群

在當前的大數據運維實踐下,當用戶需要使用Hadoop大數據分散式處理系統的時候,對用戶自身來說前期需要準備硬體環境、部署啟動Hadoop相關大數據組件。但是跟用戶相關的內容是編寫應用程式運行作業,對於不熟悉底層大數據集群的用戶來說,這些前期準備工作非常冗長繁瑣而且出了問題也無法得到及時的解決。

並且在傳統模式下,運維手動部署一套Hadoop集群至少需要3天的,尤其當集群規模較大時,通過手動的方式更加耗費人力與物力,

但是使用EasyMR我們可以快速接入大數據節點並可以通過頁面化的方式一鍵部署Hadoop集群,整個過程可以控制在半個小時內完成,極大提升了運維部署效率。

大數據集群開啟安全

EasyMR通過集成第三方的安全管控服務Kerberos、LDAP和Ranger來分別對大數據集群做用戶安全認證、訪問用戶管理以及用戶數據許可權管控。

對於使用EasyMR部署的大數據集群,用戶可以通過一鍵開啟的方式對大數據組件開啟安全認證,大大節省了傳統模式下的繁重的人工操作。

基於國產化操作系統部署大數據集群

關鍵技術國產化,是DT時代中國企業發展的必然選擇。越來越多企業開始追求軟硬體的國產替代和自主可控。

EasyMR目前已經適配多種國產操作系統與晶元架構,而且還將繼續主動針對國產化軟硬體去做適配,用戶使用EasyMR可以快速部署對應架構下的大數據集群。

寫在最後

作為全鏈路數字化技術與服務提供商,袋鼠雲始終堅持自主研發和國產化路線,為攻剋“卡脖子”難題,在技術創新上不遺餘力。EasyMR基於最新的開源技術,為企業提供大數據基礎設施底座,致力於Cloudera CDP等國外Hadoop商業版的國產化替代。

為了可信、可控、安全的數據未來,袋鼠雲在路上。

對EasyMR感興趣的用戶可以點擊添加【小袋鼠】進行咨詢,進一步瞭解產品詳情。
想瞭解或咨詢更多有關袋鼠雲大數據產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠雲官網:https://www.dtstack.com/?src=szbky

添加【小袋鼠:dtstack001】入qun,免費獲取大數據&開源乾貨

同時,歡迎對大數據開源項目有興趣的同學加入「袋鼠雲開源框架釘釘技術qun」,交流最新開源技術信息,qun號碼:30537511,項目地址:https://github.com/DTStack


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Maven可以使我們在構建項目時需要用到很多第三方類jar包,如下一些常用jar包 而maven的出現可以讓我們避免手動導入jar包出現的某些問題,它可以自動下載那須所需要的jar包 我們只需要在創建的maven項目自動生成的pom.xml中輸入如下代碼 <dependencies> <!--ser ...
  • 很多軟體工程師都認為MD5是一種加密演算法,然而這種觀點是不對的。作為一個 1992 年第一次被公開的演算法,到今天為止已經被髮現了一些致命的漏洞。本文討論MD5在密碼保存方面的一些問題。 ...
  • 經常看到有群友調侃“為什麼搞Java的總在學習JVM調優?那是因為Java爛!我們.NET就不需要搞這些!”真的是這樣嗎?今天我就用一個案例來分析一下。 昨天,一位學生問了我一個問題:他建了一個預設的ASP.NET Core Web API的項目,也就是那個WeatherForecast的預設項目模 ...
  • 這篇文章主要是想針對多進程的創建和一些通信手段來進行一下記錄 創建子進程 關於創建子進程的原型一般都是用的這個,直接fork,這個函數在父進程中調用,在父子進程中各有一個pid_t類型的返回值,父進程中得到的是子進程的ID,子進程中得到的是0值。當然調用失敗就是-1。 //創建進程,然後複製出另一份 ...
  • win11 22h2更穩定了 在win11 22h2發佈後沒多久,我就升級到了這個版本,截止目前已經使用半個月了,談談我的使用感受。 總體要比之前的版本更穩定,表現為筆記本風扇不會突然響,突然卡頓,不過系統更新頻繁比win10多很多。 界面變好看了 外觀上變化較大的就是資源管理器支持標簽頁化 資源管 ...
  • Linux 下使用 Shell 處理文本時最常用的工具有: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk。 ...
  • Linux 系統許可權介紹與使用 介紹 linux中除了常見的讀(r)、寫(w)、執行(x)許可權以外,還有其他的一些特殊或隱藏許可權,熟練掌握這些許可權知識的使用,可以大大提高我們運維工作的效率。 讀寫執行(rwx) 在linux系統中文件(文件和目錄)的許可權有三種(r, w, x),分別對應數字許可權 ( ...
  • 同一個數據分析的需求,不同人的SQL代碼效率上會差別很大!本文給大家梳理集中效率優化方法,這也是數據崗面試的高頻問題哦!快學起來~ ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...