、系统部署方式
金蝶K/3 系统是三层结构应用,系统部署分多部分进行,包括客户端、中间层、数据库、Web 系统四类部件:
客户端——指基于Windows GUI 的K/3 客户端桌面应用程序,需要安装在业务系统使用人员的机器上;
中间层——包括所有业务系统的业务逻辑组件,这些组件会被客户端所调用,是K/3 系统的核心部分;
数据库——安装数据库产品和K/3 数据服务部件,目前K/3 系统支持的数据库产品是Microsoft SQL Server,所有的业务数据都存储在这里;
Web 系统——则基于IIS 提供K/3 人力资源、管理门户、CRM 等WEB 服务。
K/3 系统结构
K/3 系统四类部件中,中间层和数据库是任何应用环境都必须要安装的部分,客户端和Web 系统则可以根据需要决定选装或者全部安装。
虽然以上所有部件都可以装在同一台机器上,但在条件允许的情况下,应尽可能将各类部件安装在不同的机器上,以提升整个系统的性能。
1.1 小规模部署方案 (All-in-One)
定义:只有单一台服务器,中间层、数据库、Web 系统都装在同一服务器上,适合于 K/3 小规模应用。
在小型的应用场合,业务量较小,只有不超过十个客户端的情况下,可以将中间层和数据库安装在同一台服务器上。超过十个客户端的应用,为保证系统性能,中间层和数据库应该部署在不同的服务器上。在小规模应用场景下,通常不需要部署Web 系统,如果需要部署Web,而中间层服务器的负荷并不重,将Web 系统安装在中间层所在服务器上也是可取的,但必须考虑好系统安全问题。
1.2 标准部署方案 (分层部署)
定义:数据库、中间层、Web 系统均分别单独部署在专用服务器上,适合于K/3 大多数应用场合。当客户端数量超过 10 个,应该把每个服务器角色分开单独部署,并且建议这些服务器专用于 K/3 服务,不建议用其他服务器(例如域控、DNS、邮件等)兼任。这样才不至于多种服务争抢服务器运算资源,影响K/3 系统的运行性能。此外从网络安全角度考虑,管理员可能对数据库、中间层、Web 服务采用不同的安全策略,例如将数据库隔离在单独VLAN、将Web 服务放在DMZ 等,服务器分开部署更能满足网络安全方面的要求。
1.3 数据库群集部署方案
定义:用两台(或多台)服务器+磁盘阵列柜,构成数据库故障转移群集,适合要保证业务不间断的客户。故障转移群集(Failover Cluster),又可称为高可用群集(High Availability Cluster),俗称双机热备,主要功能是保证服务不中断,当提供服务的主机宕机或因其他原因不能联系时,备份机会及时在线接替服务。
替换过程依照实现技术和设备的不同,持续几秒到几十秒不等,通常客户端不会察觉到服务中断。SQL Server 2000/2005 数据库引擎,都有故障转移群集功能,K/3 都能很好的支持。
1.3K/3 数据库群集部署
要实现SQL Server 数据库故障转移群集,有几个必要条件:
1. 要有共享存储设备,通常是磁盘阵列柜,直连或通过FC SAN、iSCSI 与节点服务器连接;
2. 两台(或多台)节点服务器的硬件配置最好相同或相近,如果做不到,至少物理内存容量要一样;
3. 节点服务器的操作系统必须是Windows Server 2003 企业版,标准版没有群集功能;
4. SQL Server 2005 可以采用标准版或企业版,均有群集功能,但标准版只能支持双机群集,企业版可支持多机群集;SQL Server2000 群集必须采用企业版,2000 标准版没有群集功能;
5. 要有域环境(Active Directory)支持,工作组环境无法实现群集;但域控制器(DC)不能做 SQL Server 集群节点。
此外还必须明确:
1. SQL Server 群集不能实现负载均衡、不提高数据库性能,只起到故障转移(双机热备)作用,到2008 为止各版本SQL Server 群集都只有故障转移功能;
2. SQL Server 群集不能提高数据安全性,群集的数据实际只有一份(在阵列柜上),虽然磁盘阵列的理论可靠性比一般内部磁盘高,但不是绝对的;提高数据安全性必须通过定时备份、数据同步等手段解决;
3. 一些第三方群集软件可以不通过Windows 群集功能(MSCS)实现SQL Server 群集,K/3 跟这些软件通常是兼容的,但没有广泛测试过,所以不能完全保证。
SQL Server 群集有几种不同部署模式,K/3 都能很好支持,可根据客户需要进行选择。