没有合适的资源?快使用搜索试试~ 我知道了~
www.cn-ki.net_基于Docker的分布式Web平台的研究与实现1
需积分: 0 0 下载量 104 浏览量
2022-08-04
00:37:53
上传
评论
收藏 1.42MB PDF 举报
温馨提示
试读
62页
摘要上海师范大学硕士学位论文查询接口,能够适应日志检索的多维度查询要求;另一方面降低了 Docker 容器资源的运维复杂性,节约了运维人力成本。本文对分布式 W
资源详情
资源评论
资源推荐
学校代码:10270 分类号: 学号:152300241
硕士专业学位论文
基于 Docker 的分布式 Web 平台的研
究与实现
学 院: 信息与机电工程学院
专业学位类别: 工程硕士
专 业 领 域: 计算机技术
研 究 生 姓 名: 李志盼
指 导 教 师: 陆黎明
完 成 日 期: 2018-5-6
上海师范大学硕士学位论文 摘要
I
摘要
Docker 相较于传统的虚拟机,减少了 Guest OS 层的资源消耗,旨在提供更
轻量级的基于进程的软件服务,它也为开发人员提供了快速的开发、测试、实施
的平台环境。对于分布式 Web 平台的发布,Docker 也提供了集群化的管理发布
方案。
目前,在持续集成发布、容器内资源性能日志全面监控调度、容器资源的弹
性伸缩和应用的灰度发布方面,Docker 还有很大提升空间。持续集成方面,虽
然借助持续集成工具 Jenkins 可以实现,但是相对于集成软件的操作,这对用户
提出了较高的技术操作要求。另外,针对于集群内应用性能监控和日志,一直是
容器运维厂商的难题,这样使得建立全方位监控和日志的方案变得尤为重要。将
容器的弹性伸缩和基于应用的版本升级完美的应用于平台生产环境,实现容器应
用生命周期的管理,一直是制约容器推广和应用的难点。如何有效解决这些问题,
本文设计和实现的基于 Docker 的分布式 Web 平台将从持续集成、性能监控、灰
度发布和日志检索方面进行探索。本文的工作和创新点如下:
首先,本项目设计的分布式 Web 平台中的一键式持续集成有效的解决了分
布式 Web 应用的开发、测试、实施的环节环境不一致的问题,弱化了平台的差
异性,使开发、测试更专注于业务的实现,简化应用发布周期。一键式持续集成
实现了 SVN 代码管理工具与 Jenkins 持续集成工具的有机集合,节约了大量维护
成本,同时也降低了持续集成的操作难度。
其次,本文针对使用 Docker 平台后,容器应用的资源性能数据采集、汇总
和分析问题,提供了性能监控方案。并利用 Kubernetes 的特性,将容器资源实时
的使用率加入到应用弹性伸缩的策略中,实现基于容器的资源监控和动态的自适
应调整资源占用,做到了应用的弹性伸缩自适应。该方案能够实时地对应用节点
进行弹性的控制,解决了 Docker 容器无法根据性能访问自适应的问题,使应用
可以灵活的提供服务,同时在调度触发上引入调度日志的审计,确保其调度的有
效性。
然后,对软件项目的版本变更升级探索了灰度发布的机制。通过项目实践中
引入灰度发布,减少业务的中断,提高客户的产品满意度。同时,也为开发人员
和运维人员节省了大量升级等待时间,降低了版本升级过程中出错率。
最后,对容器内大量性能信息和日志,建立了一体化的日志采集和分析平台,
实现了容器内节点、应用和调度界面化的资源管理。该平台一方面提供了丰富的
摘要 上海师范大学硕士学位论文
II
查询接口,能够适应日志检索的多维度查询要求;另一方面降低了 Docker 容器
资源的运维复杂性,节约了运维人力成本。
本文对分布式 Web 平台中的持续集成、性能监控、灰度发布和日志检索功
能进行了逐一测试,验证了其有效性。该平台的设计和实现,为 Docker 虚拟化
应用以及软件项目的持续集成、性能监控、灰度发布和日志检索提供了完美的解
决方案,具有很强的现实意义。
关键词:持续集成;弹性伸缩;灰度发布;日志检索;Docker;Jenkins;Kubernetes
Shanghai Normal University Master of Engineering Abstract
III
Abstract
Compared to traditional virtual machines, Docker reduces the resource
consumption of the Guest OS layer and aims to provide a more lightweight
process-based software service. It also provides developers with a rapid development,
testing and implementation platform environment. For the distribution of distributed
Web platforms, Docker also provides a clustered management publishing solution.
Currently, Docker still has a lot of room for improvement in terms of continuous
integration release, comprehensive monitoring and scheduling of resource
performance logs in containers, elastic scaling of container resources, and grayscale
publishing of applications. In terms of continuous integration, although it can be
achieved with the continuous integration tool Jenkins, it has a higher technical
operation requirement for the user than the operation of the integrated software. In
addition, application performance monitoring and logging for intra-cluster
applications has always been a challenge for container operation and maintenance
vendors. This makes it all the more important to establish comprehensive monitoring
and logging solutions. The application of container elasticity scaling and
application-based version upgrades to the platform production environment to achieve
the container application life cycle management has always been a difficult point to
restrict the promotion and application of the container. How to effectively solve these
problems, the Docker-based distributed Web platform designed and implemented in
this paper will explore continuous integration, performance monitoring, grayscale
publishing, and log retrieval. The work and innovation of this article are as follows:
First, the one-click continuous integration in the distributed Web platform
designed by this project effectively solves the inconsistencies in the development,
testing, and implementation of the distributed Web application environment,
weakening the differences in the platform, and making development and testing more
effective. Focus on the realization of the business and simplify the application release
Abstract Shanghai Normal University Master of Engineering
IV
cycle. One-button continuous integration enables an integrated collection of SVN
code management tools and Jenkins continuous integration tools, which saves a lot of
maintenance costs and also reduces the difficulty of continuous integration operations.
Second, this article provides a performance monitoring solution for collecting,
summarizing, and analyzing resource performance data for container applications
after using the Docker platform. Utilizing the features of Kubernetes, the real-time
usage rate of container resources is added to the elastic scaling policy, which
implements container-based resource monitoring and dynamic self-adaptive resource
allocation. This ensures that the application's elastic scalability adapts. The solution
can flexibly control the application nodes in real time, solve the problem that the
Docker container cannot access self-adaptation based on performance, enable the
application to provide services flexibly, and at the same time introduce the audit of
scheduling logs on the scheduling trigger to ensure the effective scheduling.
Then, we explore the mechanism of grayscale release for upgrading version of
software project. Introduce grayscale publishing through project practice to reduce
business interruptions and increase customer satisfaction. At the same time, it also
saves a lot of upgrade wait time for developers and operation and maintenance
personnel, and reduces the error rate during version upgrade.
Finally, an integrated log collection and analysis platform was established for a
large number of performance information and logs in the container, and resource
management of the nodes, applications, and the interface of the container was
implemented. On the one hand, the platform provides a rich query interface, which
can adapt to the multi-dimensional query requirements of log retrieval; on the other
hand, it reduces the complexity of the operation and maintenance of Docker container
resources and saves the operation and maintenance labor costs.
This article tests the continuous integration, performance monitoring, gray-scale
publishing, and log retrieval functions in a distributed Web platform and verifies its
effectiveness. The design and implementation of the platform provide a perfect
solution for the continuous integration, performance monitoring, gray-scale
剩余61页未读,继续阅读
萱呀
- 粉丝: 26
- 资源: 354
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- [大模型部署]在C# Winform中使用文心一言ERNIE-3.5 4K 聊天模型
- python毕业设计-基于Django+OpenCV的二维码生成与识别系统设计与实现.zip
- python毕业设计-基于Django+OpenCV的二维码生成与识别系统设计与实现+使用说明.zip
- 基于STM32单片机空气监测系统设计源码+详细文档+配套全部资料(毕业设计).zip
- rdf0412-kcu116-pcie-c-2019-1.zip(XILINX KCU116 源码)
- 基于C#语言的winform界面火车票订票系统(源码+实验报告)
- 【华为OD部分真题及讲解】华为OD部分真题及讲解
- 基于Python+Django的京东商品比价系统源码+全部资料(毕业设计).zip
- G460 G560 Z460 Z560的最新BIOS 2.18版(无白名单)
- MetaJUI v0.4
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0