Ⅰ hadoop集群為什麼需要免密碼登陸
在Hadoop啟動以後,namenode是通過SSH(Secure Shell)來啟動和停止各個節點上的各種守護進程的,這就需要在節點之間執行指令的時候是不需要輸入密碼的方式,故我們需要配置SSH使用無密碼公鑰認證的方式。 namenode生成密鑰: $ ssh-keygen -t d...
Ⅱ 配置hadoop分布式集群一台虛擬系統,二台實體系統可以嗎
可以
准備工作
1.安裝虛擬機 VMware Workstation
2.在虛擬機上安裝linux操作系統
這里在虛擬機上安裝的linux操作系統為ubuntu10.04。其實用哪個linux系統都是可以的,比如用centos, redhat, fedora等均可,完全沒有問題。
3.准備3個虛擬節點
如果已經完成第2步,那就已經准備好了第一個虛擬節點。准備第二個和第三個虛擬節點有兩種方法:
method1:分別安裝兩遍linux系統,太繁瑣,放棄。
method2:在剛安裝的第一個虛擬節點,將整個系統目錄復制來形成第二個和第三個虛擬節點。
按照hadoop集群的基本要求,其中一個是master節點,用於運行hadoop程序中的namenode,secondorynamenode和jobtracker任務。另外兩個節點為slave節點,其中一個用於冗餘目的。slave節點用於運行hadoop程序中的datanode和tasktracker任務。所以模擬hadoop集群至少要有3個節點。
4.重命名主機名
因為前面復制粘貼產生的兩個節點和第一個節點的主機名一樣。
重命名主機名:Vim /etc/hostname
以下是我對三個結點的ubuntu系統主機分別命名為:master, node1, node2
6.配置hadoop-env.sh文件
Ⅲ 如何實現hadoop 的安全機制
為了增強Hadoop的安全機制, 從2009年起, Apache專門抽出一個團隊,為Hadoop增加安全認證和授權機制,至今為止,已經可用。
Apache Hadoop 1.0.0版本和Cloudera CDH3之後的版本添加了安全機制,如果你將Hadoop升級到這兩個版本,可能會導致Hadoop的一些應用不可用。
Hadoop提供了兩種安全機制:Simple和Kerberos。Simple機制(默認情況,Hadoop採用該機制)採用了SAAS協議。 也就是說,用戶提交作業時,你說你是XXX(在JobConf的user.name中說明),則在JobTracker端要進行核實,包括兩部分核實,一是你到底是不是這個人,即通過檢查執行當前代碼的人與user.name中的用戶是否一致;然後檢查ACL(Access Control List)配置文件(由管理員配置),看你是否有提交作業的許可權。一旦你通過驗證,會獲取HDFS或者maprece授予的delegation token(訪問不同模塊由不同的delegation token),之後的任何操作,比如訪問文件,均要檢查該token是否存在,且使用者跟之前注冊使用該token的人是否一致。
Ⅳ 搭建hadoop集群為什麼要設置SSH無密碼登錄
Hadoop集群啟動之後,namenode是通過SSH來啟動和停止各個節點上的各種守護進程的,所以在節點之間執行指令的時候不能有密碼
Ⅳ spark和hadoop的區別
直接比較Hadoop和Spark有難度,因為它們處理的許多任務都一樣,但是在一些方面又並不相互重疊。
比如說,Spark沒有文件管理功能,因而必須依賴Hadoop分布式文件系統(HDFS)或另外某種解決方案。
Hadoop框架的主要模塊包括如下:
Hadoop Common
Hadoop分布式文件系統(HDFS)
Hadoop YARN
Hadoop MapRece
雖然上述四個模塊構成了Hadoop的核心,不過還有其他幾個模塊。這些模塊包括:Ambari、Avro、Cassandra、Hive、 Pig、Oozie、Flume和Sqoop,它們進一步增強和擴展了Hadoop的功能。
Spark確實速度很快(最多比Hadoop MapRece快100倍)。Spark還可以執行批量處理,然而它真正擅長的是處理流工作負載、互動式查詢和機器學習。
相比MapRece基於磁碟的批量處理引擎,Spark賴以成名之處是其數據實時處理功能。Spark與Hadoop及其模塊兼容。實際上,在Hadoop的項目頁面上,Spark就被列為是一個模塊。
Spark有自己的頁面,因為雖然它可以通過YARN(另一種資源協調者)在Hadoop集群中運行,但是它也有一種獨立模式。它可以作為 Hadoop模塊來運行,也可以作為獨立解決方案來運行。
MapRece和Spark的主要區別在於,MapRece使用持久存儲,而Spark使用彈性分布式數據集(RDDS)。
性能
Spark之所以如此快速,原因在於它在內存中處理一切數據。沒錯,它還可以使用磁碟來處理未全部裝入到內存中的數據。
Spark的內存處理為來自多個來源的數據提供了近乎實時分析的功能:營銷活動、機器學習、物聯網感測器、日誌監控、安全分析和社交媒體網站。另 外,MapRece使用批量處理,其實從來就不是為驚人的速度設計的。它的初衷是不斷收集來自網站的信息,不需要這些數據具有實時性或近乎實時性。
易用性
支持Scala(原生語言)、Java、Python和Spark SQL。Spark SQL非常類似於SQL 92,所以幾乎不需要經歷一番學習,馬上可以上手。
Spark還有一種交互模式,那樣開發人員和用戶都可以獲得查詢和其他操作的即時反饋。MapRece沒有交互模式,不過有了Hive和Pig等附加模塊,採用者使用MapRece來得容易一點。
成本
「Spark已證明在數據多達PB的情況下也輕松自如。它被用於在數量只有十分之一的機器上,對100TB數據進行排序的速度比Hadoop MapRece快3倍。」這一成績讓Spark成為2014年Daytona GraySort基準。
兼容性
MapRece和Spark相互兼容;MapRece通過JDBC和ODC兼容諸多數據源、文件格式和商業智能工具,Spark具有與MapRece同樣的兼容性。
數據處理
MapRece是一種批量處理引擎。MapRece以順序步驟來操作,先從集群讀取數據,然後對數據執行操作,將結果寫回到集群,從集群讀 取更新後的數據,執行下一個數據操作,將那些結果寫回到結果,依次類推。Spark執行類似的操作,不過是在內存中一步執行。它從集群讀取數據後,對數據 執行操作,然後寫回到集群。
Spark還包括自己的圖形計算庫GraphX。GraphX讓用戶可以查看與圖形和集合同樣的數據。用戶還可以使用彈性分布式數據集(RDD),改變和聯合圖形,容錯部分作了討論。
容錯
至於容錯,MapRece和Spark從兩個不同的方向來解決問題。MapRece使用TaskTracker節點,它為 JobTracker節點提供了心跳(heartbeat)。如果沒有心跳,那麼JobTracker節點重新調度所有將執行的操作和正在進行的操作,交 給另一個TaskTracker節點。這種方法在提供容錯性方面很有效,可是會大大延長某些操作(即便只有一個故障)的完成時間。
Spark使用彈性分布式數據集(RDD),它們是容錯集合,裡面的數據元素可執行並行操作。RDD可以引用外部存儲系統中的數據集,比如共享式文件系統、HDFS、HBase,或者提供Hadoop InputFormat的任何數據源。Spark可以用Hadoop支持的任何存儲源創建RDD,包括本地文件系統,或前面所列的其中一種文件系統。
RDD擁有五個主要屬性:
分區列表
計算每個分片的函數
依賴其他RDD的項目列表
面向鍵值RDD的分區程序(比如說RDD是散列分區),這是可選屬性
計算每個分片的首選位置的列表(比如HDFS文件的數據塊位置),這是可選屬性
RDD可能具有持久性,以便將數據集緩存在內存中。這樣一來,以後的操作大大加快,最多達10倍。Spark的緩存具有容錯性,原因在於如果RDD的任何分區丟失,就會使用原始轉換,自動重新計算。
可擴展性
按照定義,MapRece和Spark都可以使用HDFS來擴展。那麼,Hadoop集群能變得多大呢?
據稱雅虎有一套42000個節點組成的Hadoop集群,可以說擴展無極限。最大的已知Spark集群是8000個節點,不過隨著大數據增多,預計集群規模也會隨之變大,以便繼續滿足吞吐量方面的預期。
安全
Hadoop支持Kerberos身份驗證,這管理起來有麻煩。然而,第三方廠商讓企業組織能夠充分利用活動目錄Kerberos和LDAP用於身份驗證。同樣那些第三方廠商還為傳輸中數據和靜態數據提供數據加密。
Hadoop分布式文件系統支持訪問控制列表(ACL)和傳統的文件許可權模式。Hadoop為任務提交中的用戶控制提供了服務級授權(Service Level Authorization),這確保客戶擁有正確的許可權。
Spark的安全性弱一點,目前只支持通過共享密鑰(密碼驗證)的身份驗證。Spark在安全方面帶來的好處是,如果你在HDFS上運行Spark,它可以使用HDFS ACL和文件級許可權。此外,Spark可以在YARN上運行,因而能夠使用Kerberos身份驗證。
總結
Spark與MapRece是一種相互共生的關系。Hadoop提供了Spark所沒有的功能特性,比如分布式文件系統,而Spark 為需要它的那些數據集提供了實時內存處理。完美的大數據場景正是設計人員當初預想的那樣:讓Hadoop和Spark在同一個團隊裡面協同運行。
Ⅵ edt使用什麼協議來保證hadoop集群安全
1、需求:有兩個集群,網路中節點是互通的,現在要用distcp進行文件遷移,但一個集群是非安全集群,一個是配置了kerberos認證的安全集群,怎麼執行呢?
2、前提:兩個集群都做了HA配置,所以要通過如下命令查看活動Namenode並獲取其IP地址;
HA配置查看活動Namenode:hdfs haadmin -getServiceState nn1或nn2(namenode名);
3、試驗:
目的平台執行Hadoop distcp hdfs://IP:8020/pgw/ hdfs://namenode:8020/pgw/
源平台執行hadoop distcp hdfs://IP:8020/pgw/ hdfs://IP:8020/pgw/
都不行。
分析後,關系 Cross-realm authentication問題,配置core-site.xml 需降低安全配置;
<property>
<name>ipc.client.fallback-to-simple-auth-allowed</name>
<value>true</value>
</property>
4、解決:在目的平台執行
hadoop distcp -D ipc.client.fallback-to-simple-auth-allowed=true -D dfs.checksum.type=CRC32 webhdfs://namenode IP:50070/data/ /data
命令中直接回退安全配置,同時採用webhdfs來傳輸,不過這個採用restfull機制,有IO阻塞風險。
hadoop distcp -D ipc.client.fallback-to-simple-auth-allowed=true webhdfs://namenode IP:50070/flume/data/ /data/
大文件傳輸時,去掉校驗-D dfs.checksum.type=CRC32就正常。
Ⅶ hadoop hue配置文件怎樣設置加密密碼
ue是一個開源的Apache Hadoop UI系統,最早是由Cloudera Desktop演化而來,由Cloudera貢獻給開源社區,它是基於Python Web框架Django實現的。通過使用Hue我們可以在瀏覽器端的Web控制台上與Hadoop集群進行交互來分析處理數據,例如操作HDFS上的數據,運行MapRece Job等等。很早以前就聽說過Hue的便利與強大,一直沒能親自嘗試使用,下面先通過官網給出的特性,通過翻譯原文簡單了解一下Hue所支持的功能特性集合:
默認基於輕量級sqlite資料庫管理會話數據,用戶認證和授權,可以自定義為MySQL、Postgresql,以及Oracle
基於文件瀏覽器(File Browser)訪問HDFS
基於Hive編輯器來開發和運行Hive查詢
支持基於Solr進行搜索的應用,並提供可視化的數據視圖,以及儀錶板(Dashboard)
支持基於Impala的應用進行互動式查詢
支持Spark編輯器和儀錶板(Dashboard)
支持Pig編輯器,並能夠提交腳本任務
支持Oozie編輯器,可以通過儀錶板提交和監控Workflow、Coordinator和Bundle
支持HBase瀏覽器,能夠可視化數據、查詢數據、修改HBase表
支持Metastore瀏覽器,可以訪問Hive的元數據,以及HCatalog
支持Job瀏覽器,能夠訪問MapRece Job(MR1/MR2-YARN)
支持Job設計器,能夠創建MapRece/Streaming/Java Job
支持Sqoop 2編輯器和儀錶板(Dashboard)
支持ZooKeeper瀏覽器和編輯器
支持MySql、PostGresql、Sqlite和Oracle資料庫查詢編輯器
1 Hue安裝(參考官網:http://gethue.com/how-to-build-hue-on-ubuntu-14-04-trusty/)
1.1 在git上下載HUE源碼或者在它的官網下載(如果已經安裝git可省略第一步)
sudo apt-get install git
git clone https://github.com/cloudera/hue.git
1.2 需要安裝一些依賴的軟體包
官網給出了一些,如果環境不一樣,靈活調整,GIT上面給出的依賴文件列表:
Ⅷ Hadoop是什麼,具體有什麼用呢
首先Hadoop是一個由Apache基金會所開發的分布式系統基礎架構。用戶可以在不了解分布式底層細節的情況下,開發分布式程序。充分利用集群的威力進行高速運算和存儲。
Hadoop 的最常見用法之一是 Web 搜索。雖然它不是唯一的軟體框架應用程序,但作為一個並行數據處理引擎,它的表現非常突出。Hadoop 最有趣的方面之一是 Map and Rece 流程,它受到Google開發的啟發。這個流程稱為創建索引,它將 Web爬行器檢索到的文本 Web 頁面作為輸入,並且將這些頁面上的單詞的頻率報告作為結果。
結果是對輸入域中的單詞進行計數,這無疑對處理索引十分有用。但是,假設有兩個輸入域,第一個是 one small step for man,第二個是 one giant leap for mankind。您可以在每個域上執行 Map 函數和 Rece 函數,然後將這兩個鍵/值對列表應用到另一個 Rece 函數,這時得到與前面一樣的結果。換句話說,可以在輸入域並行使用相同的操作,得到的結果是一樣的,但速度更快。這便是 MapRece 的威力;它的並行功能可在任意數量的系統上使用
回到 Hadoop 上,它實現這個功能的方法是:一個代表客戶機在單個主系統上啟動的 MapRece應用程序稱為 JobTracker。類似於 NameNode,它是 Hadoop 集群中唯一負責控制 MapRece應用程序的系統。在應用程序提交之後,將提供包含在 HDFS 中的輸入和輸出目錄。JobTracker 使用文件塊信息(物理量和位置)確定如何創建其他 TaskTracker 從屬任務。MapRece應用程序被復制到每個出現輸入文件塊的節點。將為特定節點上的每個文件塊創建一個唯一的從屬任務。每個 TaskTracker 將狀態和完成信息報告給 JobTracker
通過Hadoop安全部署經驗總結,開發出以下十大建議,以確保大型和復雜多樣環境下的數據信息安全 [9] 。
1、先下手為強!在規劃部署階段就確定數據的隱私保護策略,最好是在將數據放入到Hadoop之前就確定好保護策略 [9] 。
2、確定哪些數據屬於企業的敏感數據。根據公司的隱私保護政策,以及相關的行業法規和政府規章來綜合確定 [9] 。
3、及時發現敏感數據是否暴露在外,或者是否導入到Hadoop中 [9] 。
4、搜集信息並決定是否暴露出安全風險 [9] 。
5、確定商業分析是否需要訪問真實數據,或者確定是否可以使用這些敏感數據。然後,選擇合適的加密技術。如果有任何疑問,對其進行加密隱藏處理,同時提供最安全的加密技術和靈活的應對策略,以適應未來需求的發展 [9] 。
6、確保數據保護方案同時採用了隱藏和加密技術,尤其是如果我們需要將敏感數據在Hadoop中保持獨立的話 [9] 。
7、確保數據保護方案適用於所有的數據文件,以保存在數據匯總中實現數據分析的准確性 [9] 。
8、確定是否需要為特定的數據集量身定製保護方案,並考慮將Hadoop的目錄分成較小的更為安全的組 [9] 。
9、確保選擇的加密解決方案可與公司的訪問控制技術互操作,允許不同用戶可以有選擇性地訪問Hadoop集群中的數據 [9] 。
10、確保需要加密的時候有合適的技術(比如Java、Pig等)可被部署並支持無縫解密和快速訪問數據
Ⅸ 在安裝hadoop集群的時候,ssh配置成功了,可以實現無密碼登錄,為什麼啟動hadoop還需要輸入密碼
確定每個節點都可以無密登錄了嗎,還要在同一個用戶下才行,比如你的ssh是在root用戶下配置的,hadoop是在hser用戶下搭建的,那這樣的話ssh是無效的
Ⅹ Hadoop如何處理如何增強Hadoop 安全
Hadoop是由Apache開源軟體基金會開發的,運行於大規模普通伺服器上的分布式系統基礎架構,用於大規模數據的存儲、計算、分析等。通過使用Hadoop平台用戶可以在不了解分布式底層細節的情況下,開發分布式程序,充分利用集群的威力進行高速運算和存儲。2007年雅虎發布了第一個Apache Hadoop版本0.14.1;2008年雅虎用Hadoop做到全網尺度的搜索;2009年雅虎把內部版本全部開源,於是IBM也加入Hadoop的開發陣營;2010年Facebook宣布正式運行世界最大的Hadoop集群;2011年Apache Hadoop1.0版本發布;2012年Apache Hadoop2.0版本發布。下面具體介紹一下Hadoop系統的架構。
Hadoop由許多元素構成,如下圖圖所示,包括HBase、Hive、Pig、Chukwa、Oozie和ZooKeeper等,但是其核心組件為HDFS和MapRece。
JobTraker和NameNode運行在同一個伺服器上,我們稱為Hadoop集群的主節點,負責接收客戶端提交的作業,並將任務分配到不同的計算節點TaskTracker上,同時監控作業的運行情況,完成作業的更新和容錯處理;Tasktracker通常和DataNode裝在一起,稱為Hadoop集群的從節點,它調用Map和Rece執行JobTracker指派的任務,並發送心跳消息給JobTracker,向JobTracker匯報可運行任務的數量。
Hadoop 一直缺乏安全機制,主要表現在以下幾個方面。
為了增強Hadoop的安全機制, 從2009年起Apache專門抽出一個團隊為Hadoop增加安全認證和授權機制,Apache Hadoop 1.0.0版本之後的版本添加了安全機制,但是升級到該版本後可能會導致Hadoop的一些應用不可用。