上海大智慧股份有限公司公司作为中国领先的互联网金融信息服务提供商,以软件终端为载体,以互联网为平台,向投资者提供及时、专业的金融数据和数据分析,提供行情显示、行情分析和行情交易的股票软件。在行业内具有重要影响力。
过去十来年的发展,让大智慧积累了众多的IDC资源和服务器。
而近些年来证券行业所呈现的浪潮式增长态势,也开始让公司服务器端承受越来越严峻的考验。
2012年,我开始接手整个IDC部门。在对线上的业务系统资源利用率进行了排查整理后,几个突出的问题点摆在了眼前:
1.业务系统发布在过多的IDC机房,这样虽然可以解决单点故障,但增加了成本支出同时增加故障定位周期。
2.业务上线周期过长,采用一个应用系统一台服务器。受制于硬件采购、IDC资源申请周期。
3.90%的服务器资源利用率不超过10%,剩余资源较浪费,大量的服务器放置于租用的IDC机房产生的费用相当可观。
- 4.经常找不到技术人员,工作效率低,不是忙着上线众多服务器,就是忙于在现场处理各类硬件故障。
上述问题并非大智慧IDC部门所独有,不少数据服务企业也时常面临着相似的困境。
但受限于传统技术方案的局限性,这些问题的解决往往投鼠忌器,难有周全之法。
历程:由虚拟化到ZStack规模部署
基于上述原因,团队开始寻找一种能突破传统藩篱限制的解决方案。
回顾这个历程,我们总共经历了四个阶段:
第一阶段: 2012年起开始测试环境进行虚拟化尝试。单个服务器的利用率提升,业务上线周期提高。
第二阶段:寻找可统一管理的平台,Openstack 、Cloudstack、等IaaS软件进行小规模部署。
第三阶段:对IDC资源进行整合。结合用户来源分析,建立多个核心机房。
第四阶段:使用私有云ZStack平台规模部署。
云平台选择:
如何解决安全稳定性、管理效率与成本 一般而言,私有云领域常采用OpenStack和CloudStack两大开源云平台。
在选型之初,根据企业本身的特点,我们将安全稳定性列为首要条件。
但是由于缺乏技术力量,我们对于开源项目的底层核心改造没有经验和能力。
这导致对于CloudStack的测试使用,始终是控制在较小的范围内。私有云的项目也因此停滞了很长时间。
一次偶然的机会,我们接触到了国内的IaaS开源产品ZStack。企业的私有云之路,也出现了新的转机。
在ZStack官方公布的技术文档中,可以发现有很多不同于现有IaaS产品的架构设计,其主要特色为全异步架构、微服务和一致性哈希,可承载高并发的API请求,具备稳定的架构、非常简化的部署和升级的特点。
总结起来,ZStack的优势切中了我们两大痛点:
其一是闲置资源无法充分利用;
- 其二是缺乏足够技术人才。
其安全稳定性也有足够保障,这使得我们迅速将其确定为第一解决方案。
从0.7版本开始,我们一直用到了现在的1.04版。期间针对平台使用中的改进意见和Bug修复,得到开发团队很好的回复和解决。
多次版本的升级如官网所说一键完成,平台的容灾恢复也经过多次验证,确实安全可靠。
目前大智慧部署近百台宿主机,500多个云主机实例运行中,系统创建交付周期以秒计。
所有宿主服务器只是将现有服务器增加内存和硬盘,让所有设备的利用率提升到较大。
平台架构如下:
1.ZStack管理节点:机器数量2台,负责管理一个站点内所有的计算和存储节点,并提供容灾和高可用。
2.Hosts计算节点:每个机柜部署12-15台硬件配置,直接对现有服务器改造,(2x Intel Xeon/ 128G Mem/ 5x 600G HD)。型号相同的服务器放置在一个cluster 操作系统,Centos 7.1
3.本地盘存储:考虑到分布式存储的硬件投入已经维护技术要求高,故障发生影响范围巨大,并且本身业务系统非IO高并发。 采用成本节省的方式。同时在部署的时候利用系统的分布式部署在多台宿主机上避免单点故障。
- 4.网络:采用扁平网络(无虚拟路由方案),平台只提供DHCP功能。所有网络流量都由物理网络设备处理。提供服务的Public网路Trunk模式VLAN隔离。SDN方案需等成熟稳定可靠廉价的出现以后再做调整。
在ZStack社区(ZStack QQ群410185063)中,其创始团队会根据用户的一些实践体会和改进意见,进行评估快速解答,并在后续版本更新中加入新功能、修复bug。
平台的日常维护和升级只需1-2人,经过简单的培训即可上手。
从ZStack0.7版本到现在1.04版的使用,每次版本升级根据官网提供的升级手册操作。
只需要短短几分钟就可以完成,升级过程中用户无感知。
现状:
工作效率与人力成本大幅优化 目前,大智慧的众多新业务系统都在逐步向ZStack平台上部署。
运维人员只需要关注资源利用率是否在安全水位,便可以在事先做好资源上线。
从系统申请到进行部署,仅需要几分钟。
公司私有云平台从ZStack 0.7版本开始,每次ZStack发布后都会安排运维人员及时升级。
ZStack的无缝升级功能可以较大化的降低软件升级的成本,几次升级过程都较为顺利。
与早期基于传统数据中心的简单服务器堆叠相比,依托ZStack云平台的新系统在设备利用率,工作效率等方面都有了较大的提升,同时又大幅度降低了固定资产投资和运营成本。
如今,大智慧已在私有云平台上累计创建超过5000个云主机实例。如果按照传统部署方式,搭建一台物理机生产环境平均需要2个小时,那么私有云平台已经累计节省了10000个工时,相当于1250人天。
由此带来的整个公司工作效率的提升远非简单的数字运算可以体现。运维团队工作从简单、重复的工作中解放出来,有精力放在研究和部署更好的技术架构和方案上,提升了工作效率,减少了人力投入,运维人员的人力成本节省。
展望:整合更多的物理资源进入私有云环境
由于ZStack底层的基础平台已经搭建完成,添加物理机的工作可以通过UI界面点击完成,未来会整合更多的物理资源进入私有云环境。
由于环境规模的不断提升,多租户管理以及内部的账单系统就变得非常重要了,据悉这些功能也会在ZStack后续产品能够提供。
随着私有云平台的使用深入,未来将CMDB、安全、监控报警平台、发布平台与私有云进行整合,实现故障自动恢复,业务自动上线发布等自动化管理。
利用公有云例如AWS、Azure等作为系统弹性扩展。运维人员有精力去关注业务,利用线上系统状态流量等底层数据分析,提供产品等做业务调整。
无疑会真正改善程序的运行环境,提升产品运行质量。