kubernetes性能测试实践

本文探讨了kubernetes性能测试的要点,包括API响应性、Pod启动时间等标准。测试目的是评估在不同集群使用率下,如50%、90%等,创建新pod所需时间,以及容器启动时延。在网易云容器服务的k8s集群性能测试中,关注点包括集群整体性能、apiserver、scheduler、controller和kubelet的性能和稳定性,以及etcd的写入性能和存储设备影响。
摘要由CSDN通过智能技术生成

本文经作者张文娟授权发布。 

欢迎访问网易云社区,了解更多网易技术产品运营经验。

概述

随着容器技术的发展,容器服务已经成为行业主流,然而想要在生产环境中成功部署和操作容器,关键还是容器编排技术。市场上有各种各样的容器编排工具,如Docker原生的Swarm、Mesos、kubernetes等,其中Google开发的kubernetes因为业界各大巨头的加入和开源社区的全力支撑,成为了容器编排的首选。

简单来讲,kubernetes是容器集群管理系统,为容器化的应用提供资源调度、部署运行、滚动升级、扩容缩容等功能。容器集群管理给业务带来了便利,但是随着业务的不断增长,应用数量可能会发生爆发式的增长。那在这种情况下,kubernetes能否快速地完成扩容、扩容到大规模时kubernetes管理能力是否稳定成了挑战。

因此,结合近期对社区kubernetes性能测试的调研和我们平时进行的k8s性能测试实践,和大家探讨下kubernetes性能测试的一些要点,不足之处还望大家多多指正!

测试目的

    20180713103616cdb355e2-46fa-43dd-bc9d-47f7b2419ebb.png

如上kubernetes架构图所示,无论外部客户端,还是kubernetes集群内部组件,其通信都需要经过kubernetes的apiserver,API的响应性决定着集群性能的好坏。

其次,对于外部客户而言,他只关注创建容器服务所用的时间,因此,pod的启动时间也是影响集群性能的另外一个因素。

目前,业内普遍采用的性能标准是:

    API响应性:99%的API调用响应时间小于1s。
    Pod启动时间:99%的pods(已经拉取好镜像)启动时间在5s以内。

“pod启动时间”包括了ReplicationController的创建,RC依次创建pod,调度器调度pod,Kubernetes为pod设置网络,启动容器,等待容器成功响应健康检查,并最终等待容器将其状态上报回API服务器,最后API服务器将pod的状态报告给正在监听中的客户端。

除此之外,网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值