[海南晟启云计算科技有限公司] 由于www.sqld.net.cn到期导致站点无法访问...
民生银行:桌面云自动化交付实践-行业动态-新闻资讯-海南晟启云计算科技有限公司
设为首页 | 加入收藏
网站首页 新闻资讯 云商城 业务领域 解决方案 成功案例 支持与服务 招贤纳士 关于晟启 咨询热线:
400 600 3190
公司资讯 行业动态
民生银行:桌面云自动化交付实践
2019-04-16 15:06:51
 


1、前言

本文从民生桌面云面临的问题和挑战出发,详细阐述了桌面自动化交付能力的建设实践,通过结合流程系统的优化,实现资源交付时间由数日缩短至数分钟的过程。并进一步探究了如何实现对云桌面的系统化管理,与行内各外沿系统的对接和信息联动,达到综合提升管理效能,降低管理成本的目的。

此外,本文还将分享我们在自动化实践部分的相关示例代码以及遇到并解决的各类问题,包括如何提升自动化实施的性能、支持桌面网络VLAN的动态切换、支持桌面规格的自适应调整等。


2、背景

桌面云在民生银行有着广泛的应用,民生银行的桌面云提供两种模式服务,基于PaaS模式、具备完整操作系统的个人桌面环境和基于SaaS模式、按需供给应用程序的应用交付环境。个人桌面环境分为开发桌面云和生产桌面云,前者为全行提供便捷、安全的开发桌面环境(即虚拟桌面),满足科技人员应用开发、测试、培训等需求;后者为日常业务处理、数据挖掘提供安全可控的用户操作环境。应用交付环境分为测试应用交付环境和生产应用交付环境,由于大部分测试、培训、业务处理场景只需使用少量应用程序,且不要求完整的操作系统权限,使用应用交付模式可大幅降低桌面云的资源开销,适用于轻量级使用场景。

民生银行桌面云起步早,其个人桌面环境部分已经较为成熟,并在长期维护、优化过程中积累了一定经验,本文将就桌面云的自动化交付实践进行介绍,主要关注点在个人桌面环境部分。本文将从以下几个维度展开:


3、桌面云的技术架构

民生桌面云的技术架构将从功能组件、部署架构、以及桌面供给方式几个部分给予介绍。

3.1 功能组件

民生银行目前选用思杰XenApp and XenDesktop作为桌面云产品,使用XenApp and XenDesktop 7.15 LSTR版本作为桌面虚拟化软件,桌面云底层虚拟化为XenServer和集中式存储,个人桌面环境的功能组件包括如下几个部分:

1. Citrix XenDesktop管理组件集合: 包括DDC(Desktop Delivery Controller)、VDA、StoreFront、许可证服务器、数据库服务器、Citrix Studio、Citrix Director等。具体各组件功能介绍可参考思杰XenApp and XenDesktop产品文档。

各管理组件如图一所示,其中最为关键的是Delivery Controller和StoreFront组件,前者是桌面中心管理组件,负责管理用户访问、代理连接以及提供创建桌面的 Machine Creation Services服务。后者可被认为是一个Web站点,提供可对桌面用户进行身份验证,并可管理用户访问的桌面和应用程序的存储。NetScaler为可选组件,在需要进行安全强化的环境使用,例如在生产环境实现更为严格的安全控制。

图1:思杰XenDesktop主要组件(引用自思杰官网产品文档)

2. 桌面认证组件:Windows Active Directory服务器,桌面用户从AD服务器进行认证。

3. 镜像激活服务器:KMS服务器,提供对Windows桌面操作系统激活服务。

4. 操作系统补丁服务器:WSUS(Windows Server Update Services)服务器。Windows 桌面通过WSUS服务器来得到补丁更新。

5. 防病毒控制服务器:提供对病毒库管理及扫描策略的管理等。

6. 文件服务器:存放用户常用的软件介质。

3.2 部署架构

