开发者社区 > 云原生 > 正文

达到高 SLO 的方法一般分为哪几点?

达到高 SLO 的方法一般分为哪几点?

展开
收起
vncamyi27xznk 2021-11-29 16:22:53 319 0
1 条回答
写回答
取消 提交回答
  • 1.第一点,在提升成功率的进程中,我们面临的最大问题就是镜像下载的问题。要知道,Pod 必须在规定时间内交付,而镜像下载通常需要非常多的时间。为此,我们通过计算镜像下载时间,还专门 设置了一个ImagePullCostTime 的错误,即镜像下载时间太长,导致 Pod 无法按时交付。还好,阿里镜像分发平台 Dragonfly 支持了 Image lazyload 技术,也就是支持远程镜像,在 Kubelet创建容器时,不用再下载镜像。所以,这大大加速了 Pod 的交付速度。 2.第二点,对于提升单个 Pod 成功率,随着成功率的提升,难度也越来越难。可以引入一些workload 进行重试。在蚂蚁,paas 平台会不断重试,直到 Pod 成功交付或者超时。当然,在重试时,之前的失败的节点需要排除。 3.第三点,关键的 Daemonset 一定要进行检查,如果关键 Daemonset 缺失,而把 Pod 调度上去,就非常容易出问题,从而影响创建/删除链路。这需要接入故障机体系。4. 第四点,很多 Plugin,如 CSI Plugin,是需要向 Kubelet 注册的。可能存在节点上一切正常,但 向 Kubelet 注册的时候失败,这个节点同样无法提供 Pod 交付的服务,需要接入故障机体系。最后一点,由于集群中的用户数量是非常多的,所以隔离非常重要。在权限隔离的基础上,还需要 做到 QPS 隔离,及容量的隔离,防止一个用户的 Pod 把集群能力耗尽,从而保障其他用户的利益。

    答复内容摘自《云原生技术与架构实践年货小红书》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/topic/download?id=1127

    2021-11-29 21:29:52
    赞同 展开评论 打赏
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
“静态调用链路发现“在APM中的应用场景分析及实践探索 立即下载
“静态调用链路发现”应用场景分析及实践探索 立即下载
如何实现应用的持续发布 立即下载