Font Size: a A A

Design And Implementation Of A Docker Performance Monitoring System

Posted on:2019-02-06Degree:MasterType:Thesis
Country:ChinaCandidate:P C WangFull Text:PDF
GTID:2428330590450637Subject:Software engineering
Abstract/Summary:PDF Full Text Request
The development of Docker provides an effective solution for software developers and IT service providers,which eliminate the difficulty of application deployment and migration due to complex software dependencies and platform differences.As a result,Docker has been rapidly developed and widely used since its appearance.In the use of Docker,monitoring performance data of containers is an indispensable requirement,which plays an important role in understanding the status and timely discovering problems of the container.Containers differ from host or traditional virtualization technologies,so existing tools cannot be directly applied to container performance monitoring,and a container-specific monitoring system needs to be developed.Based on the research of existing host,virtual machine and container performance monitoring schemes,a container performance monitoring system that can be applied in distributed container environment is designed and implemented.The design weighs the real-time and flexibility,and uses the push-pull method to obtain the container performance data in each node.Performance data is transmitted over gRPC to reduce the network overhead on the cluster network.Using the obtained performance data,the system can judge whether exception occurs and push information to user.The system provides a web interface and a RESTful API for user.The system consists of independent services,including system manager,exception notifiers,data collectors and monitoring agents.The services are coordinated through etcd,and consistent hash algorithm is used in the system manager to dynamically allocate the monitoring agent for the data collector as the data pull target,so that the system has a certain degree of horizontal scalability.After testing,the basic information and performance data of each node can be viewed through the system.The system can re-adjust the task allocation when the number of data collector and monitoring agents change,the system can correctly determine the exception,and the overhead of the monitoring agent is low.Tests show that the system has reached the design goal and can provide some reference for the development of Docker container performance monitoring system in distributed environment.
Keywords/Search Tags:Virtualization, Docker, Container, Performance monitoring
PDF Full Text Request
Related items