针对license的监控管理报告
中国企业越来越多地采用HPC 技术来应对市场的挑战,越来越短的新产品周期,不断提升的技术创新要求等。企业在高性能计算平台建设的投资中,软件的投资已经大大地超过了在硬件上的投资。大量的、昂贵的商业软件成为制约企业扩大计算规模的一个重要原因。企业 HPC 环境中涉及的商业软件包括:建立几何模型使用的CAD软件、进行工程分析前后处理的 CAE 软件、用来进行计算求解的各类求解器、进行数据管理的 PDM/PLM系统、进行工程和实验数据管理的 SDM系统等等。
近几年来,随着国家高度鼓励自主创新,大力推进软件正版化,国产软件包括CAD/CAE 软件逐渐迎来了新的机遇和发展,市场占有率逐步提高。但是我们仍然看到,国外引进软件仍然占绝对的主导地位,特别是在高端三维CAD 市场、CAE 市场,国产软件市场基本上为空白。我国企业每年在引进国外 CAD/CAE/PLM/PDM/SDM系统上投入巨大。 随着 HPC 门槛的不断降低,尤其是性价比很好的集群技术的普及,越来越多的企业开始尝试借助 HPC 技术,来求解更加复杂的、计算规模更大的问题。但是,一个无法回避的问题是商业软件居高不下的价格。即使拥有很强的计算能力,如果没有足够商业软件license数量,也无法进行大规模的计算和求解。即使拥有很多性能卓越的工作站,仍不能进行更大规模的产品设计。 因此,对 HPC 全过程中涉及的软件license的采购、采购后的有效分配和管理、统计和记账,都应该加以高度重视。本文拟就以上几方面进行探讨。 因此,充分了解这类商业软件的license模式,根据公司的需要,做出明智的采购各类商业软件license成为一个重要的课题。
商业软件license的授权和计费方式软件厂商(ISV)提供了很多种license模型。以下为最常用的license授权模式:
1) Subscription-Based Pricing Model 时间受限license 根据IDC统计分析,该类型license约占市场1/3,预计2008年约占一半。但是从国内市场来看,远远低于这个数值。
2) Perpetual License 永久性license目前为最主流的方式,但是由于该种license没有很好地平衡ISV和用户的 需求,将来可能被其他license模型取代。 以上两种许可授权方式,采用的计费方式基本上都是基于并发用户数量。
3) Usage Metric-Based Pricing Model 基于使用数据的许可该种全新的授权和收费方式,IDC估计这是未来的发展方向。一方面让ISV 能保证其软件版权不被侵犯,另外一方面由于用户一次性付出降低,增加 了市场吸引力,同时保证了其现金流;另外一方面,对用户而言,仅为实 际使用软件的时间和数量付费,无须担心license过多带来的浪费或者许可 证过少带来的对业务的限制。
从ISV软件收费方式上来看,分以下几种:
1) 模块化收费 ISV将软件的功能模块化,各个模块单独收费,各个模块之间license无法共用,可同时使用某模块的用户数量取决于该模块拥有的许可的数量。这 种收费方式渐渐被市场淘汰了。
2) Token-based收费 ISV将软件的功能模块化,但所有模块使用同一个license池,不同的模块 需要不同数量的license,其具体数量可能非常复杂,通常用户并不清楚。 license通常可以在一定的范围内浮动(network floating)。目前在这种方式下,有一些新的技术,比如:同一个用户在同一个机器(host)上使用两个模块的话,需要的license只是两个模块中较高的那个。 该种方式对用户而言,无法准确预知需要的license数量,不能保证高峰时 刻的使用需求。
3) Usage-based收费 在该种方式下,用户能以较低的预算取得可伸缩性高的软件license,仅需 要为实际的使用来付费,同时能保证高峰需求。另外用户可以保留选择竞争对手的解决方案的灵活性。对ISV而言,能更快地推进市场普及和保证自身的利益,如版权、现金流、 销售周期等等。
在针对License管理的第三方软件中,行业里的领军人物Lanmantech公司特地花费五年时间从事软件license监控管理研究,对license管控很有经验。其研发的LMT—LicManager软件集中监控管理系统,可以提供全面具体的license数据统计报告、license使用分析、license自动回收释放、license分组调度、license外借及license优先授权等功能。下面主要以介绍其对license的管控方面做一个全面的分析。
首先我们要做的就是如何确定企业的需求,从而确定准确的需要购买的软件license数量,故而必须考虑到以下因素:
1)目前企业所拥有的该类软件license的数量,使用的状况,使用的效率,license数量和用户的对应关系,哪些软件哪些模块出于无人使用的状况在当前的技术条件下,完全可以凭借历史的数据来作出科学判断。
2)避免license由于分配不合理,误认为license总数不够,从而继续购买该类许 可证。确定是否有可能把各个部门的license整合起来,在部门间共享,让需求大的部门得到更多的license。通过察看过去一时间,各个部门对某一软件的累积使用时间,并考察各个部门使用该软件的人数,可以判断哪些部门license占用过多 而利用效率低。
根据企业的计算需求,考虑硬件平台、软件特性、计算问题特性之间的搭配,确定license的类型(SMP/MPP/DMP)和数量,做好benchmark。建议寻找专业咨询公司的帮助。
另外,我们将这些软件分成两类,第一类是交互性软件,如各类CAD 软件、CAE 前后 处理软件。这些软件除非在global 的范围内使用,否则其可预期的最佳使用效率只能是工作日的8 小时。对于该类软件,企业很难为每个工程师配备一套软件,通常采用浮动license,在用户之间分配,通常用户人数大于软件license数量。在这种情况下,如何制定license的分配、使用政策,成为提高使用效率的关键因素。所以对于第三方管理软件LMT-LicManager的功能要求:
--预测高峰期,提供实时更新的license使用状况,指导用户避开高峰期;使用情况可以公布在企业局域网上,自动更新,用户很容易看出,什么时候license处于紧缺状态;
--仅允许相关工程师使用对应其业务的软件license;
--对每个工程师能同时使用的最大license数量做出技术上的限制;
--规定单个用户连续使用license的最长时间;
--对用户累积使用时间进行统计甚至费用分摊,指导用户理性使用license;
--在部门之间,按照业务需要和历史使用记录,进行动态license分配和共享;
--采取技术和政策措施,避免有人滥用license;
--为重大、紧急项目预留license,保证业务目标的实现;
--建立license外借政策,方面外出员工,减少固定单机版软件需求。
第二类是密集计算类软件,这些包括各类求解器、批处理应用等。通常这些软件的license的费用和处理器的数目、参与计算的节点的数目相关,价格比第一类更昂贵。理想的情况下,用户通常希望它们能够 24*7*365 小时满负荷工作。 在实际上用户普遍面临很多问题。例如:
1)计算资源(硬件或者license)数量不能满足紧急任务、峰值计算能 力要求,求解时间过长;
2) 大多数情况下,已经拥有的license处于空闲状态,因为企业的计算量是阶段性的,需要的时候不够,平时处于空闲;
3) 虽然拥有许多license,但是因为license不支持并行的计算或者license隶属不同部门,不能同时利用这些license进行计算从而提高计算峰值能力;
4) 计算任务很重,但license利用效率、硬件利用效率低下,用户在提 交计算任务、取得计算结果上耗费时间太多,由于软、硬件故障引起作业失败率高;
故而在这种情况下,提高软件license的利用效率也是一个非常重要的因素,我们通过LMT-LicManager客户端可以采用的措施包括:
--尽量整合和共享license;
--能为重要作业预留或者抢占license;
--保证license仅给合适的人、在合适的时候、在合适的机器上运行(如:企业在低端机器上有和机器绑定的 node-lock license,小的作业最好在其上 运行,这样的调度应该对用户透明。); --对license的使用进行统计和分析和记账,甚至费用分摊;
--确立作业的优先级,确保紧急、重要的作业先运行,非紧急作业放在夜间运行;
--保证硬件和license能 24*7*365 不间断运行,提高可用性和可靠性(采用商业HPC 计算管理软件);
--在保密性可行的情况下,考虑租赁其他机构资源;
--在购买软件时,考虑采用年度license,最好是基于使用时间的license租赁;
--整合企业的license资源,做到最大程度的共享;
--对license的全局利用效率进行可视化统计;
--寻找专业license咨询公司的帮助;
另外,在token-based 的license类型下,来自同一个 ISV 的第一类软件和第二类软件通常使用同一个license资源池,在这种情况,对license的管理更是势在必行,否则会造成license资源和硬件资源的极大浪费。最优化的license管理可以为公司提供一个有效节省成本的机会,很多没必要的花费往往都是由于过多的license造成,另外,新的法律规定中已经很大程度上提高了违法license使用权所要承担的责任,而且生产商相比之前也都更加严格的去追究这种侵权行为。进而,如果没有全面的license管理就无法真正确定license成本背后的责任。
有效的license管理的基础在于是否能够对已知和未知的产品,以及他们在网络中所有系统上安装的不同版本之间进行可靠的识别。这些数据必须要自动而且灵活的分配给对应的license合同,以实现最大化的节省。因此,现代license管理就包括:提供一种可以在全公司内统一分发license的办法,浮动调度使用license点数,节省至少30%的相关成本。从长远的眼光来看,将license管理集成到全公司的生命周期管理中,能够帮助企业获得一个受益远远大于开销的解决方案。
结论:LMT-LicManager客户端对license资源进行科学管理,提高软件license的利用效率,是企业利用HPC 技术进行技术创新的关键因素。