软件定义的可用性:重新定义云计算的正常运行时间云和虚拟化
软件定义的架构已经重新定义了我们今天数字化生活的方方面面:从虚拟化数据中心到您汽车的空气温度调节系统。那么,软件定义功能概念的下一步走向如何呢?我认为这一概念最有可能进一步大展拳脚的领域之一便是云计算。
但是,要采用云模型存在着两个最大障碍:即安全性和可用性的问题。并且,随着企业迁移到云计算,可用性正在迅速成为企业今天所面临的最大的单一风险。如果您的企业依赖于公共或私有云,而一旦这些服务出现计划外的故障或状况,你企业的业务将歇业。我们都清楚的是,传统的基于硬件的可用性策略不能在软件定义的世界提供整体解决方案,而云环境恰恰是软件定义的。由于大多数云基础架构使用商品硬件和规模化的设计,因此,其面临运行失败是一个永远存在的现实。因此,许多企业都需要反思应用程序和基础设施迁移到云中的可用性,同时提供所需的快速低成本的有效服务。
当然,你可以建立智能应用程序本身的可用性。事实上,云应用程序在其设计中通常都没有这种意识,其设计往往是自动重启的计算节点上的工作负载以保持运行。
但是,关于传统应用程序,如何为其建立可用性呢?重新设计这些统应用程序的成本将是非常不经济的,同时也会造成不稳定的环境风险。即使是建立了可用性的某些应用程序,云控制平面的一个单点故障也可以破坏服务器的运行。
定义一个新的方法
软件定义的可用性。通过这种方法,将故障的预防和恢复决策转移到应用层之外的基础软件层。而不同于传统的基于硬件的可用性解决方案,其正常运行时间不是依赖于一组特定的硬化服务器。实际上,可用性是从应用程序和硬件中抽象出来的。
这种抽象使企业可以做一些能够真正克服非计划停机风险的措施。首先,他们可以将所有的系统链接在一起,包括通过物理网络连接或使用软件定义的网络连接来动态创建高可用的系统,进而实时创建拥有高可用性冗余或容错保护水平的配对系统。
通过抽象的可用性,企业,包括业务主管线和IT部门均可以作为云服务的经纪管理,可以基于其当前应用程序的需求改变的可用性水平。在某些时候,这对于那些执行关键任务的应用程序是非常有用的,但并非所有的时间都有用。例如,在考虑这种抽象的可用性对于一个财务团队如何有用时,我们可以安排某个财务结算即将结束的最后几天在财务应用程序的关键任务中动态地提升可用性水平,但同时我们也可以在其他时间将可用性水平调低。试想一下,施加必要的容错性资源,以确保在关键时刻的可用性,同时在其他剩下的时间释放这些资源。这大大降低了成本,复杂性和风险,而同时又不影响可用性。
简单地说,软件定义的可用性为企业的业务部门提供了控制权和灵活性,使他们能够根据业务组定义的政策基于每个工作在恰当的时间提供恰当的可用性水平。这是游戏规则的改变,不再是过去的基于聚类分析能力只提供“足够好”级别的“软件可用性”。这种新的方法进一步发展,我们可以想象IT部门可以为企业提供服务目录的可能性。实际上,通过提供基于策略引擎的所有从应用程序抽象出的可能性,IT部门可以管理整个云环境的整体可用性,这将是对企业解锁创新的一个显著破坏。
利用云计算的灵活性
现有应用程序的这种智能,动态软件定义的可用性是因为企业可以充分利用云计算所提供的弹性和统筹能力。其也帮助他们利用云中开源软件固有的灵活性,如OpenStack。
利用这一政策引擎单独定义的应用程序的可用性参数,IT部门可以映射特定要求的可用性要求,如SLA。IT部门也可以指定单独的应用程序,如信用卡处理应用程序必须在一个PCI环境不停机的属性条件下运行。策略引擎动态管理的工作负载,这样,应用程序可以在他们需要时获得其所需要的可用资源。
这种方法的软件定义的可用性在开发新的云应用程序时也提供了重要的优势。首先,它极大地简化了开发的前期工作,大大缩短了新的或更新的应用程序、内容和功能上市的时间。与此同时,同样重要的是,其能够根据企业需求的变化为迅速改变可用性要求提供了灵活性。IT部门可以简单的修改政策,简单且富成本效益!
这种新的软件定义的可用性的方法也有助于降低复杂性,省去了防火墙关键任务应用程序。不需要IT部门在多个环境根据不同的可用性要求建立和维护环境造成混乱。利用软件定义的可用性,IT部门在一个环境下,就可以根据具体应用程序需要调整可用性。
缩小可用性差距
因此,重新定义的可用性在企业构建自己的私有云或混合云方面具有明显的优势。企业可以利用这种方法来填补许多公共云服务提供商在可用性保证方面的空白。另一方面,软件定义的可用性也可能被证明是对公共云提供商寻求满足其客户对关键任务的可用性需求的可行解决方案。这真的可能是游戏的改变,有助于使公共云准备好一线业务应用程序的“黄金时间”。
尽管存在大量的炒作,云计算毕竟仍处于初期阶段。但是,它已经改变了一切,从应用程序如何编写,到其部署和管理。传统方法的可用性在云环境中没有意义。软件定义的可用性代表了下一代的方法:使用云计算的固有弹性,在特定的时间和特定的情况下满足个性化应用程序的独特可用性要求。
在现如今的世界,可用性比以往任何时候都更加重要。而软件定义的可用性将帮助我们应对云时代这一挑战。