原副标题:云计算管理工作体系内部结构6大准则遵从了什么样?
2006年,云计算(Cloud Computing)商品问世,云计算的基本概念也被明确提出,现在云计算基本上已经溶入大部份的金融行业和应用领域情景中。他们不一定能间接感受到云计算对现实生活、工作、自学的影响,但作为IT基础建设,它却悄悄支撑力着他们已经开始使用的各应用领域。
在许多书和云服务项目供应商的非官方文件格式中都如是说过云计算的基本概念、发展历史、商品管理工作体系,他们无须约勒。他们可以从另两个视角去重新认识云计算的总体构架和服务项目潜能,也就是云计算构架管理工作体系,如图1所示,其中归纳了云计算节兰的共同组成内部结构,包括基础建设、云计算作业系统、商品管理工作体系(包涵安全可靠与合规性、监视与管理工作)、解决计划管理工作体系、服务项目管理工作体系。
图1
完备的控制技术管理工作体系内部结构也是针对性变易的,果不其然搜集市场需求预测,依照市场需求预测展开管理工作体系内部结构,再展开评估结论改良及交货实行,接着稳步营运,如图2所示。
图2
在管理工作体系内部结构的各期中,每一期均引入前两个期的结论,历经现阶段期处置后输出内部结构设计计划或构筑自然环境,渐进地大力推进完备解决计划的内部结构设计。
(1)市场需求预测期由使用者输出市场需求关键点,历经预测后输出市场需求预测表。
(2)在管理工作体系内部结构期中,依照市场需求预测DFA相匹配最合适的程序语言,形成完备的构架内部结构设计计划。
(3)在评估结论改良期,对已完成的管理工作体系内部结构计划展开评估结论,输出历经评估结论和参照较好管理工作体系内部结构准则改良过的管理工作体系内部结构计划。
(4)在交货实行期,依照历经评估结论改良的管理工作体系内部结构计划在云平台中构筑自然环境、部署业务,提供符合管理工作体系内部结构的云端自然环境。
(5)在构架的稳步营运中,输出解决计划和现阶段业务运行状况,稳步巡检、预测、评估结论(参见《云端构架》一书的第11章),输出改良措施,展开重构改良,并周而复始地依照新市场需求提供方案。
基于云计算展开管理工作体系内部结构,大部份的控制技术解决计划都应遵从一定的准则,这也是管理工作体系内部结构中要追求的目标。
图3所示为管理工作体系内部结构的6大准则,包括合理部署、业务稳步、弹性扩展、性能效率、安全可靠合规性、稳步营运。
图3
这6大准则代表了管理工作体系内部结构中需要考虑的不同视角,只有同时遵从这些准则才能内部结构设计出完善的构架计划,但在实际情况中,并不需要在大部份管理工作体系内部结构中把大部份程序语言都融入进去,构建繁杂的构架计划。后面会对这6大准则逐一展开介绍,从各准则的子项中展开内部结构设计。
1 合理部署
业务系统在公有云上的部署包括使用虚拟机形式的云主机,还包括性能更强的物理云主机形式,托管服务项目包括托管应用领域、托管物理服务项目器。
基于IT历史资源状况、合规性性要求等,许多企业还没有上云,针对这种情况,将云计算作业系统抽取出来打包为独立的软件和服务项目,在使用者的私有化自然环境中展开部署。区别于公有云面向“任何”使用者开放使用,私有化部署仅面向少数指定的使用者使用。
混合构架能够对公有云和私有化部署的平台、传统的VMware、OpenStack虚拟化平台或物理服务项目器等资源展开统一管理工作和调度,混合构架既享受了不变更本地自然环境、满足合规性要求的好处,又享受了云平台资源丰富、服务项目潜能充足等优势。混合构架也是现阶段企业转型上云的一种中间状态,会长期存在。
在跨境电商、游戏出海等情景下会使用到全球范围内的多个地域,将业务和数据靠近使用者来部署可以减少网络延迟、提升访问体验。因此,纳入了全球部署,来重点解决如何在全球范围内尽可能靠近使用者部署的问题,也能实现数据同步存储和处置的计划。
不能相信任何一块硬盘、任何一台云主机、任何两个可用区、任何两个地域,也不能完全相信任何两个云服务项目供应商,展开业务部署时应选择多个公有云平台,提升业务稳步性,弥补单个云服务项目供应商在资源和服务项目上的短板,屏蔽云服务项目供应商的一些控制技术锁定和商业绑定。
2 业务稳步
业务稳步性主要是指高可用、高可靠、灾难恢复三方面,在程序语言中也是按照这个逻辑展开的。
高可用(High Availability),是指当业务运行的资源出现故障时,通过冗余等内部结构设计来避免业务中断。
高可靠(Continuous Operations),是指业务运行的资源无故障,业务可稳步提供服务项目。
灾难恢复(Disaster Recovery),是指当业务运行自然环境遭到破坏时,在不同自然环境中恢复应用领域和数据的潜能。
在管理工作体系内部结构的每一层中都应实现冗余和业务稳步性,没有冗余就意味着会出现单点,而单点一旦出现故障,就会造成局部服务项目终止。
存储商品:块存储通过三个副本实现冗余,当两个副本出现错误时,通过其他副本来校验和恢复数据;对象存储中通过纠删码来实现数据冗余校验,提供可恢复潜能;对象存储提供跨区域复制功能,避免单个地域成为对象存储的单点。
备份计划:在云端通过跨可用区、跨地域的数据备份提升可靠性,避免只存储一份数据;在混合构架中将数据备份到云端,在本地自然环境数据损坏时,可通过云端备份文件展开恢复。
容灾计划:对业务系统实现容灾,避免现阶段业务自然环境成为单点,提升总体业务的可用性和抗风险潜能。
高可用:通过跨可用区的负载均衡部署实现云主机和可用区的冗余;通过全局负载均衡实现跨地域、跨云平台的高可用。
3 弹性扩展
紧耦合的系统不容易扩展,在出现软件Bug和系统故障时难以排查问题,调用每一系统组件的压力各不相同,小问题逐级放大,容易造成整个业务中断。要保持系统弹性扩展,首先要展开系统组件的解耦,包涵动态数据和静态数据解耦,解耦后的组件可实现功能单元化,各司其职。
解耦之后再对组件和服务项目展开扩展,即计算资源的纵向扩展、横向扩展和自动伸缩,包括数据库层的扩展,还有通过混合构架延展本地自然环境的计算、存储备份、安全可靠防护、商品服务项目潜能。对应用领域和数据的迁移也算作整个系统的扩展,从两个自然环境迁移到另外两个自然环境,系统应保持弹性扩展,在需要迁移时能够快速实行迁移。最后还要展开均衡,组件解耦、资源和服务项目扩展之后需要统一的接入入口,以屏蔽底层解耦与扩展带来的接口不统一等问题,将这些都纳入均衡和全局负载均衡中来如是说。
在各层面实现解耦,通过消息队列来解耦组件之间的通信,并解耦事件;通过Redis等共享存储实现状态数据与计算资源的解耦;采用云主机部署业务应该面向服务项目而非资源,将资源与业务解耦;存储实现弹性可挂载和可卸载的云硬盘,采用可绑定和解绑定的EIP;通过DDoS防护、WAF防护等解耦安全可靠防护与计算资源;使用原生的计算潜能、存储潜能将业务与云平台的特性解耦,实现业务在多个云平台中的可扩展。
组件解耦是实现可扩展的前提,可通过以下方式展开解耦。
保持无状态,将状态数据存储到Redis中。
放到负载均衡中,扩容、缩容不影响总体业务。
通过消息队列、API Gateway解耦,生产者、消费者可扩展且互不影响。
实现业务的全局负载均衡,后端业务能够在混合构架、多云自然环境中展开扩展
4 性能效率
非常多的解决计划和案例中都涉及高并发、流量激增带来的对性能的挑战,在性能效率中,主要目标是发现和提升应用领域的性能,提高资源和组件的效率。
首果不其然计算性能,通过采用高配置的云主机或物理云主机来提升单机性能,通过集群形式扩展总体服务性能。
其次是存储和缓存,通过Redis来缓存热点数据、存储临时状态数据,在内存中展开计算能够提升业务性能。在每一层使用缓存,通过CDN缓存静态文件,对没有命中的文件展开回源;通过Redis缓存数据库,加速数据库的访问;通过Redis缓存热点配置文件、热点数据,提前加载,减少访问时间。
再次是对网络性能的优化,在业务实现全球部署时选择数据中心,并且基于全球基础网络、CDN及全球应用领域加速来提升网络性能,获得请求加速效果。
最后如是说应用领域性能监测和压力测试,从应用领域的视角上来评测现阶段的性能状况、发现问题瓶颈,并针对性地解决问题。
5 安全可靠合规性
安全可靠合规性一方面是为了满足业务安全可靠防护的自身市场需求,另一方面是满足安全可靠监管的合规性要求,在具体实行时会将这两方面交叉在一起。
首先,从使用者账号和权限管理工作切入,为最合适的人员分配恰当的账号、角色,授予权限,对于通过API或CLI来访问的程序或人员分配恰当的公钥、私钥和权限,对于临时访问的对象存储文件Token等也展开严格管理工作。其次,还有在整个安全可靠管理工作体系中的终端安全可靠、数据安全可靠、网络安全可靠、应用领域安全可靠,以及对日志、行为、数据库操作的审计。最后,还有等保2.0的要求、网站备案要求、满足GDPR等各地区对业务和数据隐私要求的制度等。
在账号管理工作体系中设置主账号、子账号,并对公钥、密钥展开管理工作;设置最合适的角色,为账号、角色分配所需要的权限。
通过ACL控制网络访问;通过安全可靠组限制云主机开放的端口等;通过子网和路由控制跨子网的通信。将数据库及只需要内部访问的云主机配置到内网VPC中,设置允许访问的VPC,设置为不连通外网。
防止DDoS、cc、SQL注入、XSS等攻击。
安全可靠审计,保留访问日志、操作日志,逐步实现低频存储、归档存储等。
6 稳步营运
云平台提供的资源与服务项目均有SLA,云主机的SLA通常为99.95%,使用者构建的业务系统都是基于云资源和云服务项目的SLA,在此之上构建可用性、可靠性更高的业务系统。对于自身业务系统,也需要制定SLA来表明服务项目可用性或其他指标,制定了使用者业务的SLA后,就可以按照SLA阈值来设置高可用限流值,综合评估结论总体业务的服务项目可用性和数据可靠性,并指定故障应急措施。
在稳步营运中会对云资源、云服务项目、事件及使用者的应用领域展开监视,并设置告警,在达到告警条件时,通过电话、短信、邮件、钉钉、微信等方式通知相关人员,将告警交给回调函数,可实现自动化故障处置或相应的应急预案,减少人工介入。
应该在管理工作体系内部结构的每一层展开监视与告警,包括对云资源、事件、应用领域运行状况的全方位监视。对于使用者自定义的需要监测的资源与服务项目,需要配置合理有效的告警策略来及时发现异常情况。通过Advisor实现云平台巡检,稳步监测资源的变化,稳步定期评估结论业务构架,及时发现业务构架是否还相匹配业务市场需求。
此外,还需要具备自动化响应及处置功能,自动伸缩能够通过监视CPU等指标自动扩容或缩容云主机数量;通过定时器固定周期扩容或缩容云主机数量。实现事件驱动响应,由事件消息触发执行脚本、回调函数等操作,实现智能运维,依照事件和告警自动触发运维操作,编排运维脚本,通过智能运维的方式来减少人工运维。
及时发现消费及业务成本的变化,并对成本展开优化。设置账户余额告警值,避免快速消费,实现成本控制。评估结论资源使用时长,将按时计费的资源转变为按月、按年计费,优化资源的使用。通过Advisor中建议的成本优化释放没有使用的EIP,依照CPU等指标来减少云主机数量或降低云主机配置,云主机处置对象存储时通过内网展开访问,减少外网访问的流量费用。通过多云部署实现成本优化,综合多个云平台的资源价格选择资源,选用较优的组合计划,通过其他云平台更低单价的竞价实例云主机来处置OLAP的业务。