今天这篇帖子我会讲解一下金蝶财务软件K3_CLOUD高并发部署在阿里云上得解决方案,本篇博客同样适用于其他软件高并发上云部署
以我去年12月份的一个客户项目为例。
做过项目的朋友都知道,小客户比较关注的是成本,大客户关注的是价值和服务。高并发客户一般都会有专业的IT运维人员,会非常关心软件运行的稳定性和安全性,用单单一台云服务器做部署是很难满足客户的需求的而且会带来很大的安全隐患。
这里我们会用到集群部署方式,这种方式的好处就是能确保多台云服务器同时为业务提供服务,一台服务器即使出了问题,还会有其他云服务器可以分担用户请求。除非是所有应用服务器同时出问题,否则业务就不会被中断,那么留给我们进行售后处理问题的时间就非常充裕,同时也大大降低了服务商的服务成本。
在描述部署方案之前,我这边先大概介绍一下项目的情况:这里我就以A客户来描述
A公司2018年12月份购买了金蝶K3CLOUD7.2版本 用户数300
1.曾经有业务系统中过勒索病毒,要确保软件的高可用和数据安全。
2.三家工厂和多个分公司分布在全国各地,需确保网络稳定和数据传输的安全性。
3.数据库要做容灾,最好有异地备份容灾,可以实现秒级恢复。
4.实现VPC专有网络,实现不同业务系统之间二层隔离。
5.实现云后台账号管控和权限组管理,分职权进行人员和云上资产管理。
高可用性:
1、通过SLB负载均衡,将用户请求分发至多台应用服务器确保业务不中断,任意一台服务器出现问题,都不会影响软件的正常使用。
2、数据库采用阿里云RDS SQLSEVER 2012 双机,一主一备实现高可用, 两台数据库数据库实时同步,主机宕机备用立刻实现无缝切换。
安全性:
1、应用服务器通过安骑士进行基础防护,可以实现病毒木马查杀,同时提供系统漏洞修复。
2、OSS备份存储可为应用服务器提供磁盘备份及镜像功能,可设置自动备份策略及回滚恢复。
3、DBS数据库备份可为RDS数据库提供备份,可设置备份策略及秒级恢复。
4、通过智能接入网关或VPN网关可实现业务系统同时存在于异地网络和云上机房。基于阿里云VPC搭建不同的业务模块,构建完全隔离的云上环境,通过公网进行业务交互安全可靠。
5、WEB应用防火墙可防御SQL注入、XSS跨站脚本、服务器插件漏洞、木马上传、非授权核心资源访问等OWASP常见攻击,过滤海量恶意CC攻击,避免您的数据泄露,保障业务的安全与可用性
阿里云ECS服务器
一台管理中心服务器,两台应用服务器,用来部署金蝶K3CLOUD应用程序及客户端程序
阿里云RDS云数据库
SQL SEVER 2012 高可用版一主一备的经典高可用架构
本地SSD存储提供最佳性能,各方面表现均衡,适用于大中型企业的生产数据库
阿里云OSS对象存储
提供应用服务器程序及磁盘数据备份服务,可设置自动备份策略
此产品非常适合金蝶ERP的使用,假如自动策略设置为每天12:00和24:00进行磁盘数据备份。如果服务器出现问题,则可以直接回滚到之前的正常状态。
阿里云DBS数据库备份
功能如同OSS,只是该功能是专门针对阿里云RDS数据库使用。
负载均衡SLB
为用户提供请求分发服务,将300用户的操作请求按照权重分发给不同的应用服务器处理是实现集群部署以及高可用的必须用到的产品
专有网络VPC
将阿里云上的资源(包括服务器,数据库等产品)实现专有网络部署和其他资源进行二次隔离,确保业务之间的独立性和安全性。
智能接入网关
通过直接接入网关可以实现Internet就近加密接入,类似VPN和高速通道,将各个区域与阿里云组成局域网络获得更加智能、更加可靠、更加安全的上云体验。
Web应用攻击防火墙
通过防御SQL注入、XSS跨站脚本、常见Web服务器插件漏洞、木马上传、非授权核心资源访问等OWASP常见攻击,过滤海量恶意CC攻击,避免您的网站资产数据泄露,保障网站的安全与可用性。
安骑士
安骑士是一款经受百万级主机稳定性考验的主机安全加固产品,拥有自动化实时入侵威胁检测、病毒查杀、漏洞智能修复、基线一键核查等功能,是构建主机安全防线的统一管理平台。
这里大致说一下安骑士和web应用防火墙的差别:
安骑士是针对服务器的安全进行防护的,类似于防护杀毒软件,同时提供windows系统漏洞修复等功能,安骑士企业版是可以对勒索病毒进行基础防护的。
Web应用防火墙主要是防护网络攻击,SQL注入,恶意挖矿木马的植入上传。
接下来,我们针对这个架构可用性,以及最高承受能力做了一个测试
K/3Cloud 微软 CCIC 测试
–稳定性和300并发能力测试
硬件环境:
软件环境:
领域 | 类别 | 数据量 |
基础 | 组织 | 1067 |
用户 | 7465 | |
角色 | 10500 | |
财务 | 科目 | 200 |
凭证 | 216980 | |
付款单 | 2446000 | |
应付单 | 1104800 | |
采购发票 | 1372200 | |
销售发票 | 1376400 | |
收款单 | 1200000 | |
应收单 | 1100000 | |
供应链 | 客户 | 13000 |
部门 | 3023 | |
供应商 | 11000 | |
仓库 | 2844 | |
仓位 | 10 | |
采购订单 | 1281600 | |
入库单 | 1050000 | |
销售订单 | 1288200 | |
销售出库单 | 1458400 | |
采购价目表 | 332000 | |
销售价目表 | 356000 | |
采购折扣表 | 31700 | |
销售折扣表 | 35320 | |
生产 | 物料 | 26978 |
生产订单 | 11061 | |
生产领料单 | 182466 | |
生产入库单 | 2490 | |
生产用料清单 | 116448 | |
物料清单 | 213600 | |
生产汇报单 | 2783 | |
委外申请单 | 1916100 | |
委外领料单 | 43674 | |
简单生产领料单 | 1570200 | |
简单生产入库单 | 1311824 | |
人力资源 | 组织架构管理 | 10820 |
职位体系 | 30405 | |
雇用单 | 8637 | |
仸职单 | 8637 | |
稳定性测试
稳定性测试模拟实际的生产环境场景,并发数 370 个,包拪基础,财务和供应链领域,连续运行 24 小时。测试结果如下:
平均响应时间
整个过程非常平稳。平均响应时间绝大部分在4 秒内完成
SQL Server
SQL Server 服务器的 CPU 占用率为 95/4=27.5%,说明在 370 并发的情况下,需要CPU 资源并不高。并且整个过程表现的非常稳定。SQL Server 缓存的命中率几乎为100%,说明需要的数据都可以从缓存中获取。
App Server
App Server 的 CPU 占用率大概为 10%左右,说明在 300 并发的情况下,需要的 CPU 资源并不高。从内存来看,整个过程表现非常平稳。从 GC 来看,其大小相对稳定,能够有效的回收资源。说明 App Serve 是稳定和可靠的。
通过测试,此云上架构方案完全符合K3CLOUD使用环境
以同样方式进行线下部署,云上部署IT综合成本更低,运维更加方便。
在较低投入成本的情况下实现了业务系统的高可用,同时确保了业务系统的安全性和实用性,客户体验性更好。
云上部署比线下部署更加方便,大大降低了实施服务人工成本。
缩短了实施周期,项目可控性更高