桌面功能组件的部署架构如图2所示,其中重要管理组件均为高可用部署。其中StoreFront(1-3)同时配置绑定至Windows负载均衡VIP,DDC(1-3)同时均衡负载全部桌面连接会话,AD(1-2) 采用Windows AD高可用配置,SQL Server(1-3)采用Microsoft SQLServer高可用配置等。

 

图2:桌面管理组件部署结构

3.3 物理及网络架构

桌面云的物理集群及网络架构如下图所示:

 

图3:桌面资源池物理及网络架构

3.4 桌面供给方式

思杰Xendesktop桌面支持随机非永久性桌面、静态非永久性桌面以及静态永久性桌面三种桌面。所谓非永久性桌面,是指桌面计算机重新启动,对桌面所做的更改将全部丢失。所谓静态桌面,是指用户首次登录使用其中一个桌面时,用户的后续登录会连接到首次使用时分配的相同桌面。而随机桌面,是指每次用户登录连接时均随机从桌面池中动态选择桌面。

因为开发桌面主要是给科技人员使用,需要有较强的个性化软件安装需求,且分配后即为专属,故使用的桌面类型为静态永久性桌面桌面(具有个人虚拟磁盘的VDI)。专属桌面可以认为是一台专有分配给指定用户的虚拟机。故在使用XenDesktop+XenServer底层时,使用MCS方式来置备桌面。在XenDesktop 7.15中,已经支持两种的MCS磁盘置备方式,链式克隆(LinkedClone)以及全量克隆(FullClone),为满足专有桌面最大的故障独立性,目前我们采用的是全量克隆的方式置备的桌面虚拟机。


4、面临的问题与挑战

通过云技术管理中心、安全规划中心、生产调度中心、项目管理中心等多方的深入沟通讨论,以及对桌面运维人员日常工作痛点剖析,将开发桌面环境面临的问题总结为如下几个部分:

1. 桌面全周期管理均为运维人员通管理控制台手工操作(桌面的创建、回收、变更等),运维工作重复性高,效率不高。举例来说,一个完整的人工创建桌面的过程如图4所示,需要完成十个步骤,操作时间较长,多步骤、重复性操作也容易出现失误。

 

图4:人工创建桌面过程详解

2. 开发桌面需求量大,开发项目具有周期性、阶段性、突发性等特点,使用、回收较为频繁。开发桌面新建及变更的需求较多,因资源交付的周期较长,对开发项目的进度造成影响;尤其当某些业务系统需要大批量桌面做系统上线测试时,交付周期紧,维护人员任务繁重。

3. 现有开发桌面的申请工单未能覆盖全生命周期管理的各种不同需求(只有桌面创建申请),故其他服务类请求均通过邮件、电话驱动,无法进行有效管理;且工单流程设计略为复杂,审批、实施环节串行且步骤较多。

4. 桌面资源的生命周期管理主要通过人工跟踪、没有系统工具支持,桌面账号采用独立的命名方式,未与身份管理系统对接。例如人员离场后,其身份状态未能及时修订,无法触发桌面回收操作,导致项目组其他人员可使用离场人员的桌面等情况。

5. 缺乏检测闲置桌面的有效方法,导致资源占用率高、使用率低。

6. 桌面云与传统个人设备的使用方式存在差异,需要为新用户提供支持服务,原有支持模式以电话沟通为主,维护人员的支持任务繁重,需丰富支持方式,尤其是提高用户的自服务能力。

针对上述问题的解决方案包括:


5、实施方案及路径

桌面自动化的实施路径如图5所示,分为如下五个步骤:

 

图5: 自动化交付实施路径

5.1 自动化脚本实现资源交付

桌面资源的自动化交付实现,既需要从桌面软件产品的SDK入手,掌握其用法,亦需要跳出这个范围,从虚拟化软件及周边系统管理组件出发,调用相关的接口配合实现统一处理过程的自动化。

1. 首先要深入了解Citrix XenDesktop的SDK,实现对Citrix重要组件的功能对接操作。其中Citrix桌面自动化实现主要用到的后台服务为如下四个部分,每个部分都有相应Windows PowerShell 模块,全部的Citrix PowerShell SDK 可以参阅思杰开发中心。。需要注意的是,运行Citrix PowerShell的机器可以不是Citrix Delivery Controller, 但运行的帐户需要是Citrix域管理员帐户。

