MRS集群支持Spark2x在集群安裝完成后對接OBS文件系統。
使用本章節前已參考配置存算分離集群(委托方式)或配置存算分離集群(AKSK方式)完成存算分離集群配置。
集群安裝后使用spark beeline
1.登錄FusionInsight Manager,選擇“集群 > 服務 > Spark2x > 配置 > 全部配置”。
在左側的導航列表中選擇“JDBCServer2x>自定義”。在參數“spark.hdfs-site.customized.configs”中添加配置項“dfs.namenode.acls.enabled”,值為“false”。

2.在搜索框中搜索參數“spark.sql.statistics.fallBackToHdfs”,修改該參數值為“false”。


3.保存配置并重啟JDBCServer2x實例。
4.使用安裝客戶端用戶登錄客戶端安裝節點。
5.配置環境變量。
source ${client_home}/bigdata_env
6.如果是安全集群,使用以下命令用戶進行用戶認證,如果當前集群未啟用Kerberos認證,則無需執行此命令。
kinit 用戶名
7.在spark-beeline中訪問OBS,例如在“obs://mrs-word001/table/”目錄中創建表“test”。
create table test(id int) location ' obs://mrs-word001/table/ ';
8.執行如下命令查詢所有表,返回結果中存在表test,即表示訪問OBS成功。
show tables;
詳見下圖:Spark2x驗證返回已創建的表名


9.使用“Ctrl + C”退出spark beeline。
集群安裝后使用spark sql
1.使用安裝客戶端用戶登錄客戶端安裝節點。
2.配置環境變量。
source ${client_home}/bigdata_env
3.修改配置文件:
vim ${client_home}/Spark2x/spark/conf/hdfs-site.xml
<property>
<name>dfs.namenode.acls.enabled</name>
<value>false</value>
</property>
4.如果是安全集群,使用以下命令用戶進行用戶認證,如果當前集群未啟用Kerberos認證,則無需執行此命令。
kinit 用戶名
5.在spark-sql中訪問OBS,例如在“obs://mrs-word001/table/”目錄中創建表“test”。
6.進入spark bin目錄: cd ${client_home}/Spark2x/spark/bin ,執行./spark-sql登錄spark-sql命令行。
7.在spark-sql命令行執行以下命令:
create table test(id int) location ' obs://mrs-word001/table/ ';
8.執行語句 show tables; 查看表是否存在。
9.執行 exit; 退出spark-sql命令行。

說明OBS文件系統打印大量日志可能導致讀寫性能受影響,可通過調整OBS客戶端日志級別優化,日志調整方式如下:
cd ${client_home}/Spark2x/spark/conf
vi? log4j.properties
在文件中添加OBS日志級別配置
log4j.logger.org.apache.hadoop.fs.obs=WARN
log4j.logger.com.obs=WARN
