下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

分享给大家私有 PaaS 的四个关键点

作者:课课家教育     来源: http://www.kokojia.com点击数:916发布时间: 2017-04-29 14:00:06

标签: docker应用开发私有PaaS

  中国的云计算发展还处于初级阶段,我们应该看到云计算伟大的发展潜力,要推动并加强云计算的研发和创新,培养相关的科研创新人才和团队,帮助国内企业攻克在IT产业和伟德服务领域的关键手艺,加速伟德化建设进程,进而提升工业化水平。因此大家要认真阅读本篇文章!

     随着Docker的兴起,基于Docker构建适合企业内部的应用开发平台(PaaS),成为一个热门话题。公有PaaS由于要做到通用和普适性,所以往往很难真正满足企业业务开发需求。

分享给大家私有 PaaS 的四个关键点_docker_应用开发_私有PaaS_课课家教育

  PaaS最终应该是解决方案,适应客户需求的解决方案,而且是需要随着业务需求的变化可以不断演变。而不是客户削足适履去适应PaaS这个工具

  私有PaaS相比公有PaaS最大的区别在于,其规范是自己根据需求来定制和实施。那么PaaS究竟有哪些规范,又如何结合企业自身需求和业务特点来制定规范?

  首先,明确引入私有PaaS解决什么问题?

首先,明确引入私有PaaS解决什么问题?

  开源中间件软件的提供,比如Tomcat、MySQL、php

  应用部署自动化,快速升级或者回滚

  运维平台化和自动化,提升运维效率

  资源池化,共享运行,提升服务器利用率

  面向应用的管理,包括应用创建、监控、报表等

  提升DevOps水平。PaaS的特点是更加标准化和自动化

  对于拥有应用开发部门的企业,需要能够将开发、测试和生产三个环境打通,更快的开发、更快的测试、更简单的部署和管理。

  对于应用外包给第三方的甲方企业而言,其IT部门希望生产环境的应用更好管理,并希望在开发、测试阶段,就考虑到应用如何在生产环境的运行,避免企业的信息化建设杂乱无章。相比于拥有应用软件开发的企业,维护难度更大。因为这类企业面对的软件开发商,开发能力、开发语言和工具差异较大。

  当然每个企业对PaaS的需求肯定都会有不同,上面只是一个笼统的概括。具体到案例,需要结合具体需求分析。

  PaaS包含哪些规范?

  开发、运维在过去都形成了很多方法论。比如ITLE流程规范、SOA面向服务的软件架构,以及最近几年流行的DevOps实践、CI持续集成、CD持续交付、甚至最近流行的微服务架构。

  这些令人眼花缭乱的名词概念背后其实都是对于软件如何开发、如何交付以及如何运行维护的实践总结。

  那么PaaS的规范应该包含哪些内容,又具体细到什么程度,这个度如何把握?

  比如开发规范可以包含代码编写规范、开发协作规范,运维规范如果按照ITLE,包括:基于配置管理和工单管理的事件管理、问题管理、变更管理、发布管理等等。

  我们认为,PaaS规范的粒度需要把握好。这个粒度,和PaaS的使用者/管理者的需求有关。

  对于私有PaaS平台使用者需要关心:

  支持的编程语言、web服务器或者应用服务器

  支持的数据库软件类型

  支持的数据库模式,cluster还是主从

  数据库主从分离是否透明

  支持的文件存储类型,如何操作

  其它类型服务,如何访问?是否有SDK或API文档

  如何部署应用

  代码目录路径和布局的规范

  名字服务,代码如何访问这些服务(connect),是通过环境变量,还是通过域名,或者通过封装的类或者库,还是通过kv名字服务的查询获取?

  对于PaaS平台的管理方需要关心:

  统计报表

  监控报警

  面向应用的监控

  如何给开发人员提供一致的开发环境

  如何给测试人员提供一致的测试环境

  容量管理,如何增减节点

  数据保障,备份管理和灾备管理

  消息发布管理,如平台对某个软件进行升级的通知

  工单管理,处理使用方提出的疑问

  上面描述的这些需求,其实就是PaaS平台的开发规范/运维规范,说白了就是如何用和如何管。

  如何制定规范:

  我们说需要结合企业自身特点来定制规范,那么具体到细节层面,我们应该考虑哪些因素呢?

  组织结构:

  是否拥有软件开发部门。如果软件都是外包开发,那么如何让外包开发快速了解并立即可以开发?如果是自己内部部门开发,那么如何做好培训让他们理解更深刻才能更好地在PaaS上开发。

  同时也需要考虑开发和运维是在一个部门、还是一个公司,他们的绩效管理模式,是否会导致部门推诿扯皮。这些都会影响PaaS规范具体包含哪些,开发和运维的边界线在哪里?

  人员结构:

  人员的技能水平,对PaaS的设计也有很多影响.一般而言,技能越好的团队,希望的自由度越高。但又需要考虑好开发和运维团队的技能是否能够相匹配。如果开发方能力过强,运维方在管理生产环境时可能就吃力。如果运维方能力强,开发方就能更省事。

  企业已经存在的IT资产:

  这些资产包括硬件和软件两个方面。引入的私有PaaS平台,过去的资产哪些可以继续使用避免过去的投资浪费,这是CIO关心的问题。

  硬件方面的资产如交换机、存储往往标准化程度很高,比较容易复用。软件方面,比如企业过去购买过一套监控系统,如果想将PaaS平台的监控对接进去,难度可能就比较大,技术上也很可能失败。这些都需要根据实际情况评估。

  可定制和修改的PaaS:

  PaaS的规范绝不是一成不变,随着组织、技术栈的变化,PaaS的规范也应该能够不断修改适应。

  基于docker的PaaS能够胜任这一点。docker本身的特点是轻量灵活。基于docker构建PaaS,不仅可以提供“可定制实施”的PaaS,特别是可以简化PaaS平台的运维管理。

  分享:PaaS定义:

