论文部分内容阅读
以前,开发人员开发应用需要自己实现复杂的框架保证应用的高可用和故障替换。测试人员测试应用需要自己重新部署测试环境,需要繁琐的安装依赖库和配置参数。运维人员部署应用更是头疼,经常碰到异构的操作系统,对不同系统进行不同的部署方式。应用的容器化,可以更加便捷的创建分布式应用,加快应用的开发与上线,减低运维成本。基于容器技术可以很容易地把应用部署在异构的平台上,很轻松地面对应用的迁移。Docker作为容器技术事实上的标准,可以减少运维的成本,加快项目的开发。对传统的应用系统以容器化的方式部署,利用容器技术把应用打包成Docker镜像,可以屏蔽环境的不一致,让开发、测试、部署同步进行。Kubernetes谷歌开源的容器管理系统,可以高效的管理容器集群,并提供一系列的自动部署、服务监控、高可用、监控、故障替换、负载均衡等一系列技术,让用户部署的容器集群更加高效的利用集群资源。使用Kubernetes提供的解决方案,可以节省开发成本,同时让开发、运维人员将精力更加集中于业务本身,运维难度和成本大幅度降低。OpenStack提供强大的基础设施管理功能,共享计算资源、存储资源和网络资源,可以灵活的分配资源。OpenStack每个组件都是高可用部署,可以为上层提供稳定可靠的资源服务。本课题通过 OpenStack、Docker 和 Kubernetes 的研究,基于 Openstack 创建 Kubernetes集群,构建容器云平台。论文从用户的角度分析需求和设计架构,设计和实现容器云平台,方便用户部署和管理Docker应用。利用OpenStack为Docker提供弹性资源分配,为Kubernetes集群提供用户隔离和同用户不同集群的网络隔离。在Kubernetes集群上部署Docker应用,利用Kubernetes方便容器应用的管理。设计实现容器资源配置模块的调用接口,融合OpenStack和Kubernetes,通过操作Kubernetes集群配置容器资源,为容器的部署提供环境和资源。论文对构建的容器云平台进行了测试,符合设计目标。