BpFile(id=167, bpId=62, name=ACK集群低成本高弹性架构, author=null, keyword=容器服务,高弹性,低成本, description=使用ACK容器服务进行应用容器化改造以及容器集群节点的高弹性低成本伸缩架构, position=null, ossUrl=bp-NRC6OQZOLLZSW89Z.pdf, tags=null, level=null, tagList=null, products=null, productList=null, hotspot=null, oneClick=1, createTime=null, modifiedTime=null, timeConsuming=null, status=1, pdfDescription=
场景描述
1.业务应用容器化改造以后对应用的高弹性
关注
2.在线业务有比较明显的波峰波谷效应
3.计算类的离线任务例如机器学习、基因测
序对实时性要求不高,但是对成本敏感
4.定时任务类型,例如批量计算,成本节约
与调度能力比较关注
5.闲时计算等一些比较特殊的计算场景对资
源利用和调度能力也比较关注
解决问题
1.应用容器化改造以后如何面对应用负载的
波动变化
2.对于突发应用负载峰值的弹性应对能力
3.资源成本和系统可用性的权衡博弈
产品列表
⚫容器服务Kubernetes版(ACK)、云数据库
RDS版、云数据库Redis版、文件存储NAS、
SLB、VPC、PTS
, templateId=JEBYBL48ESE5422G, freetry=null, visitTime=null, visitCount=null, video_url=null, buttonName=null, buttonUrl=null, targetId=JEBYBL48ESE5422G, partner=null, partnerUrl=null, partnerLogo=null, cooperation=, cooperationList=null)
1
ACK集群低成本高弹性架构 最佳实践
方案架构图
场景描述
1.业务应用容器化改造以后对应用的高弹性
关注
2.在线业务有比较明显的波峰波谷效应
3.计算类的离线任务例如机器学习、基因测
序对实时性要求不高,但是对成本敏感
4.定时任务类型,例如批量计算,成本节约
与调度能力比较关注
5.闲时计算等一些比较特殊的计算场景对资
源利用和调度能力也比较关注
解决问题
1.应用容器化改造以后如何面对应用负载的
波动变化
2.对于突发应用负载峰值的弹性应对能力
3.资源成本和系统可用性的权衡博弈
产品列表
⚫ 容器服务 Kubernetes版(ACK)、云数据库
RDS版、云数据库 Redis版、文件存储 NAS、
SLB、VPC、PTS
2文档模板(手册名称)/Error! Use the Home tab to apply
云服务器 ECS(产品名称) 标题 to the text that you want to appear here.
文档版本:20150122(发布日期) I
3文档模板(手册名称)/Error! Use the Home tab to apply
云服务器 ECS(产品名称) 标题 to the text that you want to appear here.
文档版本:2020/02/03
阿里云
ACK集群低成本高弹性架构
文档版本:20150122(发布日期) II
4ACK集群低成本高弹性架构 文档版本信息
文档版本信息
文本信息
属性 内容
文档名称 ACK集群低成本高弹性架构
文档编号 062
文档版本 V1.6
版本日期 2020-02-03
文档状态 外部发布
制作人 明誉
审阅人
文档变更记录
版本编号 日期 作者 审核人 说明
V1.0 2019/06/24 明誉 创建
V1.1 2019/07/26 筱晖 文档优化
更新强调产品
V1.2 2019/09/11 明誉
使用建议说明
更新容器平台
V1.3 2019/09/19 明誉 构建一些使用
建议
增加动态存储
V1.4 2019/12/14 明誉
卷持久化存储
文档版本:2020/02/03 I
5ACK集群低成本高弹性架构 文档版本信息
Kubernetes节
V1.5 2019/12/31 明誉 点弹性伸缩原
理介绍
增加 SLS
external
V1.6 2020/02/03 明誉
metrics 进行
HPA
文档版本:2020/02/03 II
6ACK集群低成本高弹性架构 前言
前言
概述
本文主要解决在互联网电商等行业,用户在对业务应用进行容器化改造以后,如何利
用云厂商提供的云原生容器服务能力进行容器组编排,以及如何提高集群管理的弹性
伸缩能力,优化容器集群计算成本。
应用范围
⚫ 业务应用容器化改造以后关注容器组集群高弹性能力。
⚫ 在线业务有比较明显的波峰波谷效应。
例如,电商活动、大部分业务类网站的业务峰值在白天,而娱乐类网站大多数在晚
间达到业务峰值;在线业务也时常会由于一些突发事件出现瞬时的业务尖峰。
⚫ 计算类的离线任务。
例如,机器学习、基因测序等对实时性要求不高,但是对成本敏感的场景。
名词解释
⚫ Pod(容器组):Pod是 Kubernetes集群中可以创建的最小部署单元,由一个或
者多个容器(例如 Docker容器)组成。Pod里的容器共享存储、网络和容器进
行时配置项。
⚫ Namespace(命名空间):命名空间提供了一种在不同用户间分割集群资源的方
法。当 Kubernetes集群规模较大时,可以使用命名空间来创建多个虚拟的集群。
⚫ Kubernetes亲和性调度:K8S集群自动为 Pod资源选择某个节点,控制集群中
的 Pod如何调度,具体包括 NodeName、 NodeSelector、 NodeAffinity、 PodAffinity
这几种方式。
⚫ Service(服务):在逻辑上代理后端 Pod,定义 Pod的逻辑分组和访问 Pod的
策略。利用 Service可以实现服务发现和负载均衡,服务天然适应微服务架构。
⚫ 应用:每个应用可以由若干服务组成,例如,WordPress应用可以由 Web服务
和 DB服务等组成。
⚫ Volume:最基础的存储抽象,支持多种类型,包括本地存储、NFS、FC以及众
多的云存储。用户也可以编写自己的存储插件来支持特定的存储系统。
文档版本:2020/02/03 IV
7ACK集群低成本高弹性架构 前言
⚫ PV/PVC:PV(Persistent Volume)是 Kubernetes中的一个资源对象,创建一
个资源相当于创建一个存储资源对象;PVC(Persistent Volume Claim)是用户
对存储资源的请求,根据 PVC中指定的条件 Kubernetes可以动态寻找 PV资源
进行绑定。PV和 PVC的绑定可以通过 StorageClassName、matchLabels或者
matchExpressions方式进行。
⚫ 弹性伸缩: Kubernetes 中共有三种不同的弹性伸缩策略,分别为 HPA
( HorizontalPodAutoscaling)、 VPA( VerticalPodAutoscaling)与 CA
(ClusterAutoscaler)。其中,HPA和 VPA主要扩缩容的对象是容器,而 CA的
扩缩容对象是节点。
文档版本:2020/02/03 V
8ACK集群低成本高弹性架构 最佳实践概述
最佳实践概述
概述
本实践针对无状态应用进行容器化改造,同时有应对高峰业务以及定时、批量计算任
务
对容器集群节点计算资源有高弹性低成本优化的需求的用户,利用云上资源的灵活性
和规模化优势,构建云上高弹性、稳定、成本优化的服务。
场景描述
客户业务场景
⚫ 业务应用容器化改造以后对用用的高弹性关注
⚫ 在线业务有比较明显的波峰波谷效应
⚫ 计算类的离线任务例如机器学习、基因测序对实时性要求不高,但是对成本敏感
⚫ 定时任务类型,例如批量计算,成本节约与调度能力比较关注
⚫ 闲时计算等一些比较特殊的计算场景对资源利用和调度能力也比较关注
遇到的痛点
⚫ 应用容器化改造以后如何面对应用负载的波动变化
⚫ 对于突发应用负载峰值的弹性应对能力
⚫ 资源成本和系统可用性的权衡博弈
文档版本:2020/02/03 VI