基于Docker的PaaS平台的研究与应用
发布时间:2018-12-12 04:53
【摘要】:云计算的概念涵盖了资源的抽象整合,动态流通和高效利用等各个方面,旨在将资源从物理环境抽象出来,进行灵活的使用。在云平台上,通过统一的接口可以进行资源的管理、监控、调度工作,整合了松散的功能,提供了大量的服务。传统的云平台使用虚拟机作为基本调度单位,而本文的PaaS平台使用Docker容器来代替虚拟机。Docker是基于LXC(Linux Container)发展而来的容器技术,和虚拟机相比,从资源规模上来看,容器的粒度更小。从灵活性上来看,容器的部署时间更短,可移植性更强。因此,使用Docker来改造云平台更加的贴合未来的需求。本文使用Docker容器作为底层的虚拟化技术设计了一个PaaS平台。分析了PaaS相关技术,进行了集群整体设计,提出了具体设计方案,包括Mesos资源调度,Docker网络,NFS存储,容器资源限制等。分析了平台的功能需求,设计实现了各个功能模块。本平台使用容器作为应用节点,使用Spark处理计算请求。实现了一个应用发布平台,其中使用Docker容器作为统一开发环境,SVN管理代码,Jenkins完成集成和构建,docker-compose和Marathon完成应用的编排和部署。该平台还具备了基于负载均衡和弹性伸缩的高可用性,负载均衡通过Nginx代理,弹性伸缩策略是自主设计的。使用CAdvisor进行资源监控,提供统一视图,同时对平台的日志系统,用户管理系统等进行了设计。对弹性算法进行改进,优化了系统。最后,部署系统,测试功能。测试的内容包括弹性测试和应用发布测试,分析了测试结果,验证了平台的可用性。本平台利用Docker容器技术的优点,在传统PaaS平台的基础上进行了一定的底层改造和功能补充,为云平台的设计提供了新的思路。
[Abstract]:The concept of cloud computing covers the abstract integration of resources, dynamic circulation and efficient utilization, aiming at abstracting resources from the physical environment and using them flexibly. On the cloud platform, resources management, monitoring and scheduling can be carried out through a unified interface, which integrates loose functions and provides a large number of services. The traditional cloud platform uses virtual machine as the basic scheduling unit, while the PaaS platform in this paper uses Docker container instead of virtual machine. Docker is a container technology developed based on LXC (Linux Container). The container has a smaller granularity. In terms of flexibility, containers have shorter deployment times and greater portability. Therefore, the use of Docker to transform the cloud platform more in line with future needs. This paper uses Docker container as the underlying virtualization technology to design a PaaS platform. This paper analyzes the related technologies of PaaS, designs the whole cluster, and puts forward the specific design scheme, including Mesos resource scheduling, Docker network, NFS storage, container resource limitation and so on. The functional requirements of the platform are analyzed, and each functional module is designed and implemented. This platform uses container as application node and Spark to process computing request. An application publishing platform is implemented, in which Docker container is used as a unified development environment, SVN manages code, Jenkins is integrated and built, and docker-compose and Marathon are used to orchestrate and deploy applications. The platform also has high availability based on load balancing and elastic scaling. Load balancing is designed by Nginx agent. CAdvisor is used to monitor resources and provide unified view. At the same time, the logging system and user management system of the platform are designed. The elastic algorithm is improved and the system is optimized. Finally, deploy the system and test the function. The content of the test includes elastic test and application release test. The test results are analyzed and the usability of the platform is verified. This platform makes use of the advantages of Docker container technology, and on the basis of the traditional PaaS platform, it has carried on the certain bottom layer transformation and the function supplement, has provided the new thought for the cloud platform design.
【学位授予单位】:华北电力大学(北京)
【学位级别】:硕士
【学位授予年份】:2017
【分类号】:TP393.09
本文编号:2373949
[Abstract]:The concept of cloud computing covers the abstract integration of resources, dynamic circulation and efficient utilization, aiming at abstracting resources from the physical environment and using them flexibly. On the cloud platform, resources management, monitoring and scheduling can be carried out through a unified interface, which integrates loose functions and provides a large number of services. The traditional cloud platform uses virtual machine as the basic scheduling unit, while the PaaS platform in this paper uses Docker container instead of virtual machine. Docker is a container technology developed based on LXC (Linux Container). The container has a smaller granularity. In terms of flexibility, containers have shorter deployment times and greater portability. Therefore, the use of Docker to transform the cloud platform more in line with future needs. This paper uses Docker container as the underlying virtualization technology to design a PaaS platform. This paper analyzes the related technologies of PaaS, designs the whole cluster, and puts forward the specific design scheme, including Mesos resource scheduling, Docker network, NFS storage, container resource limitation and so on. The functional requirements of the platform are analyzed, and each functional module is designed and implemented. This platform uses container as application node and Spark to process computing request. An application publishing platform is implemented, in which Docker container is used as a unified development environment, SVN manages code, Jenkins is integrated and built, and docker-compose and Marathon are used to orchestrate and deploy applications. The platform also has high availability based on load balancing and elastic scaling. Load balancing is designed by Nginx agent. CAdvisor is used to monitor resources and provide unified view. At the same time, the logging system and user management system of the platform are designed. The elastic algorithm is improved and the system is optimized. Finally, deploy the system and test the function. The content of the test includes elastic test and application release test. The test results are analyzed and the usability of the platform is verified. This platform makes use of the advantages of Docker container technology, and on the basis of the traditional PaaS platform, it has carried on the certain bottom layer transformation and the function supplement, has provided the new thought for the cloud platform design.
【学位授予单位】:华北电力大学(北京)
【学位级别】:硕士
【学位授予年份】:2017
【分类号】:TP393.09
【参考文献】
相关期刊论文 前8条
1 李丽新;;基于Mesos和Docker构建大数据平台技术研究与应用[J];吉林建筑大学学报;2016年05期
2 飞扬;;Docker遇上Mesos 轻量级PaaS的最佳演绎[J];互联网周刊;2016年10期
3 柯尊旺;于炯;廖彬;;适应异构集群的Mesos多资源调度DRF增强算法[J];计算机应用;2016年05期
4 蔡云龙;;基于Docker的私有云系统的设计[J];电子产品世界;2016年04期
5 伍阳;;基于Docker的虚拟化技术研究[J];信息技术;2016年01期
6 刘思尧;李强;李斌;;基于Docker技术的容器隔离性研究[J];软件;2015年04期
7 陈清金;陈存香;张岩;;Docker技术实现分析[J];信息通信技术;2015年02期
8 邓维;刘方明;金海;李丹;;云计算数据中心的新能源应用:研究现状与趋势[J];计算机学报;2013年03期
,本文编号:2373949
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2373949.html