提交Spark任务到新增Task节点
MRS自定义类型集群可以通过增加Task节点,提升计算能力。集群Task节点主要用于处理数据,不存放持久数据。
当前仅MRS自定义类型集群支持增加Task节点。
本章节指导用户通过租户资源绑定新增的Task节点,并提交Spark任务到新增的Task节点。基本内容如下所示:
添加Task节点
- 在MRS自定义类型集群的集群详情页面,选择“节点管理”页签,单击“新增节点组”,进入“新增节点组”页面。
- 根据需求配置参数。
表1 新增节点组参数说明 参数名称
描述
节点规格
选择节点组内主机的规格类型。
节点数量
设置新增节点组内的节点数量。
系统盘
设置新增节点的系统盘的规格与容量。
数据盘/数据盘数量
设置新增节点的数据盘的规格与容量及数量。
部署角色
添加“NodeManager”角色。
- 单击“确定”。
添加资源池
- 在集群详情页,单击“租户管理”。
- 单击“资源池”页签。
- 单击“添加资源池”。
- 在“添加资源池”设置资源池的属性。
- “名称”:填写资源池的名称,例如“test1”。
- “资源标签”:填写资源池的标签。例如“1”。
- “可用主机”:选择添加Task节点添加的节点。
- 单击“确定”保存。
添加租户
- 在集群详情页,单击“租户管理”。
- 单击“添加租户”,打开添加租户的配置页面,参见以下表格内容为租户配置属性。
表2 租户参数一览表 参数名
描述
名称
例如:tenant_spark
租户类型
选择“叶子租户”。当选中“叶子租户”时表示当前租户为叶子租户,无法再添加子租户。当选中“非叶子租户”时表示当前租户可以再添加子租户。
动态资源
选择“Yarn”,系统将自动在Yarn中以租户名称创建任务队列。动态资源不选择“Yarn”时,系统不会自动创建任务队列。
默认资源池容量 (%)
配置当前租户在“default”资源池中使用的计算资源百分比,例如“20%”。
默认资源池最大容量 (%)
配置当前租户在“default”资源池中使用的最大计算资源百分比,例如“80%”。
储存资源
选择“HDFS”,第一次创建租户时,系统自动在HDFS根目录创建“/tenant”目录。存储资源不选择“HDFS”时,系统不会在HDFS中创建存储目录。
文件/目录数上限
例如:100000000000
存储空间配额 (MB)
例如:50000,单位为MB。此参数值表示租户可使用的HDFS存储空间上限,不代表一定使用了这么多空间。如果参数值大于HDFS物理磁盘大小,实际最多使用全部的HDFS物理磁盘空间。
说明:为了保证数据的可靠性,HDFS中每保存一个文件则自动生成1个备份文件,即默认共2个副本。HDFS存储空间表示所有副本文件在HDFS中占用的磁盘空间大小总和。例如“存储空间配额”设置为“500”,则实际只能保存约500/2=250MB大小的文件。
存储路径
例如:“tenant/spark_test”,系统默认将自动在“/tenant”目录中以租户名称创建文件夹。例如租户“spark_test”,默认HDFS存储目录为“tenant/spark_test”。第一次创建租户时,系统自动在HDFS根目录创建“/tenant”目录。支持自定义存储路径。
服务
配置当前租户关联使用的其他服务资源,支持HBase。单击“关联服务”,在“服务”选择“HBase”。在“关联类型”选择“独占”表示独占服务资源,选择“共享”表示共享服务资源。
描述
配置当前租户的描述信息。
- 单击“确定”保存,完成租户添加。
保存配置需要等待一段时间,界面右上角弹出提示“租户创建成功。”,租户成功添加。
- 创建租户时将自动创建租户对应的角色、计算资源和存储资源。
- 新角色包含计算资源和存储资源的权限。此角色及其权限由系统自动控制,不支持通过“角色管理”进行手动管理。
- 使用此租户时,请创建一个系统用户,并分配Manager_tenant角色以及租户对应的角色。
队列配置
- 在集群详情页,单击“租户管理”。
- 单击“队列配置”页签。
- 在租户队列表格,指定租户队列的“操作”列,单击“修改”。
- 在“租户管理”页签左侧租户列表,单击目标的租户,切换到“资源”页签,单击也能打开修改队列配置页面。
- 一个队列只能绑定一个非default资源池。
默认资源标签选择添加资源池时填写的标签,其他参数请根据实际情况填写。
- 单击“确定”。
配置资源分布策略
- 在集群详情页,单击“租户管理”。
- 单击“资源分布策略”页签,资源池选择添加资源池创建的资源池。
- 在租户tenant_spark“操作”列,单击“修改”。
- 权重:20
- 最小资源:20
- 最大资源:80
- 预留资源:10
- 单击“确定”。
创建用户
- 登录FusionInsight Manager管理界面,具体请参考访问FusionInsight Manager。
- 选择“系统 > 权限 > 用户”,单击“添加用户”。
- 用户名:spark_test
- 用户类型:人机
- 用户组:hadoop、hive
- 主组:hadoop
- 角色:tenant_spark
- 单击“确定”,完成用户添加。
使用spark-submit提交任务
- 使用root用户登录客户端节点,执行如下命令:
source bigdata_env
source Spark2x/component_env
安全集群(开启kerberos认证)执行命令kinit spark_test,普通模式(关闭kerberos认证)无需执行。
输入密码,完成认证(第一次登录需要修改密码)。
cd Spark2x/spark/bin
sh spark-submit --queue tenant_spark --class org.apache.spark.examples.SparkPi --master yarn-client ../examples/jars/spark-examples_*.jar