服务群组管理承载业务流量的多个子服务,提供统一的流量入口,系统根据分配策略将流量分发到各服务。适用于灰度发布、弹性伸缩和异构资源调度等场景。
应用场景
灰度发布
将生产服务和灰度服务加入同一分组,灰度服务分配较少的流量。发布新版本时,先更新灰度服务,观察运行情况。若有问题,回滚灰度服务或停止灰度服务并切换流量到生产服务;若正常,则全量更新生产服务,更新后缩容灰度服务至0或保留少量流量。
预付费和后付费弹性伸缩
在同一分组中,预付费服务部署在专属资源组,固定副本数支撑基本需求;后付费服务部署在公共资源组,按需弹性伸缩,降低成本。
使用异构硬件资源
在GPU加速场景中,服务部署完成后,部分卡型在某些地域可能会出现停卡或库存不足的问题,导致服务无法正常扩容。使用服务群组功能在同一服务群组中动态创建不同卡型的服务,适配不同CUDA环境,实现多服务使用异构资源支持同一业务场景。因服务群组的流量入口不变,故前端透明无感知。
创建服务群组
创建服务时,您可以指定服务归属的服务群组。如果指定的群组不存在,系统会自动创建;如果存在,则新服务会加入该群组。
删除服务群组中最后一个服务时,服务群组会自动删除。
下面以创建一个pmml服务群组,并将pmml_prod和pmml_grey两个服务归属到该服务群组为例,示例如何创建服务群组。
登录PAI控制台,在页面上方选择目标地域,并在右侧选择目标工作空间,然后单击进入EAS。
在服务群组页签,单击新建群组与服务。
在自定义部署页面,配置参数,并单击部署。
参照步骤2~3,创建服务pmml_grey归属于服务群组pmml。
服务创建成功后,您可以在服务群组页签单击群组名称pmml进入群组详情页面,查看归属于该群组的服务列表。
后加入群组的服务默认不承载流量,请参考修改流量分配策略。
查看流量入口
服务群组拥有统一的流量入口,群组中各服务还拥有独立的流量入口。
群组总流量入口:该入口的流量会根据策略分配到不同服务。服务群组中的服务可以创建或删除,但入口地址不变。
服务独立流量入口:该入口与具体服务的生命周期关联,流量始终会流入指定的服务。服务删除后,入口会被销毁。完成群组切流后,仍需使用该入口地址访问服务和在线调试。
获取方式:
在推理服务页签,单击目标服务名称进入概览页面。
在基本信息区域,单击查看调用信息。
在弹出的对话框中查看调用地址及Token信息。
入口
地址格式
示例
群组总流量入口
<endpoint>/api/predict/<group_name>http://182848887922****.vpc.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml服务独立流量入口
<endpoint>/api/predict/<group_name>.<service_name>http://182848887922****.vpc.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml
修改流量分配策略
在群组详情页顶部的群组名称旁,可切换流量分配方式。EAS当前支持两种流量分配方式:
副本数分配:流量会根据各服务的推理副本数量动态分配。例如,服务A有1个副本,服务B有3个副本,则A分配25%流量,B分配75%的流量。关闭流量分配功能后,该服务不再参与群组流量分配,但可单独访问调用。
自定义权重分配:流量根据各服务的权重加权分配。例如,服务A的流量权重为100,服务B的流量权重为400,则A分配20%流量,B分配80%流量。
注意:
打开目标服务流量分配列开关,表示该服务承接流量;关闭,表示该服务不承接流量。
重要无论哪种流量分配方式,关闭流量分配开关后,不再参与群组流量分配,但可单独访问调用。
选择自定义权重分配流量,请在流量权重列的编辑按钮设置该服务的流量权重。
支持通过API调整服务流量权重和流量状态,详情参见调整服务流量权重和流量状态。