ServiceStage支持丰富的调度策略,包括静态的全局调度策略,以及动态的运行时调度策略,您可以根据需要自由组合使用这些策略来实现业务需求。
概念阐述
-
应用与可用区的亲和性
- 亲和:决定应用组件部署在特定的可用区中。
- 反亲和:决定应用组件不能部署在特定的可用区中。
-
应用与节点间的亲和性
- 亲和:决定应用组件部署在某些特定的主机中。
- 反亲和:决定应用组件不能部署在某些特定的主机中。
-
应用间的亲和性
决定应用组件部署在相同或不同节点中。
亲和:用户可根据业务需求进行应用组件的就近部署,应用组件间通信就近路由,减少网络消耗。如图1所示,APP1、APP2、APP3和APP4部署在相同节点上,为亲和性部署。
图 应用间亲和
反亲和:同个应用组件的多个实例反亲和部署,减少宕机影响;互相干扰的应用反亲和部署,避免干扰。
如图所示,APP1、APP2、APP3和APP4分别部署在不同节点上,这四个应用为反亲和性部署。
图 应用间反亲和
注意事项
在设置应用组件间的亲和性和应用组件与节点间的亲和性时,需确保不要出现互斥情况,否则应用会部署失败。例如如下互斥情况,应用将会部署失败:
- APP1、APP2设置了应用组件间的反亲和,例如APP1部署在Node1,APP2部署在Node2。
- APP3部署上线时,既希望与APP2亲和,又希望可以部署在不同节点如Node3上,这就造成了应用组件亲和和节点亲和间的互斥,导致最终应用组件部署失败。
操作步骤
“组件类型”为“通用”且运行时为“Docker”的组件,执行以下操作:
1、进入应用组件实例调度策略设置界面:
- 在部署应用组件的组件配置过程中设置应用组件实例调度策略,请执行步骤2。
- 组件已经部署完成后设置应用组件实例调度策略,请执行步骤3。
2、在“组件配置”界面:
- 参考下表设置应用组件实例调度策略。
目的 | 步骤 |
---|---|
设置应用组件与可用区的亲和 | 单击“添加亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与可用区的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与节点间的亲和 | 单击“添加亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件与节点间的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件间亲和 | 单击“添加亲和的对象”。 对象类型选择“组件”,选择待亲和的应用组件。 单击“确定”。 系统会将您选择的应用组件设置为亲和,部署到相同的节点中。 |
设置应用组件间反亲和 | 单击“添加反亲和的对象”。 对象类型选择“组件”,选择待反亲和的应用组件。 设置完成后,单击“确定”。 系统会将您选择的应用组件设置为反亲和,部署到不同的节点中。 |
目的 | 步骤 |
---|
- 单击“下一步 规格确认”,完成组件部署,操作结束。
3、登录ServiceStage控制台,选择“应用管理 > 应用列表”,可查看到所有应用。
4、单击应用名称,进入应用“概览”页。
5、在“环境视图”页签,选择“环境”,可以看到已经部署在该环境下的应用组件。
6、单击应用组件名称,进入应用组件实例“概览”页,单击“更新升级”。
7、展开“高级设置 > 部署配置”,在“调度策略”页签填写以下参数。
目的 | 步骤 |
---|---|
设置应用组件与可用区的亲和 | 单击“添加亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与可用区的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与节点间的亲和 | 单击“添加亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件与节点间的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件间亲和 | 单击“添加亲和的对象”。 对象类型选择“组件”,选择待亲和的应用组件。 单击“确定”。 系统会将您选择的应用组件设置为亲和,部署到相同的节点中。 |
设置应用组件间反亲和 | 单击“添加反亲和的对象”。 对象类型选择“组件”,选择待反亲和的应用组件。 设置完成后,单击“确定”。 系统会将您选择的应用组件设置为反亲和,部署到不同的节点中。 |
目的 | 步骤 |
---|
8、单击“重新部署”,完成应用组件实例调度策略设置。
其他类型的组件,执行以下操作:
1、进入应用组件实例调度策略设置界面:
- 在部署应用组件的组件配置过程中设置应用组件实例调度策略,请执行步骤6。
- 组件已经部署完成后设置应用组件实例调度策略,请执行步骤2。
2、登录ServiceStage控制台,选择“应用管理 > 应用列表”,可查看到所有应用。
3、单击应用名称,进入应用“概览”页。
4、在“环境视图”页签,选择“环境”,可以看到已经部署在该环境下的应用组件。
5、单击应用组件名称,进入应用组件实例“概览”页,单击“更新升级”。
6、展开“高级设置 > 部署配置”,在“调度策略”页签填写以下参数。
目的 | 步骤 |
---|---|
设置应用组件与可用区的亲和 | 单击“添加亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与可用区的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“可用区”,选择待亲和的可用区。 单击“确定”。 |
设置应用组件与节点间的亲和 | 单击“添加亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件与节点间的反亲和 | 单击“添加反亲和的对象”。 对象类型选择“节点”,选择待亲和的节点。 单击“确定”。 |
设置应用组件间亲和 | 单击“添加亲和的对象”。 对象类型选择“组件”,选择待亲和的应用组件。 单击“确定”。 系统会将您选择的应用组件设置为亲和,部署到相同的节点中。 |
设置应用组件间反亲和 | 单击“添加反亲和的对象”。 对象类型选择“组件”,选择待反亲和的应用组件。 设置完成后,单击“确定”。 系统会将您选择的应用组件设置为反亲和,部署到不同的节点中。 |
目的 | 步骤 |
---|
7、完成应用组件实例调度策略设置:
- 在部署应用组件的组件配置过程中设置应用组件实例调度策略,单击“下一步 规格确认”,完成组件部署。
- 组件已经部署完成后设置应用组件实例调度策略,单击“重新部署”。