图6介绍了桌面自动化脚本创建的详细过程,其中包括了AD用户的检查与创建、计算机目录配置的获取、AD计算机的创建、以及调用MCS服务创建虚拟机以及分配桌面至用户的全过程。

 

图6:桌面自动化创建过程详解

部分示例代码如下:

 

2. 掌握XenServer API相关接口。因通过XenDesktop SDK只能支持标准模板的方式做镜像的克隆以及虚拟机的创建。无法实现对自定义桌面虚拟机规格的创建。需要通过在Citrix管理控制台创建虚拟机后,再通过调用XenServer的API,以实现对标准虚拟机规格的自调整。相关的部分示例代码如下:

 

3. 掌握Windows 相关模块的SDK, 例如若对用户的帐号及密码做管理,就需要和AD的SDK做对接,相关的示例代码如下:

 

5.2 实现资源的统一纳管

为实现云桌面桌面的统一纳管,需要完成两个步骤:

1. 在管理平面(云管平台)中建立Citrix数据模型。数据模型包括如下几类:

2. 通过调用Citrix SDK实现对桌面及其用户数据的发现并更新同步至云管平台。这里面涉及到两种类型的数据更新:

5.3 桌面标准化定义及流程优化

1. 桌面标准化,是指桌面的规格标准化,CPU是几核,内存是几G,磁盘是多少G等。从历史的桌面供给情况来看,由于桌面的规格没有标准化,用户在工单中,以文字描述的方式,说明桌面的配置要求,由人工识别再行实施。在人工实施过程中,除了在桌面管理控制台(Citrix Studio)创建桌面,还需要操作Windows AD做帐号的创建,以及登录XenCenter控制台做虚拟机规格的更新,并进入桌面操作系统内完成对文件系统的扩容。规格标准化,是指的是在行内统一流程系统中定义桌面的标准化规格,其是桌面自动化实施的前提,在开发环境,我们定义了标准开发、标准测试以及自定义类型桌面(支持表单选择自定义规格)。便于工单系统后续与桌面管理平台做集成。

2. 流程优化,是指在行内流程管理系统中,针对桌面的部分需求,对用户开放自服务的能力,例如对桌面的帐户密码重设,用户通过工单即可实现自服务,无须审批,密码重设自动化实施完毕后,即发送至用户邮箱。对于新用户的标准化桌面的新建需求,可以配置为无需审批,直接自动化实施并通知。对于已有多个桌面的用户的新桌面申请,或是项目组大批量的桌面申请,需要经过审批组审批后,再行自动化实施。通过流程的优化,既减少了审批者的工作量,也提升了用户的体验。

3. 多维通知的定义,是指在桌面的交付过程中,不同的参与方将收到不同的维度的信息通知。例如审批组成员从邮件通知中可以快速得知新工单是否是自动化工单,项目经理代项目成员申请桌面时,经理可以知道桌面的实施状态,以及桌面创建完成后每个桌面的密码等,项目成员也将收到桌面的密码通知。当工单自动化实施故障时,或外沿系统对接异常时,桌面运维组以及外沿系统负责人也将收到通知。当实施故障被后台修复后,用户也将同时收到更新后的桌面信息通知。

5.4 系统对接实现及流程自动化实施

此部分的实施需要考虑如下几个部分:

  1. 接口的规范化定义:桌面管理系统(即云管平台)与流程系统间需事先定义好明确的接口规范以作并行开发。

  2. 异常处理:在云管平台处理遇到故障时,即便首次工单自动化实施失败,云管平台还可以针对故障的工单实施手动修复并更新最新的成功状态给工单系统。

  3. 状态前置:云管平台需要提供相关的数据接口,返回给工单系统,供其在工单审批(自动化实施前)做参考。例如当前用户拥有的桌面的数目。

5.5 外沿系统的多渠道接入

