cdh版本5.16.2, navigator版本2.15.2
1. 介紹what
Cloudera Navigator也是CDH企業(yè)版的工具之一,定位為一個(gè)數(shù)據(jù)管理工具。目前隨著CDP版本的推廣,該組件已開源。Hadoop大數(shù)據(jù)平臺(tái)擁有存儲(chǔ)與分析任何種類和規(guī)模數(shù)據(jù)的能力,并且將其開放給更多用戶和分析工具。 但是,這同時(shí)也帶來數(shù)據(jù)管理上的挑戰(zhàn):大量的業(yè)務(wù)用戶想自助訪問可發(fā)掘數(shù)據(jù);管理員需要知道數(shù)據(jù)是怎么被用來優(yōu)化分析性能的;安全團(tuán)隊(duì)需要看見數(shù)據(jù)的訪問方式以及它們是怎么滿足合規(guī)性的。一個(gè)大數(shù)據(jù)平臺(tái)必須有能力在整個(gè)企業(yè)內(nèi)解決數(shù)據(jù)管理以及合規(guī)性需求,但同時(shí)不能犧牲大數(shù)據(jù)本身的靈活性和優(yōu)勢(shì)。所以我們需要數(shù)據(jù)管理工具Navigator。

2. 架構(gòu)how

Cloudera Manager會(huì)記錄操作的整個(gè)生命周期,不論是在集群級(jí)別上的操作,還是主機(jī)、角色、服務(wù)、用戶級(jí)別的,都會(huì)記錄下來,比如下載parcel, 啟動(dòng)集群,以及安全相關(guān)的操作:增加用戶、刪除用戶、登錄狀態(tài)。Cloudera Navigator 頁面可以讓管理員或者用戶看到這些操作記錄,也就是audit events。
Navigator主要由審計(jì)服務(wù)器和元數(shù)據(jù)服務(wù)器構(gòu)成,審計(jì)服務(wù)包括時(shí)間戳、用戶名、IP、服務(wù)名稱和操作。元數(shù)據(jù)服務(wù)包括數(shù)據(jù)查詢、標(biāo)簽、數(shù)據(jù)血緣分析等等。(姜黃色部分)


同時(shí),Navigator Audit Server 和 Navigator Metadata Server 的運(yùn)行狀態(tài),由Cloudera Management Service 監(jiān)控和審計(jì)。(也就是下面棕色和黃色藍(lán)色框框部分)
那么他們之間是如何運(yùn)作的呢?Cloudera Manager Agent運(yùn)行在集群中的每個(gè)節(jié)點(diǎn)上,該進(jìn)程會(huì):
? 監(jiān)控本地的審計(jì)日志文件
? 發(fā)送日志里的events給Navigator Audit Server, 如果發(fā)送失敗會(huì)不斷的重試
? 當(dāng)發(fā)送成功后,刪除舊審計(jì)日志
通過以上,我們可以發(fā)現(xiàn),也是工作中遇到的小坑,就是當(dāng)我們把Navigator Audit Server服務(wù)關(guān)閉后,會(huì)導(dǎo)致大量的審計(jì)日志堆積,沒有被發(fā)送,也沒有被自動(dòng)刪除,因此解決方案就是需要定期清理的腳本。
Navigator Audit database 目前是用的mysql, 顯然mysql的性能是無法滿足多天審計(jì)日志分析的,當(dāng)單機(jī)mysql出現(xiàn)瓶頸時(shí),業(yè)內(nèi)目前有兩種方案可供借鑒:對(duì) MySQL 進(jìn)行分庫分表處理,將一臺(tái) MySQL 的壓力分?jǐn)偟?MySQL 集群;對(duì)Navigator Audit Server進(jìn)行 Federation,采用多套 Navigator Audit Server+ MySQL 的架構(gòu),在 Navigator Audit Server 前方設(shè)置代理,按照一定的規(guī)則,對(duì)請(qǐng)求進(jìn)行分發(fā)(此處參考Hive Metastore的解決方案)。
6. 展望to Atlas
在CDP的版本中,原本由Navigator消費(fèi)的元數(shù)據(jù)和審計(jì)日志,比如Hive, Impala, Spark和HBase的審計(jì)日志都需要被配置到Atlas來消費(fèi)。Atlas替代Navigator將會(huì)帶來這些新的變化:
1. 結(jié)合Ranger。
2. Atlas利用kafka來將元數(shù)據(jù)存儲(chǔ)到Hbase和Solr中,利用了分布式存儲(chǔ)提高可靠性和可拓展性
3. 可添加不同源的元數(shù)據(jù)??梢酝ㄟ^REST APIs,消費(fèi)各種源發(fā)送來的元數(shù)據(jù)信息
4. Atlas提供業(yè)務(wù)術(shù)語表界面,該界面可用于管理業(yè)務(wù)術(shù)語,以及數(shù)據(jù)的定義
reference:
(1)https://cloud.tencent.com/developer/article/1078927
(2)http://39.100.211.182:7180/static/help/topics/cn_iu_audit_arch.html
(3)https://docs.cloudera.com/cdp-private-cloud/latest/upgrade-cdh/topics/atlas-migrating-new-to-cdh-users.html