所谓PaaS实际上是指将软件研发的平台(计世资讯定义为业务基础平台)作为一种服务,以SaaS的模式提交给用户。

  所谓PaaS实际上是指将软件研发的平台(计世资讯定义为业务基础平台)作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。在2007年国内外SaaS厂商先后推出自己的PAAS平台。

  PaaS之所以能够推进SaaS的发展,主要在于它能够提供企业进行定制化研发的中间件平台,同时涵盖数据库和应用服务器等。PaaS可以提高在Web平台上利用的资源数量。例如,可通过远程Web服务使用数据即服务(Data-as-a-Service:数据即服务),还可以使用可视化的API,甚至像800app的PaaS平台还允许你混合并匹配适合你应用的其他平台。用户或者厂商基于PaaS平台可以快速开发自己所需要的应用和产品。同时,PaaS平台开发的应用能更好地搭建基于SOA架构的企业应用。

  此外,PaaS对于SaaS运营商来说,可以帮助他进行产品多元化和产品定制化。例如Salesforce的PaaS平台让更多的ISV成为其平台的客户,从而开发出基于他们平台的多种SaaS应用,使其成为多元化软件服务供货商(MultiApplicationVendor),而不再只是一家CRM随选服务提供商。而国内的SaaS厂商800app通过PaaS平台,改变了仅是CRM供应商的市场定位,实现了BTO(Builttoorder:按订单生产),和在线交付流程。使用800app的PAAS开发平台,用户不再需要任何编程即可开发包括CRM、OA、HR、SCM、进销存管理等任何企业管理软件,而且不需要使用其他软件开发工具并立即在线运行。

  小结:虽然云计算的发展仍面临着许多的难题,但是云计算这种方式的确有其不可取代的优势,它被许多专家认为,会改变互联网的手艺基础,甚至会影响整个产业的格局,云计算手艺和基于云计算的服务的存在,会成为日后推动天下经济发展的重大力量。如果大家还有什么问题,欢迎登陆课课家平台咨询!

赞(27)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程