認識一下MRS裏的“中間人”Alluxio

摘要:Alluxio在mrs的數據處理生態中處於計算和存儲之間,爲上層spark、presto、mapredue、hive計算框架提供了數據抽象層,計算框架可以通過統一的客戶端api和全局命名空間訪問底層的存儲系統,並切提供內存級的I/O吞吐率。
本文分享自華爲雲社區《MRS:Alluxio的使用介紹》,作者: 劍指南天。
 

1. Alluxio的簡介

Alluxio在mrs的數據處理生態中處於計算和存儲之間,爲上層spark、presto、mapredue、hive計算框架提供了數據抽象層,計算框架可以通過統一的客戶端api和全局命名空間訪問底層的存儲系統,並切提供內存級的I/O吞吐率。

2. Alluxio的架構

Alluxio Master主要負責管理元數據,執行分佈式存儲元數據操作,Secondary master用戶checkpoint日誌(journal)和容錯

Alluxio Worker負責存儲塊數據,每個worker管理自己存儲的塊的元信息,執行底層基於數據的存儲操作

Client是應用與Alluxio交互的工具

3. Alluxio的使用

3.1 統一的命名空間和統一的客戶端API

Alluxio提供統一的命名空間,用作底層文件存儲系統數據的緩存,在不同的UFS實現數據的有效管理。使用透明的掛載,將Alluxio的命名空間和UFS命名空間之間保持一致,通過Alluxio訪問UFS中的數據和直接訪問UFS的數據,結果是一致的。Alluxio提供了客戶端API,可以通過Alluxio實現對不同UFS的訪問

3.2 MRS Alluxio配置底層存儲系統

3.2.1 根掛載點類型

配置HDFS作爲Alluxio的底層文件系統(開啓Kerberos認證的安全集羣不支持該功能)。登錄mrs manager頁面,進入Alluxio的“全部配置”頁面。修改參數“alluxio.master.mount.table.root.ufs”的值爲“hdfs://hacluster/XXX/”。然後保存配置,然後重啓配置過期的服務。

配置OBS作爲Alluxio的底層文件系統。首先給集羣配置有OBS OperateAccess權限的委託,用於訪問obs。登錄mrs manager頁面,進入Alluxio的“全部配置”頁面。修改參數“alluxio.master.mount.table.root.ufs”的值爲“obs://<OBS_BUCKET>/<OBS_DIRECTORY>/”。然後保存配置,然後重啓配置過期的服務。

根掛載只有一個,並且只能在啓動服務前配置。

  • 內嵌掛載點

內嵌掛載點可以在Alluxio根目錄下的任何目錄,可以在服務啓動之後,通過客戶端命令掛載,可以有多個掛載點。

MRS集羣創建後,默認的底層存儲地址是hdfs://hacluster/,即將HDFS的根目錄映射到Alluxio。首先給集羣配置有OBS OperateAccess權限的委託,用於訪問obs。使用Alluxio客戶端執行如下命令,將OBS容器內部的目錄掛載到Alluxio的/obs目錄。

alluxio fs mount /obs obs://<OBS_BUCKET>/<OBS_DIRECTORY>/

3.3 通過數據應用訪問Alluxio(參考https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_0760.html)

3.4 Alluxio web訪問

Mrs Alluxio並沒有在manager頁面直接提供Alluxio的web訪問鏈接。但是可以參照開源的方案,使用http://{alluxio_master_active_ip}:19999訪問web頁面。

3.4.1如何確定哪個master節點是active?

登錄manager頁面,打開Alluxio服務進入master實例查看或者使用客戶端命令aluxio fs leader查看。

3.4.2如何訪問Alluxio web頁面?

可以通過給該節點綁定彈性ip通過公網訪問(注意:需要在安全組放開19999端口)。或者通過創建一個windows ECS,打通該節點到這臺window ECS的網絡,然後通過私有ip訪問。

3.5 Alluxio元數據的備份

3.6 Alluxio的常用文件操作和管理員命令

3.6.1 常用文件操作

3.6.2 管理員命令

3.6.2.1 validateEnv工具命令

檢查本地環境是否存在導致Alluxio部署的問題

alluxio validateEnv master

alluxio validateEnv worker

alluxio validateEnv all

配置設置完整性檢查

alluxio validateConf

3.6.2.2 文件系統管理功能

backup:備份Alluxio元數據,默認根掛載目錄的/alluxio_backups路徑,也可以指定存儲路徑。

doctor:檢查master和worker配置不一致的地方,需要在服務運行時運行。

getBlockInfo:需要提供block的id,查詢塊的信息

report:生成一個Alluxio集羣總體的健康狀態

 

點擊關注,第一時間瞭解華爲雲新鮮技術~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章