启动RSS模式成功后可使用ResourceManager Web UI查看启动结果,并提交Spark-SQL任务进行验证。
已完成启动前准备。
yarn rmadmin -addToClusterNodeLabels "RSS"
yarn node -list
yarn rmadmin -replaceLabelsOnNode "agent04=RSS"
capacity-scheduler.xml修改如下配置,并分发该文件至所有节点,${HADOOP_HOME}为hadoop安装路径。
配置项 |
值 |
说明 |
---|---|---|
yarn.scheduler.capacity.<queue-path>.accessible-node-labels |
逗号分割的分区列表。 |
指定队列的可访问分区列表。 |
yarn.scheduler.capacity.<queue-path>.accessible-node-labels.<label>.capacity |
值规则可参考yarn.scheduler.capacity.<queue-path>.capacity。 |
指定队列在指定可访问分区的资源容量。 重要 必须配置其所有祖先队列的容量才能生效。 |
yarn.scheduler.capacity.<queue-path>.accessible-node-labels.<label>.maximum-capacity |
值规则可参考yarn.scheduler.capacity.<queue-path>.maximum-capacity,默认值为100。 |
指定队列在指定可访问分区的可使用的最大资源容量。 |
yarn.scheduler.capacity.<queue-path>.default-node-label-expression |
分区名,默认为空字符串代表DEFAULT分区。 |
指定队列所提交作业中没有特别指定分区的容器请求所使用的默认分区。 |
<!-- 在XML中Node Label相关新增配置项 --> <property> <!-- 配置default队列可访问RSS分区,必须 --> <name>yarn.scheduler.capacity.hadoop_user.default.accessible-node-labels</name> <value>RSS</value> </property> <property> <!-- 配置default队列所有祖先队列RSS分区容量,必须 --> <name>yarn.scheduler.capacity.hadoop_user.accessible-node-labels.RSS.capacity</name> <value>100</value> </property> <property> <!-- 配置default队列在RSS分区容量,必须 --> <name>yarn.scheduler.capacity.root.default.accessible-node-labels.RSS.capacity</name> <value>100</value> </property> <property> <!-- 配置default队列在RSS分区最大容量,可选,默认为100 --> <name>yarn.scheduler.capacity.hadoop_user.default.accessible-node-labels.RSS.maximum-capacity</name> <value>100</value> </property>
完成配置并保存后,在Yarn状态页使用ResourceManager组件中的refreshQueues热更新调度器队列配置,并在控制台上观察任务是否成功。成功后使用ResourceManager Web UI验证结果。
执行以下命令更新队列。
yarn rmadmin -refreshQueues
#launch server 所在的Yarn分区标签,修改为ESS模式则需将此处置空 ock_master_partition_label="RSS" ... #OCK占用的占用的内存空间,单位为MB ock_memory="61440"
mf.conf示例如下:
#mf占用的内存空间,单位为bit ock.mf.mem_size = 53687091200
agent01 agent02 agent03
修改完成后,分发至所有节点。
sed -i '9i\export HCOM_CONNECTION_RECV_TIMEOUT_SEC=30' /home/ockadmin/opt/ock/ucache/24.0.0/linux-aarch64/sbin/ock-start-ockd.sh sh /home/ockadmin/opt/ock/ucache/24.0.0/linux-aarch64/sbin/ock-launch-cluster.sh
如图5所示,设置为RSS标签的节点启动了2个container,分别为10GB的Yarn启动进程和60GB的启动OCKD进程的container。