用戶可將自己開發的程序提交到翼MR中,執行程序并獲取結果。
本章節以MapReduce作業為例指導您在翼MR集群頁面如何提交一個新的作業。MapReduce作業用于提交jar程序快速并行處理大量數據,是一種分布式數據處理模式和執行環境。
若在集群詳情頁面不支持“作業管理”和“文件管理”功能,請通過后臺功能來提交作業。
用戶創建作業前需要將本地數據上傳至OBS系統用于計算分析。當然翼MR也支持將OBS中的數據導入至HDFS中,并使用HDFS中的數據進行計算分析。數據完成處理和分析后,您可以將數據存儲在HDFS中,也可以將集群中的數據導出至OBS系統。需要注意,HDFS和OBS也支持存儲壓縮格式的數據,目前支持存儲bz2、gz壓縮格式的數據。
通過界面提交作業
1.登錄翼MR管理控制臺。
2.選擇“集群列表 > 現有集群”,選中一個運行中的集群并單擊集群名稱,進入集群信息頁面。
3.若集群開啟Kerberos認證時執行該步驟,若集群未開啟Kerberos認證,請無需執行該步驟。
在“概覽”頁簽的基本信息區域,單擊“IAM用戶同步”右側的“單擊同步”進行IAM用戶同步。
說明
當IAM用戶的用戶組的所屬策略從翼MR ReadOnlyAccess向翼MR CommonOperations、翼MR FullAccess、翼MR Administrator變化時,由于集群節點的SSSD(System Security Services Daemon)緩存刷新需要時間,因此同步完成后,請等待5分鐘,等待新修改策略生效之后,再進行提交作業。否則,會出現提交作業失敗的情況 。
當IAM用戶的用戶組的所屬策略從翼MR CommonOperations、翼MR FullAccess、翼MR Administrator向翼MR ReadOnlyAccess變化時,由于集群節點的SSSD緩存刷新需要時間,因此同步完成后,請等待5分鐘,新修改策略才能生效 。
4.單擊“作業管理”,進入“作業管理”頁簽。
5.單擊“添加”,進入“添加作業”頁面。
6.“作業類型”選擇“MapReduce”,并配置其他作業信息。
作業配置信息
| 參數 | 參數說明 |
|---|---|
| 作業名稱 | 作業名稱,只能由字母、數字、中劃線和下劃線組成,并且長度為1~64個字符。 說明 建議不同的作業設置不同的名稱。 |
| 執行程序路徑 | 待執行程序包地址,需要滿足如下要求: 最多為1023字符,不能包含; |
| 執行程序參數 | 可選參數,程序執行的關鍵參數。多個參數間使用空格隔開。 配置方法:程序類名數據輸入路徑數據輸出路徑 程序類名:由用戶程序內的函數指定,翼MR只負責參數的傳入。 數據輸入路徑:通過單擊“HDFS”或者“OBS”選擇或者直接手動輸入正確路徑。 數據輸出路徑:輸出路徑請手動輸入一個不存在的目錄。 最多為2047字符,不能包含; |
| 服務配置參數 | 可選參數,用于為本次執行的作業修改服務配置參數。 該參數的修改僅適用于本次執行的作業,如需對集群永久生效,請參考配置服務參數頁面進行修改。 如需添加多個參數,請單擊右側 增加,如需刪除參數,請單擊右側“刪除”。常用服務配置參數請見下表。 |
| 命令參考 | 用于展示提交作業時提交到后臺執行的命令。 |
服務配置參數
| 參數 | 參數說明 | 取值樣例 |
|---|---|---|
| fs.obs.access.key | 訪問OBS的密鑰ID。 | - |
| fs.obs.secret.key | 訪問OBS與密鑰ID對應的密鑰。 | - |
7.確認作業配置信息,單擊“確定”,完成作業的新增。
作業新增完成后,可對作業進行管理。
通過后臺提交作業
翼MR 3.x及之后版本客戶端默認安裝路徑為“/opt/Bigdata/client”,翼MR 3.x之前版本為“/opt/client”。具體以實際為準。
1.登錄翼MR管理控制臺。
2.選擇“集群列表 > 現有集群”,選中一個運行中的集群并單擊集群名稱,進入集群信息頁面。
3.在“節點管理”頁簽中單擊某一Master節點名稱,進入彈性云服務器管理控制臺。
4.單擊頁面右上角的“遠程登錄”。
5.根據界面提示,輸入Master節點的用戶名和密碼,用戶名、密碼分別為root和創建集群時設置的密碼。
6.執行如下命令初始化環境變量。
source/opt/Bigdata/client/bigdata_env
7.如果當前集群已開啟Kerberos認證,執行以下命令認證當前用戶。如果當前集群未開啟Kerberos認證,則無需執行該步驟。
kinit 翼MR集群用戶
例如, kinit admin
8.執行如下命令拷貝OBS文件系統中的程序到集群的Master節點。
hadoop fs -Dfs.obs.access.key=AK -Dfs.obs.secret.key=SK -copyToLocal source_path.jar
target_path.jar
例如:
hadoop fs -Dfs.obs.access.key=XXXX -Dfs.obs.secret.key=XXXX -copyToLocal "obs://翼MR-word/program/hadoop-mapreduce-examples-XXX.jar"
"/home/omm/hadoop-mapreduce-examples-XXX.jar"
AK/SK可登錄OBS控制臺,請在集群控制臺頁面右上角的用戶名下拉框中選擇“我的憑證 > 訪問密鑰”頁面獲取。
9.執行如下命令提交wordcount作業,如需從OBS讀取或向OBS輸出數據,需要增加AK/SK參數。
source /opt/Bigdata/client/bigdata_env;hadoop jar execute_jar wordcount input_path
output_path
例如:
source /opt/Bigdata/client/bigdata_env;hadoop jar
/home/omm/hadoop-mapreduce-examples-XXX.jar wordcount -Dfs.obs.access.key=XXXX-Dfs.obs.secret.key=XXXX "obs://翼MR-word/input/*"
"obs://翼MR-word/output/"
input_path為OBS上存放作業輸入文件的路徑。output_path為OBS上存放作業輸出文件地址,請設置為一個不存在的目錄。
增加,如需刪除參數,請單擊右側“刪除”。