《基于Docker容器技术智慧云平台设计.docx》由会员分享,可在线阅读,更多相关《基于Docker容器技术智慧云平台设计.docx(16页珍藏版)》请在优知文库上搜索。
1、企业研究开发项目计划书(自主开发类)项目名称基于DOCker容器技术智慧云平台研究设计企业名称x企业法人(签名)项目负责人电话项目起止时间年月至年月填报日期年月日项目计划书编写提纲一、立项依据1 .国内外现状、水平和发展趋势;云计算通过云端服务器为用户提供数据存储、软件应用等服务。云计算的具体应用模式主要有软件即服务(SaaS).平台即服务(PaaS)和基础设施即服务(IaaS)0随着互联网技术的发展和软件技术的成熟,SaaS(SoftwareasaService,软件即服务)是21世纪兴起的一种全新的软件服务模式。SaaS的模式己成为软件应用的发展趋势和主流,其应用专为互联网交付和使用而设计
2、,便于用户通过互联网托管、部署及接入,被越来越多的中小型企业所认可。SaaS模式下,人们省去了传统正版软件的购买费用,软件以托管的方式由SaaS服务提供商运营和维护,免除了企业用户购买IT基础设施的支出,客户通过Intemet租赁并远程使用软件,通常企业根据自己的需要,按订购的功能模块、软件许可证的数量和时间长短向厂商支付租赁费用。在国外,SaaS模式已经在全球得到了广泛认可,并得到大范围的普及和全面发展。提供SaaS服务产品的供应商主要有SAP、OracleMicrosoftSalesforcecom和NetSuite等公司,获得较大的成功。S公司最早提出SaaS模式,是目前企业应用软件领域
3、中最为知名的供应商,己成为SaaS领域无可替代的标杆企业。S公司创建于1999年,其产品S和S是基于功能强大的Sforce客户/服务整合平台,提供随需应用的客户关系管理(OndemandCRM),允许客户与独立软件供应商定制并整合其产品,同时建立他们各自所需的应用软件。微软相继推出WindowsLive战略和以“软件+服务”为模式的DynamiCCRMOnline产品发布计划,加强了对互联网服务市场的抢夺和用户的占领。OraCle公司则相继收购了一些知名公司,通过资本运作来迅速争取SaaS领域的地盘。提供了一套整合集成了供应链管理(SCM),企业资源管理(ERP)、客户资源管理(CRM)和企业
4、商业智能(Bl)和电子商务应用、WebCenter等产品的电子商务整体您决方案。SAP公司的将为企业提供SAPonpremise、SAPondemand和SAPOndevice三套完整的解决方案。Google推出名为Google企业应用平台(GOogIeAppsPremiumEdition)的套装软件。根据Garmer的数据显示,xxxl年全球“软件即服务(SaaS)收入将达到121亿美元,将在xxx3年底达到140亿美元,xxx5年的收入预计为213亿美元(复合年增长率为18%),并且达到软件企业市场总数的14o国内真正的SaaS起步于2007年,目前主流的SaaS服务提供商有八百客、天天进
5、账网、中企开源、CSIP,阿里软件、友商网、伟库网、金算盘、CDP、奥斯在线、百会创造者、X-TOOlS等。金算盘推出了“ERP+电子商务”的模式,整合了电子商务、在线管理软件系统工具的全程供应链管理系统。金蝶和用友将成为包括政府公共事业和中小企业的首选国内应用软件提供商,包括制造业、金融产业和高科技产业。SPringboard的调杳报告xxxO年中国应用软件市场分析及预测显示,中国应用软件市场规模将由2009年的20.50亿美元上升至xxx4年的50亿美元,预计到xxx4年中国SaaS市场规模将达6亿美元,SaaS市场将保持30%以上的年复合增长率。国内的SaaS将迅速走向成熟化,并进一步占
6、领企业软件市场。2 .项目研发的目的、意义;由自主研发基于DoCker的PaaS云服务平台,包括企业级容器云平台、大数据支撑平台、PaaS平台的中间件服务、企业咨询(微服务/DevOps)、镜像加速(高速镜像仓库和私有仓库)、应用市场(海量应用一键部署)等,使用户可以一键式的快速生成移动互联网后端应用和云计算基础应用。StaCkoS结合全球最新虚拟化云计算技术DOCkeI为企业研发、运维及新业务上线部署提供了一整套解决方案和管理平台。不仅帮助企业大幅削减成本和提升效率,更能帮助传统企业加速所需业务互联网化进程,也帮助互联网企业加快产品迭代,提高产品市场占有率,高效适应当今IT大环境,接轨互联网
7、+时代。我们能根据客户需求提供混合云管理、容器化云服务、私有容器云全套解决方案、微服务和DeVoPS支撑平台、咨询和培训等前瞻性产品及服务。无论金融、制造业、教育、军工、移动互联网、电子商务行业,针对不同行业的特性,提供丰富而专业的行业解决方案。产品可在金融、互联网、电信、大型制造业、IDC等行业领域进行推广实施。2.4意义基于DOCker容器技术的智慧企业云平台是自主轻量级PaaS平台,能够帮助企业一键式快速生成移动互联网后端应用和云计算基础应用。节省时间和精力企业把所有的心思都放在应用程序的编写和调优上,而不用去担心繁杂的平台基础架构和设施,更有利于发掘程序员的创造力,开发出更高质量,高性
8、能的应用。加速应用程序上线在实际的操作中,只需要简单的几条命令或者UI界面的几次点击操作就能轻松的完成各种应用程序的部署,而完全不用去担心硬件采购,软件安装等等这些先期准备工作。满足应用程序对各种新功能和新服务的需求Docker应用市场提供上万种优质服务,程序员只需要简单的操作就能将服务加入到应用程序中。企业云平台能够对混合云进行管理,通过RPC框架,可以很好的管理各个接入平台的主机,无论是baremetal主机,公有云主机,私有云OPenStaCk主机,都可以接入到StackOS-Kubernetes平台。StackOS-Kubernetes将企业自有主机和公有云主机统一管理,并将企业应用的
9、容器按需分配在不同主机上,轻松实现应用在混合云上的实现。企业云平台支持一键部署,采取一条命令即可在纯内网或者外网环境下快速安装,整个安装过程在十几分钟内即可完成。无需配置存储、网络、数据库、认证、日志、调度等模块。3.本项目达到的技术水平及市场前景。采用docker调度DoCker具有的五个最重要优势,即持续集成、版本控制、可移植性、隔离性和安全性。持续部署与测试Docker在开发与运维环境中可以保证应用的高度统一,因为它能保持跨环境的一致性。在开发与发布的生命周期中,不同的环境具有细微的不同,这些差异可能是由于不同安装包的版本和依赖关系引起的。然而,Docker可以通过确保从开发到产品发布整
10、个过程环境的一致性来解决这个问题,Docker容器通过相关配置,保持容器内部所有的配置和依赖关系始终不变。最终,你可以在开发到产品发布的整个过程中使用相同的容器来确保没有任何差异或者人工干预。使用DoCker,你还可以确保开发者不需要配置完全相同的产品环境,他们可以在他们自己的系统上建立虚拟机来运行Docker容器。Docker的魅力在于它同样可以让你在亚马逊EC2实例上运行相同的容器。如果你需要在一个产品发布周期中完成一次升级,你可以很容易地将需要变更的东西放到DOCker容器中,测试它们,并且使你已经存在的容器执行相同的变更。这种灵活性就是使用DoCkei的一个主要好处。和标准部署与集成过
11、程一样,DoCker可以让你构建、测试和发布镜像,这个镜像可以跨多个服务器进行部署。哪怕安装一个新的安全补丁,整个过程也是一样的。你可以安装补丁,然后测试它,并且将这个补丁发布到产品中。多云平台Docker最大的好处之一就是可移植性。在过去的几年里,所有主流的云计算提供商,包括亚马逊AWS和谷歌的GCP,都将DOCker融入到他们的平台并增加了各自的支持。DoCker容器能运行在亚马逊的EC2实例、谷歌的GCP实例、RaCkSPaCe服务器或者VirtUaIBoX这些提供主机操作系统的平台上。举例来说,如果运行在亚马逊EC2实例上的DOCker容器能够很容易地移植到其他几个平台上,比如说Vir
12、tUaIBox,并且达到类似的一致性和功能性,那这将允许你从基础设施层中抽象出来。除了AWS和GCP,Docker在其他不同的IaaS提供商也运行的非常好,例如微软的AZUre、OPenStaCk和可以被具有不同配置的管理者所使用的Chef、PuppetAnSibIe等。环境标准化和版本控制通过上面的讨论,Docker容器可以在不同的开发与产品发布生命周期中确保一致性,进而标准化你的环境。除此之外,Docker容器还可以像git仓库一样,可以让你提交变更到Docker镜像中并通过不同的版本来管理它们。设想如果你因为完成了一个组件的升级而导致你整个环境都损坏了,Docker可以让你轻松地回滚到这
13、个镜像的前一个版本。这整个过程可以在几分钟内完成,如果和虚拟机的备份或者镜像创建流程对比,那DOCker算相当快的,它可以让你快速地进行复制和实现冗余。此外,启动DoCker就和运行一个进程一样快。隔离性DOCker可以确保你的应用程序与资源是分隔开的。运行DoCker容器进行资源隔离的效果和虚拟机(VM)管理程序一样的好,当你在虚拟机中运行了很多应用程序,这些应用程序包括团队协作软件(例如Confluence)问题追踪软件(例如JlRA)、集中身份管理系统(例如Crowd)等等。由于这些软件运行在不同的端口上,所以你必须使用APaChe或者NginX来做反向代理。到目前为止,一切都很正常,但
14、是随着你的环境向前推进,你需要在你现有的环境中配置一个内容管理系统(例如Alfresco)o这时候有个问题发生了,这个软件需要一个不同版本的APaeheTOmCal,为了满足这个需求,你只能将你现有的软件迁移到另一个版本的TomCat上,或者找到适合你现有TomCaI的内容管理系统(Alfresco)版本。对于上述场景,使用DoCker就不用做这些事情了。DOCkei能够确保每个容器都拥有自己的资源,并且和其他容器是隔离的。你可以用不同的容器来运行使用不同堆栈的应用程序。除此之外,如果你想在服务器上直接删除一些应用程序是比较困难的,因为这样可能引发依赖关系冲突。而DoCker可以帮你确保应用程
15、序被完全清除,因为不同的应用程序运行在不同的容器上,如果你不在需要一款应用程序,那你可以简单地通过删除容器来删除这个应用程序,并且在你的宿主机操作系统上不会留下任何的临时文件或者配置文件。除了上述好处,DOCker还能确保每个应用程序只使用分配给它的资源(包括CPU、内存和磁盘空间)。一个特殊的软件将不会使用你全部的可用资源,要不然这将导致性能降低,甚至让其他应用程序完全停止工作。安全性从安全角度来看,Docker确保运行在容器中的应用程序和其他容器中的应用程序是完全分隔与隔离的,在通信流量和管理上赋予你完全的控制权。Docker容器不能窥视运行在其他容器中的进程。从体系结构角度来看,每个容器
16、只使用着自己的资源(从进程到网络堆栈)。作为紧固安全的一种手段,DoCker将宿主机操作系统上的敏感挂载点(例如/proc和sys)作为只读挂载点,并且使用一种写时复制系统来确保容器不能读取其他容器的数据。Docker也限制了宿主机操作系统上的一些系统调用,并且和SELinux与AppArmor一起运行的很好。此外,在DockerHub上可以使用的Docker镜像都通过数字签名来确保其可靠性。由于Docker容器是隔离的,并且资源是受限制的,所以即使你其中一个应用程序被黑,也不会影响运行在其它Docker容器上的应用程序。总结本系统采用DOCker做为底层架构,既可以保证开发的便利性,又可以保证应用的安全性;因为Docker