ClouderaManager的產生背景和應用場景
Apache版本的大數據組件
優點
完全開源,更新速度很快
大數據組件在部署過程中可以深刻了解其底層原理
可以了解各個組件的依賴關系
缺點
部署過程極其復雜,超過20個節點的時候,手動部署已經超級累
各個組件部署完成后,各個為政,沒有統一化管理界面
組件和組件之間的依賴關系很復雜,一環扣一環,部署過程心累
各個組件之間沒有統一的metric可視化界面,比如說hdfs總共占用的磁盤空間、IO、運行狀況等
優化等需要用戶自己根據業務場景進行調整(需要手工的對每個節點添加更改配置,效率極低,我們希望的是一個配置能夠自動的分發到所有的節點上)
ClouderaManager管理的CDH版本大數據組件
Cloudera Manager是用於管理CDH群集的端到端應用程序。
缺點
server和agent需要占用額外的內存和cpu(server占用內存為2G,agent占用內存1G,總共cpu為0.5核)
對linux常用命令需要了解頗深
對hadoop的apache版本有一定的安裝經驗和調優經驗
優點
統一化的可視化界面
自動部署和配置,大數據各類組件(hadoop、hive、hue、kudu、impala、zookeeper等)安裝、調優極其便捷
零停機維護(免費版本不具有彈性升級)
多用戶管理(權限控制,支持ldap)
穩定性極好(部分優化措施都已經調整好)

應用場景
1. 適用於節點在5個以上、各類大數據服務超過5個的集群,因為有些小公司緊緊就用了hdfs、yarn、hive、spark幾個服務,為了節省服務器等資源,不需要部署cm
2. 適用於所有的大數據公司
3. 適用於對於大數據組件版本不需要經常變動的公司,例如:有些公司就是喜歡鑽研新技術,然后喜歡新版本,但是由於cm的免費版本不支持彈性升級,所以不建議喜歡新技術的公司用
4. 適用於運維人員,因為該平台安裝好以后,維護工作相對來將就輕松許多,例如:使用apache版本的運維人員,對某一個組件進行調優,需要消耗半天的時間進行調整,效率極低;再比如安裝1000個節點,需要手動部署,工作量可想而知
補充:
cm在國內用戶量很大,戴爾、一號店等知名公司都在使用
cm和ambari在主流的大數據平台框架中,用戶量比例很高
ClouderaManager介紹
CDH介紹
CDH是Apache Hadoop和相關項目中最完整、最穩定的、經過測試和最流行的發行版。
CDH提供了Hadoop的核心元素,可擴展存儲和分布式計算 ,以及基於Web的用戶界面和重要的企業功能。 CDH是Apache許可的開源軟件,是唯一提供統一批處理,交互式SQL和交互式搜索以及基於角色的訪問控制的Hadoop解決方案。
CDH特點
靈活性 - 存儲任何類型的數據並使用各種不同的計算框架對其進行操作,包括批處理,交互式SQL,自由文本搜索,機器學習和統計計算。
集成 - 在完整的Hadoop平台上快速啟動並運行,該平台可與各種硬件和軟件解決方案配合使用。
安全 - 處理和控制敏感數據。
可擴展性 - 支持廣泛的應用程序。
高可用性 – 可以執行關鍵型業務任務。
兼容性 - 利用現有的IT基礎架構。
ClouderaManager介紹
Cloudera Manager是用於管理CDH群集的端到端應用程序。Cloudera Manager通過對CDH集群的每個部分提供細粒度的可視性和控制來設置企業部署的標准,使運營商能夠提高性能,提高服務質量,提高合規性並降低管理成本。
使用Cloudera Manager,可以輕松部署和集中操作完整的CDH堆棧和其他托管服務(Hadoop、Spark、Kudu、Impala)。其特點:應用程序的安裝過程自動化,將部署時間從幾周縮短到幾分鍾; 並提供運行主機和服務的集群范圍的實時監控視圖; 提供單個中央控制台,以在整個群集中實施配置更改; 並集成了全套的報告和診斷工具,可幫助您優化性能和利用率。
ClouderaManager架構
Cloudera Manager的核心是Cloudera Manager Server。提供了統一的UI和API方便用戶和集群上的CDH以及其它服務進行交互,並實施監控和診斷等。
CM Server還負責安裝配置CDH和其相關的服務軟件,啟動停止服務,維護集群中各個節點服務器以及上面運行的進程。

