Istio为应用部署增加了很多功能,包括流量策略、可观察性和安全通信。但是,强行在集群中添加Istio是有代价的。虽然Istio 基准性能测试提供了在实验环境下Istio的极限性能,但是为了判断Istio是否适合您的情况并做出明智的决定,我们认为使用广泛落地实践的典型电商业务场景进行的性能测试显得更为重要。
为了模仿真实的业务场景,我们挑选了mall-swarm项目作为性能测试基准项目。
mall-swarm项目是mall项目的微服务化版本,是一套比较典型的电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现,采用Docker容器化部署,Github star 47.7k。
Istio选择1.6版本,并使用SolarMesh进行安装。SolarMesh是一款基于Istio的云原生流量监管平台,不仅提供应用网络观测能力,还有方便快捷的策略配置、安全可靠的Istio使用体验。同时,使用SolarMesh能快速安装Istio,并且在后续不断接入或移除Sidecar做对比试验的时候起到重要的作用。
首先准备1个K8s集群共有4个节点:
- 1个master
- 3个node
NAME STATUS ROLES AGE VERSION
10.10.13.34 Ready,SchedulingDisabled master 280d v1.15.0
10.10.13.35 Ready node 280d v1.15.0
10.10.13.36 Ready node 280d v1.15.0
10.10.13.37 Ready