切换调度器
操作场景
新安装的MRS集群默认即使用了Superior调度器,如果是历史版本升级的集群,集群管理员可以根据以下指导,切换Capacity调度器与Superior调度器。
前提条件
- 确保集群网络通畅,网络环境安全,Yarn服务状态正常。
- 在切换调度器期间,不允许做添加、删除、修改租户,以及启停服务等操作。
切换Capacity调度器与Superior调度器
- 当前操作仅适用于集群新发放,需切换调度器场景。
- 切换调度器期间,请勿对该集群执行操作,防止由于切换过程中修改数据库导致操作失败。
- 切换调度器过程中,由于要重启Resource Manager,因此切换期间向Yarn提交任务会失败。
- 切换调度器完成后,将会使用目标调度器相关参数。
操作步骤
- 登录FusionInsight Manager系统。选择 ,查看Yarn服务的状态是否正常,如果不正常请先修复Yarn状态。
- 使用omm用户登录主管理节点。
- 切换调度器。
- 执行以下命令将Capacity调度器转换至Superior调度器:
sh ${BIGDATA_HOME}/om-server/om/sbin/cleanSwitchScheduler.sh 1
执行结果如下表示切换成功。
Will change scheduler type to SUPERIOR Start to delete all tenant resource. End to delete all tenant resource. Start to delete all resource pool. End to delete all resource pool. ... End to switch scheduler by reset.
- 执行以下命令将Superior调度器转换至Capacity调度器:
sh ${BIGDATA_HOME}/om-server/om/sbin/cleanSwitchScheduler.sh 0
执行结果如下表示切换成功。
Will change scheduler type to CAPACITY Start to delete all tenant resource. End to delete all tenant resource. Start to delete all resource pool. End to delete all resource pool. ... End to switch scheduler by reset.
登录主管理节点,可查看调度器切换的日志信息。
- ${BIGDATA_LOG_HOME}/controller/aos/clean_switch_scheduler.log
- ${BIGDATA_LOG_HOME}/controller/aos/aos.log
- ${BIGDATA_LOG_HOME}/controller/aos/plugin.log
- 执行以下命令将Capacity调度器转换至Superior调度器:
从Capacity调度器切换到Superior调度器
对系统的影响
- 调度器切换过程中,由于要重启Resource Manager,因此切换期间向Yarn提交任务会失败。
- 调度器切换过程中,正在Yarn上面执行的Job的Task任务会继续执行,但不会启动新的Task。
- 调度器切换完成后,在Yarn上面执行的任务有可能会失败进而导致业务中断。
- 调度器切换完成后,在租户管理中将使用Superior的相关参数。
- 调度器切换完成后,Capacity调度器中“资源容量”为“0”的租户队列在Superior调度器中分配不到资源,提交到该租户队列的任务会执行失败。建议在Capacity调度器中不要将租户队列的“资源容量”配置为“0”。
- 调度器切换完成后,在观察期内,不允许对资源池、Yarn节点标签(Label)和租户做添加、删除的操作。若添加或者删除了资源池、Yarn节点标签(Label)或租户,将不支持回退到Capacity调度器。
- 切换调度器观察期建议为一周,如果对资源池、Yarn节点标签(Label)或租户做了添加、删除的操作,将视为观察期结束。
- 回退可能会丢失部分或者所有的Yarn任务信息。
操作步骤
- 修改Yarn服务参数,并确保Yarn服务状态正常。
- 使用omm用户登录主管理节点。
- 执行调度器切换。
调度器切换分为三种模式:
0:将Capacity调度器配置转换到Superior,然后将Capacity调度器切换到Superior。
1:只将Capacity调度器配置转换到Superior。
2:只将Capacity调度器切换到Superior。
- 集群环境相对简单,租户数小于20的情况下,建议执行模式0,将Capacity调度器配置转换到Superior的同时切换调度器。
sh ${BIGDATA_HOME}/om-server/om/sbin/switchScheduler.sh -c 集群ID -m 0
“集群ID”为需执行操作集群ID号,可在FusionInsight Manager的“集群 > 集群属性”中查看。
Start to convert Capacity scheduler to Superior Scheduler, clusterId=1 Start to convert Capacity scheduler configurations to Superior. Please wait... Convert configurations successfully. Start to switch the Yarn scheduler to Superior. Please wait... Switch the Yarn scheduler to Superior successfully.
- 集群环境相对复杂,租户信息复杂,且要求将capacity调度器队列配置信息保留到Superior调度器,建议先执行模式1,将Capacity调度器配置信息转化成Superior配置信息,对转换过来的配置信息做检查后,再执行模式2,将Capacity调度器切换到Superior。
- 执行以下命令,将Capacity调度器配置信息转化成Superior配置信息。
sh ${BIGDATA_HOME}/om-server/om/sbin/switchScheduler.sh -c 集群ID -m 1
Start to convert Capacity scheduler to Superior Scheduler, clusterId=1 Start to convert Capacity scheduler configurations to Superior. Please wait... Convert configurations successfully.
- 执行以下命令,将Capacity调度器切换到Superior。
sh ${BIGDATA_HOME}/om-server/om/sbin/switchScheduler.sh -c 集群ID -m 2
Start to convert Capacity scheduler to Superior Scheduler, clusterId=1 Start to switch the Yarn scheduler to Superior. Please wait... Switch the Yarn scheduler to Superior successfully.
- 执行以下命令,将Capacity调度器配置信息转化成Superior配置信息。
- 不保存Capacity调度器队列配置,建议直接执行模式2,只切换调度器,不转换配置。
- 登录FusionInsight Manager,删除除了default租户的所有租户。
- 登录FusionInsight Manager,删除除了default资源池的所有资源池。
执行以下命令,将Capacity调度器切换到Superior。
sh ${BIGDATA_HOME}/om-server/om/sbin/switchScheduler.sh -c 集群ID -m 2
Start to convert Capacity scheduler to Superior Scheduler, clusterId=1 Start to switch the Yarn scheduler to Superior. Please wait... Switch the Yarn scheduler to Superior successfully.
登录主管理节点,可查看调度器切换的日志信息。
- ${BIGDATA_LOG_HOME}/controller/aos/switch_scheduler.log
- ${BIGDATA_LOG_HOME}/controller/aos/aos.log
- 集群环境相对简单,租户数小于20的情况下,建议执行模式0,将Capacity调度器配置转换到Superior的同时切换调度器。