将桌面云与行内各系统作信息联动,主要包括:

  1. 与行内的项目管理系统(PPM)联动:通过与项目管理中心讨论,将人员的入场、离场自动对接至工单系统,生成自动化的桌面创建及回收工单。

  2. 与运维机器人系统联动:通过与运行管理中心讨论,将运维机器人系统对接桌面工单,以实现便捷的桌面创建。后续考虑将运维的操作规范化定义并作系统对接。

5.6 遇到的问题

在自动化的实践过程中,我们遇到并解决了一些实际问题,例如:

1. 如何实现批量桌面部署时性能的优化

当针对同一资源池,有数十个并发的桌面创建请求时,我们发现单个桌面的创建所需要的时间是呈线性增加的。我们分析其瓶颈为新桌面部署过程中的原始镜像同时拷贝至某一个存储LUN所致。我们采用了两种方法解决:

2. 保障失败场景下自动化功能的持续可用性

3. 支持桌面VLAN的动态切换

云桌面在一个资源池中是一个固定的模板,模板中已经绑定了特定的网络,因底层部分物理服务器可承载的桌面数量较高,一些桌面资源池,可承载400-500个桌面,从网络层面来看,要求分配多于一个VLAN的逻辑网络,故需要在原模板的VLAN的IP地址段分配耗尽时,主动检测并动态切换桌面部署过程中的网卡配置。部分示例代码如下:

6、实践的效益及成果

  1. 民生银行云技术管理中心在与安全规划中心、生产调度中心、项目管理中心、运行管理中心的一致努力下,历时不到半年在2018年实现了将云桌面的资源池类需求全部自动化,包括桌面的创建、回收、规格变更、密码重设、归属变更等,通过让用户以自服务的方式实现其桌面需求,将单个桌面的实施周期降为分钟级,提升了资源交付效率,大幅减少了人工工作量。从2018.04月底至2018.12月,累计已自动化实施云桌面工单总数1860个。交付桌面总数2376个,平均交付时间为5至7分钟(重设密码工单为1分钟)。单个桌面申请工单实施效果如图7所示。

  2. 民生桌面云实现了与PPM系统、统一身份认证系统、工单系统、运维机器人平台的集成和信息联动。在人员入场时,PPM自动生成身份信息、ITOMS工单,工单系统驱动云管平台完成桌面自动化发布。在人员离场时,PPM更新身份状态、触发ITOMS桌面回收工单,驱动云管平台回收桌面资源。通过运维微机器人交互的方式也实现了与工单的快速对接及桌面实施。

  3. 民生桌面云通过云管平台统一纳管了所有的开发云桌面,总数超过3000个。实现了桌面的系统化、自动化管理。

 

图7:新建桌面工单示例


7、未来展望

实现桌面环境的自动化交付只是桌面云建设的一个缩影,后续我们还将在桌面云的自动化运维、桌面资源的分析优化等方面作进一步的探索和研究。同时现阶段,民生银行的桌面云是以个人桌面环境模式为主,应用交付环境尚处于试用阶段,而个人桌面对资源的占用远超过应用交付模式,为进一步提高资源投入产出效能,我们将加快应用交付模式的研究、完善应用场景和部署推广。桌面云将在业务移动化、终端与业务系统解耦合等方面提供助力,提高业务部署、推广的效率;同时在统一访问入口、简化访问策略、实现高效精确的权限管理等方面具有很大潜力,是一种提升企业信息安全防控水平的有效措施。

 

本文转载自云技术微信公众号

公司名称:海南晟启云计算科技有限公司
联系电话:0898-68548041/68551390
咨询服务热线:400 600 3190
传真0898-68548041
QQ号码:307752331     电子邮箱:sqldyyp@163.com
公司地址:海南省海口市国贸北路26号金茂大厦18E1室

关于官方微信

在线客服 业务简介 联系我们
海南晟启云计算科技有限公司 @ 2001-2020 版权所有 技术热线:13337622668 琼ICP备18001661号 全程开发设计:海南中立科技:企业邮箱登陆: