hadoop加密
⑴ 金山雲玩轉了Hadoop,英特爾為什麼高興
因為,前不久金山雲與英特爾宣布了彼此的深度合作,金山雲託管Hadoop(Kingsoft MapRece,簡稱KMR)解決方案是結合雙方技術優勢共同打造的、基於英特爾架構的大數據解決方案。對此,金山雲大數據和AI技術總監張東進、金山雲大數據產品經理楊亮分享了該解決方案目前的部署情況與為用戶帶來的實際應用價值。
一般具有顯著劃時代的科技創新都會有個規律,最初萌芽的時候帶來人類的無盡暢想,認為其甫出便無所不能,但產業的狂躁過後便是冷靜,落地的層級表現也就逐步清晰了。
例如無人機,剛出現的時候就被很多專家看出要重塑快遞、交通、代價等多個行業,待到後來率先被亞馬遜及同行證實其僅在送貨上進步還有巨大的空間。
人工智慧也一樣。大數據時代的數據澆灌,讓人們覺得其是拯救企業走出數據創新樊籠最為得心應手的殺手鐧。但玩轉了一圈Hadoop後,認識到,駕馭離夢想還是有點遠。所以,公有雲廠商們相信,這會是市場在很長的時間范圍內都會有的藍海。
為此,金山雲認為,企業從雲計算走到人工智慧,他們的深度學習平台KDL價值不可或缺。「我們這個平台(KDL)可以深度助力企業擁抱AI。它是一個機器學習,尤其是深度學習的任務託管平台,底層是基於金山雲高性能的異構計算集群,融合了英特爾等頂級合作夥伴的領先技術,將為我們的客戶帶來非常高的價值。」張東進這樣介紹KMR。
看看熱詞曲線,雲計算、大數據與AI相繼而出。產業界討論也逐漸認為,大數據是雲計算走向人工智慧必不可少的中間路徑。張東進介紹,金山雲多年的發展,也是很好地遵循了這個發展路徑需求。初期投入IaaS虛擬化,「讓企業將其業務放到雲端,降低企業的部署成本,並且加速企業業務的發展。」進而玩轉大數據,讓數據變現,「要有利用這些數據驅動企業進行決策的能力,以Hadoop為代表。」 現在看到人工智慧是接下來的未來,「人工智慧的需求也在快速增長,我們發現人工智慧本身其實是一個對性能和規模有非常大要求的行業,這就是非常適合我們天然上雲的一個行業。」
簡單理解,玩轉Hadoop就是要解決實現AI的成本、效率、安全、性能等方面的巨大挑戰。例如張東進強調,金山雲提供的全功能的深度學習集成環境,全流程優化,所以從整個物料的預處理、物料的存儲、物料的訓練、評估、上線預測等等方面都提供完整的支持。還有,人工智慧的一個訓練任務可能長達一周或者是半個月,而金山雲可以提供一個企業級的數據加密和企業級HPC集群的安全、最穩定環境,並且可以做到分鍾級的自動恢復,不耽誤人工智慧出活兒。
除了KDL,金山雲還為行業提供了各種中間層,包括提供基礎的視覺、聽覺、自然語言、VR/AR等等技術能力。同時,金山雲還有一些上層行業的AI解決方案,針對醫療、金融、交通、物聯網等行業提供解決方案。
而這一切一切的背後,英特爾「inside」出力不小。金山雲KMR,該解決方案採用基於英特爾® 至強® 處理器E5 v4產品家族的硬體平台,是一個可伸縮的通用數據計算和分析平台。它以Apache Hadoop和Apache Spark兩大數據計算系統為基礎,通過自動調度彈性計算服務(KEC),能夠幫助企業用戶快速構建分布式數據分析系統。此外,結合金山雲所提供的多種雲服務產品,還可形成端到端的數據分析處理解決方案,進而幫助用戶更加靈活方便地收集和管理數據,花費更低的成本,獲得更高的數據可靠性。
基於英特爾與金山雲一直以來的緊密合作,在KMR大數據解決方案的構建過程中,英特爾不僅為金山雲提供了性能強勁的硬體平台,在針對Apache Hadoop、Apache Spark等開源數據分析技術的優化、創新與應用等方面也提供了有力的支持與幫助。目前,該解決方案已經在當當、WPS等多家行業用戶中應用部署。以當當為例,KMR大數據解決方案幫助其有效緩解促銷期間IT系統的壓力、大幅減少系統維護的工作和資源擁有成本,並根據業務需求實現了資源配置的靈活調配。
楊亮透露,當當網已經是KMR的受益者了。「當當網在電商大促的時候,通過專線把實時數據流打到我們的KMR集群做處理和分析。處理的結果相對來說數據量會比較小,也會通過我們的專線寫回到當當網的數據中心。所以對於用戶來說,首先它的數據是不需要搬遷的,第二個,他的核心數據也可以保留在自己的數據中心,在數據安全方面也會更加放心。」
⑵ 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分布式集群一台虛擬系統,二台實體系統可以嗎
可以
准備工作
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文件
⑷ Kerberos在Hadoop安全中擔任什麼角色以及存在什麼問題
在與客戶交流Hadoop安全時,提及kerberos的頻率非常高,並提出了一些關於kerberos的安全問題,比如它的安全機制,具體是解決Hadoop什麼安全問題,存在哪些不足等等,下面就由小編對kerberos做一個詳細的歸納,更加清晰kerberos在Hadoop安全中擔任的角色。
1. Hadoop安全問題:
Hadoop設計之初,默認集群內所有的節點都是可靠的。由於用戶與HDFS或M/R進行交互時不需要驗證,惡意用戶可以偽裝成真正的用戶或者伺服器入侵到hadoop集群上,導致:惡意的提交作業,修改JobTracker狀態,篡改HDFS上的數據,偽裝成NameNode 或者TaskTracker接受任務等。 盡管在版本之後, HDFS增加了文件和目錄的許可權,但並沒有強認證的保障,這些許可權只能對偶然的數據丟失起保護作用。惡意的用戶可以輕易的偽裝成其他用戶來篡改許可權,致使許可權設置形同虛設。不能夠對Hadoop集群起到安全保障。
(1) 用戶到伺服器的認證問題:
NameNode,JobTracker上沒有用戶認證
DataNode上沒有認證
JobTracker上沒有認證
解決伺服器到伺服器的認證
解決client到伺服器的認證
對用戶級別上的認證並沒有實現
kerberos驗證方式單一、安全性低的問題,首先其只提供類似linux文件系統的帳戶許可權驗證,而且可以通過簡單的手段冒充用戶名,如果有惡意用戶,直接冒充為hadoop的super用戶,那整個集群是很危險的。其次不能對認證過的用戶做任何許可權控制;
部署復雜,生成證書和配置的步驟相當繁瑣,首次配置還可以接受,但是對於用戶許可權的修改,機器的減容擴容,會造成證書重新生成,再分發證書,重啟hadoop。且還存在kerberos的宕機導致整個集群無法服務的風險,加上kerberos本身也比較復雜。
影響效率,網上搜羅一個真實案例,支付寶曾用了kerberos,導致其效率極低運維困難。原因是因為請求次數過多,具體看下面關於kerberos的工作原理就知道了。
用戶可以偽裝成其他用戶入侵到一個HDFS 或者MapRece集群上。
Datanode對讀入輸出並沒有認證。導致如果一些客戶端如果知道block的ID,就可以任意的訪問DataNode上block的數據
可以任意的殺死或更改用戶的jobs,可以更改JobTracker的工作狀態
(2) 伺服器到伺服器的認證問題:
沒有DataNode, TaskTracker的認證
用戶可以偽裝成datanode ,tasktracker,去接受JobTracker, Namenode的任務指派。
2、kerberos解決的安全問題:
加入Kerberos認證機制使得集群中的節點就是它們所宣稱的,是信賴的。Kerberos可以將認證的密鑰在集群部署時事先放到可靠的節點上。集群運行時,集群內的節點使用密鑰得到認證。只有被認證過節點才能正常使用。企圖冒充的節點由於沒有事先得到的密鑰信息,無法與集群內部的節點通信。
kerberos實現的是機器級別的安全認證,也就是前面提到的服務到服務的認證問題。事先對集群中確定的機器由管理員手動添加到kerberos資料庫中,在KDC上分別產生主機與各個節點的keytab(包含了host和對應節點的名字,還有他們之間的密鑰),並將這些keytab分發到對應的節點上。通過這些keytab文件,節點可以從KDC上獲得與目標節點通信的密鑰,進而被目標節點所認證,提供相應的服務,防止了被冒充的可能性。
由於kerberos對集群里的所有機器都分發了keytab,相互之間使用密鑰進行通信,確保不會冒充伺服器的情況。集群中的機器就是它們所宣稱的,是可靠的。
防止了用戶偽裝成Datanode,Tasktracker,去接受JobTracker,Namenode的任務指派。
Kerberos對可信任的客戶端提供認證,確保他們可以執行作業的相關操作。防止用戶惡意冒充client提交作業的情況。
用戶無法偽裝成其他用戶入侵到一個HDFS 或者MapRece集群上
用戶即使知道datanode的相關信息,也無法讀取HDFS上的數據
用戶無法發送對於作業的操作到JobTracker上
無法控制用戶提交作業的操作。不能夠實現限制用戶提交作業的許可權。不能控制哪些用戶可以提交該類型的作業,哪些用戶不能提交該類型的作業。這些由ACL模塊控制(參考)
3、Kerberos在Hadoop安全中擔任什麼角色以及存在什麼問題:
通俗來說Kerberos在Hadoop安全中起到是一個單因素(只有一種如賬號、密碼的驗證方式)身份驗證的作用,kerberos就如一個房間的門鎖,進門的人需要提供正確的密碼,而對於進門後的人做了什麼樣的操作kerberos就無法控制了。
存在的問題:
4、 Kerberos工作原理介紹
4.1基本概念
Princal(安全個體):被認證的個體,有一個名字和口令
KDC(key distribution center ) : 是一個網路服務,提供ticket 和臨時會話密鑰
Ticket:一個記錄,客戶用它來向伺服器證明自己的身份,包括客戶標識、會話密鑰、時間戳。
AS (Authentication Server): 認證伺服器
TSG(Ticket Granting Server): 許可證伺服器
4.2 kerberos 工作原理
4.2.1 Kerberos協議
Kerberos可以分為兩個部分:
Client向KDC發送自己的身份信息,KDC從Ticket Granting Service得到TGT(ticket-granting ticket), 並用協議開始前Client與KDC之間的密鑰將TGT加密回復給Client。此時只有真正的Client才能利用它與KDC之間的密鑰將加密後的TGT解密,從而獲得TGT。(此過程避免了Client直接向KDC發送密碼,以求通過驗證的不安全方式)
Client利用之前獲得的TGT向KDC請求其他Service的Ticket,從而通過其他Service的身份鑒別
⑸ ssh已經設置無密碼登錄了,但hadoop啟動時提示要輸入localhost的密碼,具體情況如問題補充,求大神解救
ssh及其下屬子文件的許可權問題,首選.ssh目錄許可權是700, 兩個dsa 和 rsa的 私鑰許可權是600,其餘文件許可權是644。
SSH為SecureShell的縮寫,由IETF的網路小組(NetworkWorkingGroup)所制定;SSH為建立在應用層基礎上的安全協議。
SSH是目前較可靠,專為遠程登錄會話和其他網路服務提供安全性的協議。利用SSH協議可以有效防止遠程管理過程中的信息泄露問題。
SSH最初是UNIX系統上的一個程序,後來又迅速擴展到其他操作平台。SSH在正確使用時可彌補網路中的漏洞。
傳統的網路服務程序,如:ftp、pop和telnet在本質上都是不安全的,因為它們在網路上用明文傳送口令和數據,別有用心的人非常容易就可以截獲這些口令和數據。而且,這些服務程序的安全驗證方式也是有其弱點的,就是很容易受到「中間人」(man-in-the-middle)這種方式的攻擊。
所謂「中間人」的攻擊方式,就是「中間人」冒充真正的伺服器接收你傳給伺服器的數據,然後再冒充你把數據傳給真正的伺服器。伺服器和你之間的數據傳送被「中間人」一轉手做了手腳之後,就會出現很嚴重的問題。
通過使用SSH,你可以把所有傳輸的數據進行加密,這樣"中間人"這種攻擊方式就不可能實現了,而且也能夠防止DNS欺騙和IP欺騙。使用SSH,還有一個額外的好處就是傳輸的數據是經過壓縮的,所以可以加快傳輸的速度。
SSH有很多功能,它既可以代替Telnet,又可以為FTP、PoP、甚至為PPP提供一個安全的"通道"。
⑹ hadoop支持什麼開發語言
hadoop支持C++,Java開發語言。
Hadoop帶有用Java語言編寫的框架,因此運行在 Linux 生產平台上是非常理想的。Hadoop 上的應用程序也可以使用其他語言編寫,比如 C++。MapRece是處理大量半結構化數據集合的編程模型。編程模型是一種處理並結構化特定問題的方式。
例如,在一個關系資料庫中,使用一種集合語言執行查詢,如sql。告訴語言想要的結果,並將它提交給系統來計算出如何產生計算。還可以用更傳統的語言(C++,Java),一步步地來解決問題。這是兩種不同的編程模型,MapRece就是另外一種。
(6)hadoop加密擴展閱讀
特點
1、確定哪些數據屬於企業的敏感數據。根據公司的隱私保護政策,以及相關的行業法規和政府規章來綜合確定。
2、確保數據保護方案同時採用了隱藏和加密技術,尤其是如果我們需要將敏感數據在Hadoop中保持獨立的話。
3、確保需要加密的時候有合適的技術(比如Java、Pig等)可被部署並支持無縫解密和快速訪問數據。
⑺ 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的客戶端和datanode之間是明文傳輸還是密文傳輸
密文,他們的全部通信都是基於ssh來通信,所以註定是加密的、安全的。