Top
首页 > IT产品和服务 > 软件服务 > 软件要闻 > 正文

云巅iConn云桌面开箱即享的高可用

实现一个虚拟桌面基础架构对于系统管理员和最终使用者而言都能够带来好处,可是一旦发生数据访问、应用或者服务的中断,这些好处就会受到损害。因此建立并保持高可用性是非常重要的。
发布时间:2015-06-26 11:00        来源:赛迪网        作者:赛迪网

背景

实现一个虚拟桌面基础架构对于系统管理员和最终使用者而言都能够带来好处,可是一旦发生数据访问、应用或者服务的中断,这些好处就会受到损害。因此建立并保持高可用性是非常重要的。

很少有系统管理员会不同意高可用性是一个必备属性的说法。但是更难回答的问题是:基于什么样的成本,同时考虑到金钱和时间?冗余可能意味着额外备份的硬件、存储和网络的高昂成本。同样,这会极大地增加系统管理的复杂度,来自于配置调优和实现额外协议和流程所增加的种种需求。

由于交付高可用性所产生的潜在成本和复杂度,许多系统管理员或者选择仅在他们最重要的系统中有限制地投资高可用解决方案,或者完全放弃高可用性。这样的决策,当然会让虚拟桌面环境系统宕机时变得更加脆弱。

最理想的情况是让高可用性成为虚拟桌面环境的内在不可分割的功能,而不是一个花费巨大的附加选项。这种“如果可以”的情况恰恰是今天云巅iConn服务器已经完全可以做到的。

一个崭新的实现

云巅着手解决虚拟桌面环境中确保高可用性所面临的两个最显著的障碍- 成本和复杂度。云巅实现高可用性的途径就是使它变得简单、自动、持续运行,并成为服务器的一部分。

开箱即享的高可用

云巅的实现方法建立在任何高可用方案的基础和最广泛使用的元素之上 - 冗余的电源、磁盘和网络端口。同时,虚拟机会自动地进行备份,用于恢复和归档的目的。

云巅的解决方案与其他实现方式完全不同的,在于错误切换过程的系统级管理。它表现在四个主要的方面:

1. 整个过程完全基于软件实现。

2. 绝大多数的步骤是自动完成。

3. 持续复制关键数据。

4. 所有元素设计强调简洁性。

5. 结果是虚拟桌面环境可以在非常低的成本下交付高可用性,同时显著地减少对系统管理员参与的要求。

6. 实现简洁性的一个关键是iConn服务器自身的架构。特别是架构中两个重要的理念:“一体化”设计,和云巅称作“单一端口/单一协议”。

一体化:每一个iConn服务器都可以交付完整的虚拟桌面体验。一个节点可以执行所有的功能。

单一端口/单一协议:部署虚拟桌面环境的一个巨大挑战是管理网络端口、协议、客户端与服务器以及服务器之间通信的连接。无论从初始化还是持续进行而言,都是一个复杂的任务。在以往的虚拟桌面实现方式中,一个客户端为了能够连接到一台服务器,它可能要接触多达四个其他的机器和协议后才能接触到它所需的资源和服务。这就意味着非常复杂的系统配置,也增加了潜在的故障失效点。

为了彻底地消除这种复杂性,云巅复用了所有使用到的协议,这样客户端不再需要配置特殊的端口。每一个客户端提供一个报头说明它正在使用何种协议。云巅的协议复用功能会将客户端路由到最合适的服务器上。整个流程遵循HTTP规范,这样任何带有浏览器的客户端都能使用系统。

单一端口/单一协议实现方式的另外一个优势,在于加入远程访问用户的过程。在大多数的情形下,允许远程用户访问一个系统会产生复杂的配置要求。借助云巅,一个管理员仅仅需要在防火墙中添加一条规则,就能够向远程用户交付完整的虚拟桌面功能体验,如同本地用户一样。

有了单一端口/单一协议,无论客户端希望什么样的功能,系统会始终路由它到合适的服务器上,甚至当网络配置并不是百分之一百的正确时。这意味着当一个故障发生时,一个客户的虚拟机可能会被引导到整个集群中的任何一台服务器上,然后它会被自动地连接到拥有它需要资源的正确服务器上。不需要提前完成任何特别的配置来确保它发生。这已经被写入到每一台iConn服务器的软件之中。

一体化和单一端口/单一协议也意味着,当一个故障切换发生时,每一个以及所有的节点都可以完成一个控制操作,并且没有配置专门的服务器针对那样的任务。这种对等(peer-based)的方式是云巅解决方案降低成本和高可用性复杂度的途径之一。

实现方式

让我们看看云巅的虚拟桌面方案如何交付不中断服务,当面临模块、节点或者系统故障时。

