繼6月份推出CDH4後,Cloudera於本月推出了CDH4.1版(注:Cloudera每年會推出一個新的CDH版本,並且大約每隔3個月會對當前的CDH作一次更新)。除了常規的補丁和性能改善,這一更新包含了關於HDFS和安全性方面的幾個特性,值得關注一下。
- Quorum-based Storage HA
在CDH4提供的HDFS HA實現機制裏,一對Name Node共享NFS目錄。現在CDH4.1則添加了基於一組Quorum存儲並使用一種叫作Quorum Journal Manager(QJM)的新機制。在這種新機制裏,兩個Name Node 和一組JournalNode daemon進行通信(奇數個,通常爲3,5或7等)。在任何時候,只有Active NameNode能將文件系統的操作記錄到這組JournalNodes中的大多數中;Standby NameNode則只能讀取。和共享NFS目錄這種被動的純存儲機制相比, JournalNodes能夠防止接受多個NameNode同時對其寫操作(所以 “fencing”這一步驟不是必須的)。不過,採用該機制實現HA的集羣就變成了必須依賴於JournalNode Quorum才能正常工作。在這一點上,和HBase對Zookeeper的依賴有點類似。如果NameNode無法獲取JournalNode Quorum,HDFS則會無法格式化或無法啓動,會提示如下錯誤信息:
10/21/12 01:01:01 WARN namenode.FSEditLog: Unable to determine input streams from QJM to [10.0.1.10:8485, 10.0.1.10:8486, 10.0.1.10:8487]. Skipping. java.io.IOException: Timed out waiting 20000ms for a quorum of nodes to respond.
不過,這些JournalNode的負載不大,建議是可以運行在Master daemon的機器上。
在配置方面,除了常規HA外,需要指定JournalNode Quorum和JournalNode用於存儲的目錄位置。這兩者分別通過“dfs.namenode.shared.edits.dir”和“dfs.journalnode.edits.dir”來指定。
- Data Encryption
在安全性方面,CDH4.1加入了支持對 MRv1/MRv2 的Shuffle數據和Web UIs進行加密,以及對所有通過網絡傳輸的HDFS數據進行加密。
以下是最新CDH4.1.1包含的組件信息。更多相關信息(譬如Pig方面,添加了對LinkedIn開源的Pig UDF庫DataFu的支持。DataFu包含了很多有用的功能,譬如對大量圖計算PageRank,對數據集進行intersect和union等),請訪問Cloudera網站上的相關文檔
CDH Version 4.1.1 Packaging
CDH4 Project |
Package Version |
Tarball Version |
Release Notes |
Changes File |
Apache Hadoop 2.0 |
hadoop-2.0.0+545 |
hadoop-2.0.0-cdh4.1.1.tar.gz |
||
DataFu |
pig-udf-datafu-0.0.4+8 |
datafu-0.0.4-cdh4.1.1.tar.gz |
||
Apache Flume |
flume-ng-1.2.0+121 |
flume-ng-1.2.0-cdh4.1.1.tar.gz |
||
Apache HBase |
hbase-0.92.1+156 |
hbase-0.92.1-cdh4.1.1.tar.gz |
||
Apache Hive |
hive-0.9.0+150 |
hive-0.9.0-cdh4.1.1.tar.gz |
||
Hue |
hue-2.1.0+210 |
hue-2.1.0-cdh4.1.1.tar.gz |
||
Apache Mahout |
mahout-0.7+6 |
mahout-0.7-cdh4.1.1.tar.gz |
||
Apache MRv1 |
hadoop-0.20-mapreduce-0.20.2+1261 |
mr1-2.0.0-mr1-cdh4.1.1.tar.gz |
||
Apache Oozie |
oozie-3.2.0+123 |
oozie-3.2.0-cdh4.1.1.tar.gz |
||
Apache Pig |
pig-0.10.0+50 |
pig-0.10.0-cdh4.1.1.tar.gz |
||
Apache Sqoop |
sqoop-1.4.1+53 |
sqoop-1.4.1-cdh4.1.1.tar.gz |
||
Apache Whirr |
whirr-0.8.0+15 |
whirr-0.8.0-cdh4.1.1.tar.gz |
||
Apache ZooKeeper |
zookeeper-3.4.3+27 |
zookeeper-3.4.3-cdh4.1.1.tar.gz |