【先锋】聚焦私有云市场,看BoCloud博云如何将Docker落地实践

摘要:目前中大型金融企业在很长时间内都会以私有云部署为主、公有云部署为辅,在未来几年时间是私有云投入的密集期。BoCloud博云一直在推动Docker相关技术在关键性行业的落地,比如金融、电力等关系到国计民生的行业。行业属性决定了BoCloud博云的Docker技术紧紧围绕稳定、安全与行业业务支撑三个方面去进行技术开发。

BoCloud博云创始人、CEO花磊在创业之前担任微软亚太研发集团担任资深产品经理,参与过微软Exchange、Lync、Office365等微软企业级产品、云产品的研发工作。2009年的时候在微软总部雷蒙德参与微软下一代云协作平台Office 365中的产品规划,并担任Office 365平台监管和数据挖掘模块的高级项目经理,设计并完成Office 365平台的第一版的服务器BI功能。

2012年的时候,他和中科院软件所软件工程中心进行紧密合作成立联合工程中心,以私有云数据存储和数据协同中为切入点,在苏州工业园区合资成立苏州博纳讯动软件有限公司,也就是“BoCloud博云 ”,融合移动云计算研发团队在移动计算上的积累,基于“云端融合”的理念,专注为移动互联网、互联网行业提供海量存储、云计算服务平台等核心产品和解决方案。

和其他关注互联网行业的云计算厂商不同,BoCloud主要聚焦传统行业尤其是金融行业的私有云部署,专注用虚拟化、Docker、Ansible、Ceph等开源技术解决“金融业务移动互联网化”带来的新需求,使得传统金融行业具备“红包”、“秒杀”等BAT企业的强大技术团队才能构建的能力。本文来自对BoCloud创始人兼CEO花磊以及CTO李亚琼的专访整理。
图片描述

BoCloud创始人兼CEO花磊

图片描述
BoCloud CTO李亚琼

CSDN:将业务聚焦在传统行业的私有云部署,基于什么样的考虑?

创始人、CEO花磊:BoCloud博云专注于用云计算相关技术解决传统行业的实际场景化需求,目前中大型金融企业在很长时间内都会以私有云部署为主、公有云部署为辅,在未来几年时间是私有云投入的密集期。

同时云架构的使用会驱动行业应用的升级和变革,金融行业不仅仅是单纯的业务上云,伴随的还有业务数据的集中化和可视化、开发运维(Devops)的一体化、业务模块的组件化(组件PaaS),博云BoCloud从云基础架构切入,通过合作伙伴提供金融行业整体云化的解决方案。

BoCloud博云在A轮引入润和软件、TalkingData、聚合数据等战略投资者,目标就是打造从应用到数据的云化解决方案。

CSDN:定位于“全栈式”的云计算技术与解决方案供应商,对公司的技术、人才、管理等方面要求应该很苛刻,另一方面,产品线的拉长会不会在一定程度上弱化公司对产品的专注度?

创始人、CEO花磊:我本人在微软有长期技术管理经验,公司的合伙人中有多位来自华为、清华MBA、软件类上市公司的高管,公司非常注重制度建设、人才战略,不论是从管理层的经验来看还是从公司的制度建设方面来看,公司都具备管理多条复杂产品线的能力,我们在这方面是非常有信息和底气的。

另外公司近日已经和中科院软件所签订战略合作协议,进行金融和电力云计算关键技术的实质性合作,在虚拟化、容器化、自动化运维等领域进行联合研发,打造国内领先的行业云解决方案。这也进一步加强了公司在基础研究、产品研发、商业化开发的整体能力。

CSDN:贵公司的容器服务和目前市场上的Docker初创容器服务区别有哪些?

CTO 李亚琼:BoCloud博云作为一个围绕Docker技术进行产品、服务和业务创新的企业,一直努力推动Docker这种先进的技术在中国的落地,在这一点上我们和其他初创公司是一致的。但是,BoCloud博云从进入这个领域以来,就把自己定位为推动Docker相关技术在关键性行业的落地,比如金融、电力等关系到国计民生的行业。行业属性决定了BoCloud博云的Docker技术紧紧围绕稳定、安全与行业业务支撑三个方面去进行技术开发,也正是博云的技术实力打消了用户对新技术的顾虑,已经成功帮助某股份制银行、某省级电力公司等大客户实现了Docker技术的落地。专注关键行业业务需要进行Docker及相关技术的研发正是BoCloud博云能够从大量初创型Docker企业中脱颖而出的关键,也是我们公司长期坚持的方向。

BoCloud博云专注互联网+环境下关键行业私有云解决方案,而大多数容器初创企业更偏重于公有云模式。考虑到关键行业核心业务系统开发部署规范,运行时可靠性要求,维护阶段报警时效性需求。BoCloud博云容器产品BeyondContainer分别在开发部署流程支持,主备、冗余和补偿等可靠性保障机理,监测度量指标和告警规则方面进行了深度优化。

CSDN:在使用Docker过程中,你们对Docker做了哪些优化?

CTO 李亚琼:Docker是一项复杂的平台软件,涉及CPU调度、资源隔离、存储访问、网络控制等方方面面,BoCloud博云主要从以下几个方面对Docker平台进行改进:

1、修复开源Docker代码Bug。我们经过测试发现开源Docker平台存在大量的Bug,分布在daemon进程、存储访问、并发性等各个方面。针对这些bug的修复已经提交到了Docker社区,已经被社区接收的就有50多条,还有部分bug修复正在进行最后的测试验证阶段,后续会逐步提交社区。