首先说明的是,云巅的实现方式是对等式的、软件定义的和高度自动的。从存在的程度上看,iConn服务器是开箱即用、预置的高可用性。

云巅高可用解决方案的简洁和高效早在麻烦发生之前就已经生效了。因为云巅自动识别和配置所有准备加入集群的节点服务器。

任何节点可以在故障时被委任为领导者,领导者的可能备选者的数量和集群中的服务器数量一样多。这也反映了云巅的理念:一个高可用解决方案不能只是一堆冗余的硬件,高可用性必须内嵌到整个系统的控制模块之中。

一些高可用的实现方式需要复杂、多步骤的流程来配置提供冗余的节点,包括数据库复制、网络连接、域名以及设置心跳(heartbeat)。云巅彻底消除了这个过程,因为所有的节点都能够处理所有的功能。

使得这个简单、对等式的方法工作的关键是使用一个“选举”系统来决定当故障时谁是领导者。通过这个选举流程(如下描述),一个节点会被选择成为领导者。它会负责协调和提供最高层次的控制功能,和任意访问一个目录服务包含用户名、密码、机器配置、以及其他用来连接用户和所需资源的信息。

领导者自动选择候选节点来充当故障发生时的活跃后备服务器。这些候选节点自动和持续地复制所有基本状态来防止数据丢失。候选者也持续地监控领导者的健康状态,如果领导者被至少有两名候选者检测为不健康,他们之间对等的选举就会发生来选择一个新的领导者。

与政治选举非常相似,候选者需要声明他们渴望成为管理者,同时当主要的选票倾向与一个候选者时,那个节点就会成为新的领导者。因为所有的候选节点都已经持续不停地复制系统数据,发现故障到恢复所需要的时间可以最少为5秒钟—非常短暂的时间。

这个短暂的故障切换时间成为可能,因为候选节点持续不断地更新所有控制系统所必需的信息,诸如登录门户,用户账号数据库,和提供给

用户的服务索引。正因为这些信息也一直保存在候选备份服务器中,当故障时发生的唯一变化就是重新配置新的领导者。

为了实现对等选举的流程,云巅使用Raft共识算法,一种在交付高可用时广泛使用方式,特别是帮助多台服务器达成一个决定。

使用这种方式来选择领导者的好处是两方面的。首先,整个流程是自动完成的。不要人工干预来识别一个故障和采取行动补救它。其次,整个流程是完全通过软件完成的。(一些系统使用硬件模块来完成在线的心跳检测,不但增加了成本,也需要特定配置的服务器。)

基于Raft的对等方式是非常必要的,可以确保补救不是任意发生的,但是故障经常会是这样。举例来说,当一个节点失去了与领导者的联系,但并不是因为领导者本身有任何问题,可能仅仅只是某一个时刻丢失了通讯。在这种情况下,一个节点失去与领导者的联系不能触发改变领导权。只有当两个或者更多节点同时同意领导者不再作为时,才会发生一个新领导者的选举。

在云巅基于对等共识的实现方式中,故障的识别和补救是自动和灵活地在服务器集群中发生的,并且不是固定在特定的参与者中。相反,许多高可用的实现方式会配置一对服务器来交付控制功能,而其他服务器处理其他任务。这就意味着如果一旦两个控制服务器中的一个发生

问题后,那么只有一个备份在那个时刻可以来补救这个问题。而云巅的实现方式,如果领导者发生了问题,一个新的会自动和迅速被选出,确保任何时候可以实现冗余。事实上,一个系统可以在集群中服务器都出现故障时仍然保持高可用性,直到最后两台服务器。

在虚拟机的层面,云巅提供了另外一个实现方式来节省投入和简化流程来保证高可用性。它关心虚拟机是如何备份的。大多数的系统使用存储区域网络(SAN)来持续备份虚机。但是存储区域网络是非常特殊的、昂贵的设备,会增加管理的负担。相反,云巅使用软件在两个节点间持续复制一个虚拟机的状态。如果一个节点发生故障,不需要存储区域网络就能获得一个备份。这改善了线型扩展能力的同时也降低了整体实施成本。

这是另外一个例子,云巅如何使用软件定义并取代许多复杂和昂贵的硬件组件,他们也被其他的实现方式用来提供虚拟桌面环境的高可用性。

结论

通过强化简洁性,成本控制、流程运行自动化和持续性,云巅消除了在虚拟桌面环境中确保高可用性的传统壁垒。云巅iConn服务器已经配置为可以开箱即可提供高可用性,并且没有给系统管理员带来任何额外的要求,无论是时间上还是金钱上。

合作站点
stat