| The development of cloud computing has brought great changes to the whole information industry.Splitting a large application into multiple independent units according to the function can greatly improve development efficiency,robustness,and elasticity.Due to the natural distributed characteristics of microservice architecture applications,it is very suitable for cloud computing paradigm.Many cloud applications are developed and deployed in the form of microservices.Microservice architecture is also suitable for edge as a cloud extension.As a lightweight virtualization technology,container technology is very suitable for hosting microservices because of its low resource consumption,low cost,and programming language independence.It is a popular way to write applications into microservices style and package them into containers,and finally deploy them through the cloud container orchestrator.However,the resource management,scheduling,and others of existing orchestrators are designed for cloud data centers.The main problem of deploying applications in cloud-edge is that the ISA of the nodes is usually heterogeneous,which will directly lead to execution error.Secondly,there are different types of nodes in cloudedge and they have different single thread computing capabilities.Because there is load correlation between instances of applications,the heterogeneity of node computing capabilities will lead to the decline of application performance,unbalanced load and low resource utilization.Finally,there are interactions between microservices,and the bandwidth,delay,and overhead between containers are related to their relative position in the cluster.Unreasonable placement of microservice instances will lead to additional delays and low QoS.Aiming at above problems,firstly,facing the ISA heterogeneous,this paper proposes a multi-architecture container deployment scheme,designs and implements KubeHICE,and the experimental results show that KubeHICE can automatically finding the ISA adapted nodes during scheduling to avoid application deployment errors.Secondly,a microservice application model is constructed.Aiming at the problem of single-thread capability difference,a new CPU resource allocation model is proposed according to the characteristics of microservice.Then,based on this model,a performance-aware containerized application scheduling mechanism KubeHICE+ is designed and implemented.The experimental results show that The KubeHICE+ can significantly improve the utilization of resources in heterogeneous clusters and guarantee the performance of applications.Thirdly,based on the above work,according to the container network topology and microservice interaction characteristics,a QoS aware container microservice scheduling method is designed,and prototype system Kube MHICE based on this method is implemented.Experiments show that Kube MHICE can significantly reduce the service delay and improve QoS. |