2、可靠性增强。客户在部署Docker技术的时候有两个方面的担心,一是Docker平台本身的可靠性如何保障,二是Docker支撑的业务应用如何进行可用性管理。BoCloud博云针对这两个问题利用了双活、一致性哈希、服务监控等技术解决了Docker部署中的单点故障问题和业务连续性问题,极大提高了Docker的可靠性。

3、中间件支撑。作为一种PaaS平台技术,Docker具有非常好的发展前景,但也需要大量的平台组件才能够成为一个业务快速发布平台。比如企业最常用到的Weblogic中间件,实现它的快速部署需要解决Session共享、连接池配置、日志导出、配置更新等一系列问题。博云在中间件平台向Docker平台迁移做了大量工作,帮助传统企业实现业务快速向PaaS平台迁移。

4、可视化编排。编排部署是Docker平台的一大特色,BoCloud博云在开源Docker编排技术的基础上针对业务应用进行了可视化呈现。当然,BoCloud博云不仅仅是把原来的文本编辑图形化,而是围绕中间件组件和平台服务进行快速应用架构创建,实现了用户只需要拖拽图标+配置参数就可以实现业务的部署,十分方便。

CSDN:BeyondContainer平台在调度、网络、存储以及安全等方面使用到哪些关键技术?

CTO 李亚琼:BeyondContainer在调度上采用基于Swarm的调度框架,并加入了定制化算法来满足不同业务对资源的需求,支持的调度参数多达20项。同时,在业务弹性伸缩调度上,BeyondContainer平台支持自动以伸缩步长、性能参数、统计时间等,更加的灵活。在网络技术上,BeyondContainer平台利用OpenvSwitch和vxlan技术进行网络虚拟化技术支撑。

现在我们也在跟踪社区的calico项目,正在进行技术方案的评估看看其是否适合多安全域的网络虚拟化需求。BeyondContainer后台存储利用ceph技术进行搭建,也支持lvm等技术,我们会根据客户的实际情况和安全需求采用不同的解决方案。

至于安全方面,除了前面讲到的稳定性增强外,还在多租户资源隔离、调度等多方面进行全面的安全性增强。同时,我们也在积极的跟踪开源的hyper项目,内部已经开始进行hyper的稳定性、性能和兼容性测试。

CSDN:随着Docker官方安全和网络问题的逐渐解决,你认为docker进入生产环境还有哪些挑战?

CTO 李亚琼:我们认为Docker进入生产环境,目前主要有如下一些挑战:

1、对Docker的技术认知问题:
技术方面来说,目前Docker技术还是非常新,大部分企业IT部门对Docker的基础概念还是不够了解,对稳定性、可靠性、安全性等还有一些担忧。需要一个技术提供商布道的过程,也需要有一个技术应用先行企业实践检验并证明Docker应用的稳定性、可靠性、安全性等的过程。

2、对Docker该如何使用的认知问题:
从Docker使用的认知来说,我们现在看到有一个趋势,就是把Docker当做虚拟机在宣传和使用,包括社区也在做一些类似“Docker热迁移”这样的工作,我们认为这是对Docker理念的误读。在我们的使用实践中,我们可以感受到虽然理论上虚拟化和docker都是一种“资源隔离”的技术,但在虚拟化主要的关注点是在资源角度,主要关注底层物理资源的隔离,主要目的是向上层应用提供已经完成资源隔离的虚拟机;Docker的关注点在应用角度,主要目的是为应用提高一个与其它应用不冲突的“沙箱”,使得多个应用可以在同一台机器上互不冲突的运行,资源隔离只是Docker的手段而不是其目标。所以对Docker的使用和管理应该是应用角度的。从流程上来说,使用虚拟机从流程上来说是申请一台虚拟机。而使用Docker,从流程上来说可能是申请一个应用部署操作。

另外,Docker容器理论上是针对“无状态”应用的。虽然在实际使用中完全的“无状态”应用是很少见的(比如日志,所以需要应用开发商专门做一些工作),但是“无状态”的理念还需要被遵从,这样才能最大发挥Docker的优势,包括快速恢复,快速扩展等。

如上这些,都需要Docker的应用者逐步认知到,才能在生产环境的使用中更好的发挥Docker的特点和优势。实际上是理念变化的过程。

3、周边系统和应用的整合:
在认知的基础上,Docker到生产环境中应用还需要周边系统的应用的配合和改造,比如要更好的弹性伸缩,就需要应用提供其应用情况的监控数据;混合云部署的时候,需要公有云管理系统配合等等。

4、流程的改进:
因为Docker是面向应用的,完全改变了过去资源使用的流程。在Docker使用中,首先部署应用时不需要先申请资源的,只需要申请部署就可以了,资源由Docker管理平台自动分配和调度;在开发测试中应用Docker,开发测试环境的搭建可以基于前期定义自动完成,也就没有了环境搭建的过程。这些都涉及到流程的变更。

CSDN:在开源软件的使用上,你们在Docker和OpenStack的实践上积累了很深的经验,分享一下吧。

CTO 李亚琼:经过这么多年的发展,Openstack技术已经被产业界和客户接受,越来越多的企业或机构开始部署Openstack进行基础设施的资源池化。在Docker技术的落地上,博云和客户一起解决了大量的技术问题。除了上述四个挑战外,我想强调的有两点:一是信心问题。Docker本身虽然出现较晚,但它采用的技术都是经过10年左右的成熟技术,可以说基础技术上基本上没有风险。这一点上希望产业界能够对Docker更加有信心一点。二是双方协作。Docker技术的落地离不开甲乙双方的深度合作,只有这样才能实现基于业务应用向云平台迁移,实现微服务化云应用架构,这一点也是最为重要的一点。

责编:魏伟,关注Docker和OpenStack,报道和投稿请联系邮箱[email protected]