Cloudera Manager分析
目錄
1. 相關(guān)目錄
2. 配置
3. 數(shù)據(jù)庫
4. CM結(jié)構(gòu)
5. 升級
6. 卸載
7. 開啟postgresql遠程訪問
/var/log/cloudera-scm-installer
: 安裝日志目錄。/var/log/*
: 相關(guān)日志文件(相關(guān)服務(wù)的及CM的)。/usr/share/cmf/
: 程序安裝目錄。/usr/lib64/cmf/
: Agent程序代碼。/var/lib/cloudera-scm-server-db/data
: 內(nèi)嵌數(shù)據(jù)庫目錄。/usr/bin/postgres
: 內(nèi)嵌數(shù)據(jù)庫程序。/etc/cloudera-scm-agent/
: agent的配置目錄。/etc/cloudera-scm-server/
: server的配置目錄。/opt/cloudera/parcels/
: Hadoop相關(guān)服務(wù)安裝目錄。/opt/cloudera/parcel-repo/
: 下載的服務(wù)軟件包數(shù)據(jù),數(shù)據(jù)格式為parcels。/opt/cloudera/parcel-cache/
: 下載的服務(wù)軟件包緩存數(shù)據(jù)。/etc/hadoop/*
: 客戶端配置文件目錄。
Hadoop配置文件
配置文件放置于/var/run/cloudera-scm-agent/process/
目錄下。如:/var/run/cloudera-scm-agent/process/193-hdfs-NAMENODE/core-site.xml
。這些配置文件是通過Cloudera Manager啟動相應(yīng)服務(wù)(如HDFS)時生成的,內(nèi)容從數(shù)據(jù)庫中獲得(即通過界面配置的參數(shù))。
在CM界面上更改配置是不會立即反映到配置文件中,這些信息會存儲于數(shù)據(jù)庫中,等下次重啟服務(wù)時才會生成配置文件。且每次啟動時都會產(chǎn)生新的配置文件。
CM Server主要數(shù)據(jù)庫為scm基中放置配置的數(shù)據(jù)表為configs
。里面包含了服務(wù)的配置信息,每一次配置的更改會把當前頁面的所有配置內(nèi)容添加到數(shù)據(jù)庫中,以此保存配置修改歷史。
scm數(shù)據(jù)庫被配置成只能從localhost訪問,如果需要從外部連接此數(shù)據(jù)庫,修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf
文件,之后重啟數(shù)據(jù)庫。運行數(shù)據(jù)庫的用戶為cloudera-scm。
查看配置內(nèi)容
- 直接查詢scm數(shù)據(jù)庫的configs數(shù)據(jù)表的內(nèi)容。
- 訪問REST API:
http://hostname:7180/api/v4/cm/deployment
,返回JSON格式部署配置信息。
配置生成方式
CM為每個服務(wù)進程生成獨立的配置目錄(文件)。所有配置統(tǒng)一在服務(wù)端查詢數(shù)據(jù)庫生成(因為scm數(shù)據(jù)庫只能在localhost下訪問)生成配置文件,再由agent通過網(wǎng)絡(luò)下載包含配置文件的zip包到本地解壓到指定的目錄。
配置修改
CM對于需要修改的配置預(yù)先定義,對于沒有預(yù)先定義的配置,則通過在高級配置項中使用xml配置片段的方式進行配置。而對于/etc/hadoop/下的配置文件是客戶端的配置,可以在CM通過部署客戶端生成客戶端配置。
Cloudera manager主要的數(shù)據(jù)庫為scm,存儲Cloudera manager運行所需要的信息:配置,主機,用戶等。
CM分為Server與Agent兩部分及數(shù)據(jù)庫(自帶更改過的嵌入Postgresql)。它主要做三件事件:
- 管理監(jiān)控集群主機。
- 統(tǒng)一管理配置。
- 管理維護Hadoop平臺系統(tǒng)。
實現(xiàn)采用C/S結(jié)構(gòu),Agent為客戶端負責執(zhí)行服務(wù)端發(fā)來的命令,執(zhí)行方式一般為使用python調(diào)用相應(yīng)的服務(wù)shell腳本。Server端為Java REST服務(wù),提供REST API,Web管理端通過REST API調(diào)用Server端功能,Web界面使用富客戶端技術(shù)(Knockout)。
- Server端主體使用Java實現(xiàn)。
- Agent端主體使用Python, 服務(wù)的啟動通過調(diào)用相應(yīng)的shell腳本進行啟動,如果啟動失敗會重復(fù)4次調(diào)用啟動腳本。
- Agent與Server保持心跳,使用Thrift RPC框架。
在CM中可以通過界面向?qū)壪嚓P(guān)服務(wù)。升級過程為三步:
- 下載服務(wù)軟件包。
- 把所下載的服務(wù)軟件包分發(fā)到集群中受管的機器上。
- 安裝服務(wù)軟件包,使用軟鏈接的方式把服務(wù)程序目錄鏈接到新安裝的軟件包目錄上。
sudo /usr/share/cmf/uninstall-scm-express.sh
, 然后刪除/var/lib/cloudera-scm-server-db/
目錄,不然下次安裝可能不成功。
CM內(nèi)嵌數(shù)據(jù)庫被配置成只能從localhost訪問,如果需要從外部查看數(shù)據(jù),數(shù)據(jù)修改vim /var/lib/cloudera-scm-server-db/data/pg_hba.conf
文件,之后重啟數(shù)據(jù)庫。運行數(shù)據(jù)庫的用戶為cloudera-scm。
posted on 2015-12-25 17:28
xzc 閱讀(435)
評論(0) 編輯 收藏 所屬分類:
hadoop