Agent:安裝在每台主機上。它負責啟動和停止進程,解壓縮配置,觸發安裝和監控主機
Management Service:執行各種監控、報警和報告功能的一組角色的服務。
Database:存儲配置和監控信息
Cloudera Repository:可供Cloudera Manager分配的軟件的存儲庫
Client:用於與服務器進行交互的接口
Admin Console:管理員控制台
API:開發人員使用 API可以創建自定義的Cloudera Manager應用程序
ClouderaManager功能
信號檢測
默認情況下,Agent 每隔 15 秒向 Cloudera Manager Server 發送一次檢測信號。但是,為了減少用戶延遲,在狀態變化時會提高頻率。
狀態管理
模型狀態捕獲什么進程應在何處運行以及具有什么配置 。
運行時狀態是哪些進程正在何處運行以及正在執行哪些命令(例如:重新平衡 HDFS 或執行備份/災難恢復計划或集群升級、停止) 。
當您更新配置(例如Hue Server Web 端口)時,您即更新了模型狀態。但是,如果 Hue 在更新時正在運行,則它仍將使用舊端口。當出現這種不匹配情況時,角色會標記為具有“過時的配置”。要重新同步,您需重啟角色(這會觸發重新生成配置和重啟進程)。
特殊情況如果要加入一些cloudera manager控制台沒有的屬性時候,都在高級配置選項里面嵌入。
服務器和客戶端配置
例如使用HDFS,/opt/cloudera/parcels/CDH/lib/hadoop/etc/hadoop目錄下僅包含與 HDFS 客戶端相關的配置。
而 HDFS 角色實例(例如:NameNode 和 DataNode)會從 /var/run/cloudera-scm-agent/process/812-hdfs-NAMENODE、820-hdfs-DATANODE 下的每個進程專用目錄獲取它們的配置,真正產生作用的是這個。
主機管理
Cloudera Manager 作為群集中的托管主機身份:JDK、Cloudera Manager Agent、CDH、Impala、Solr 等參與所需的所有軟件部署到主機 。
Cloudera Manager 提供用於管理參與主機生命周期的操作以及添加和刪除主機的操作。
Cloudera Management Service Host Monitor 角色執行運行狀況檢查並收集主機度量,以使您可以監控主機的運行狀況和性能。
進程管理
在 Cloudera Manager 管理的群集中,只能通過 Cloudera Manager 啟動或停止服務。Cloudera Manager 使用一種名為 supervisord 的開源進程管理工具,它會重定向日志文件,通知進程失敗,為合適用戶設置調用進程的有效用戶 ID 等等。Cloudera Manager 支持自動重啟崩潰進程。如果一個角色實例在啟動后反復失敗,Cloudera Manager 還會用不良狀態標記該實例。
特別需要注意的是,停止 Cloudera Manager 和 Cloudera Manager Agent 不會停止群集;所有正在運行的實例都將保持運行。
Agent 的一項主要職責是啟動和停止進程。當 Agent 從檢測信號檢測到新進程時,Agent 會在 /var/run/cloudera-scm-agent 中為它創建一個目錄,並解壓縮配置 。
Agent 受到監控,屬於 Cloudera Manager 的主機監控的一部分:如果 Agent 停止檢測信號,主機將被標記為運行狀況不良。
安全
身份驗證
Hadoop中身份驗證的目的僅僅是證明用戶或服務確實是他或她所聲稱的用戶或服務 。
通常,企業中的身份驗證通過單個分布式系統(例如:輕型目錄訪問協議 (LDAP) 目錄)進行管理,LDAP 身份驗證包含由各種存儲系統提供支持的簡單用戶名/密碼服務,ranger+ldap+freeipa。
Hadoop 生態系統的許多組件會匯總到一起來使用 Kerberos 身份驗證並提供用於在 LDAP 或 AD 中管理和存儲憑據的選項。
授權
CDH 當前提供以下形式的訪問控制:
適用於目錄和文件的傳統 POSIX 樣式的權限 。
適用於 HDFS 的擴展的訪問控制列表 (ACL) 。
Apache HBase使用ACL來按列、列族和列族限定符授權各種操作 (READ, WRITE, CREATE, ADMIN)。
使用 Apache Sentry 基於角色進行訪問控制。
Cloudera Management Service
功能:可作為一組角色實施各種管理功能
Activity Monitor:收集關於MapReduce服務運行的活動的信息。默認情況下不添加此角色。
Host Monitor:收集有關主機的運行狀況和指標信息。
Service Monitor:從YARN和Impala服務中收集關於服務和活動信息的健康和度量信息。
Event Server:聚合組件的事件並將其用於警報和搜索。
Alert Publisher :為特定類型的事件生成和提供警報。
Reports Manager:生成圖表報告,按用戶,用戶組和目錄提供磁盤利用率的歷史視圖,按用戶和YARN池處理活動,以及HBase表和命名空間。Cloudera Express中未添加此角色。
