开放协作客户机解决方案,技术规划(2)

来源:developerWorks 中国 作者:Jutta Kreyss
  

低层标准化

除了用户界面和应用程序集的标准化之外,还可以考虑对其他方面进行标准化,比如磁盘布局、分区和使用的文件系统。

考虑 ext2、ext3、ext4 和 reiserfs 等文件系统是很重要的,因为它们在以下方面具有不同的性质:

  • 日志特性
  • 支持的最大分区大小
  • 支持的最大文件大小
  • 性能和可伸缩性
  • 恢复选项

还有一些特殊的文件系统,比如 crypts 可以对整个分区进行加密,适合存储机密数据或个人数据。

硬件级标准化

还应该在硬件级进行标准化(这独立于迁移本身),从而尽可能减少所需的硬件支持。例如,在迁移之后,IT 团队可能只支持两个桌面 PC 机型和四个笔记本机型。

执行硬件标准化的另一种方法是对特殊类型的客户机系统上的某些用户组进行标准化,比如:

  • 瘦客户机。这种客户机是一直连网的微型 PC,只包含基本的操作系统和很少几个显示组件,比如浏览器或终端服务器客户机应用程序。不在本地运行任何业务应用程序。微型 PC 常常集成在显示器内。
  • 富客户机。这种客户机至少会定期连网,其中在本地安装了不需要永久网络连接的应用程序,但是为了进行同步和更新它们有时候要连接服务器组件。IBM Lotus® Notes® 和 IBM Lotus Expeditor 就是这种客户机。
  • 胖客户机。这种客户机能够长期离线,所有应用程序都安装在本地。常常能够通过网络之外的其他方式获取数据和执行更新。

图 2 以图形方式对比不同客户机类型的特性。


图 2. 瘦、富和胖客户机的对比
瘦、富和胖客户机的对比

所有标准化都会影响目标基础结构的部署和可管理性。因此,在技术规划阶段一定要仔细权衡所有选项,做出明智的决策。





客户机管理规划

客户机管理成本是一个非常重要的因素。下面概述高效地管理 Linux 客户机的方法,主要关注在初始部署之后集成更多客户机、更新客户机的操作系统和应用程序、远程管理以及备份。还提供一些管理企业 Linux 发行版的示例。

在网络中添加和替换客户机

要想在初始部署之后成功地添加新的 Linux 客户机,或把现有的客户机迁移到 Linux 上,就需要有最新的部署映像。在替换客户机时,必须考虑以下方面:

  • 主机名。如果新客户机使用新的主机名,就必须在后端系统中删除以前的主机名。如果新客户机使用老系统的主机名,就要判断是否可能导致问题,比如在资产管理方面。
  • 配置信息。必须把配置文件从老客户机转移到新客户机上。
  • 业务个人数据。必须把业务个人数据迁移到新客户机上。

操作系统更新

生产环境中客户机的操作系统必须符合安全标准,因此必须包含最新的更新和安全补丁。总的来说,有三种更新客户机的方法:

  • 完全自动化。自动处理所有与操作系统相关的更新。这种更新策略的优点是,所有客户机总是最新的,不需要用户交互。强制应用所有更新的缺点是,对于网络带宽有限的移动用户,可能影响用户体验。
  • 半自动。只强制应用重要的操作系统更新。对于所有其他更新,通知用户,用户可以手工触发更新。这种更新策略的优点是,用户可以选择是否应用不重要的更新,从而降低网络负载,同时系统总是会应用重要的补丁。缺点是客户机应用的更新级别不一致。
  • 由用户触发。用户接收所有更新的通知,由用户决定是否应用更新。这种策略会导致客户机的更新级别非常不一致,而且因为 Linux 发行版由许多相互独立的组件组成,所以会导致各种各样的更新级别组合。

更新策略的另一个因素是客户机更新服务器的所有者。一般可以选用两种方法:

  • 由发行者拥有。发行版所有者或社区管理更新服务器。这些更新服务器提供不同的发行版,可以把服务器的维护外包,包括当前的软件状态、更新和补丁。因为在您的企业之外实现发行版补丁和更新,应该确保服务器的所有者是可信的组织。
  • 由您的企业拥有。您的企业拥有并维护更新服务器。您完全控制服务器的状态,所以能够先测试更新,然后再把它们放在更新服务器上,还可以断开服务器与 Internet 的连接。当然,完全控制也意味着要承担运行更新服务器的成本和责任。

大多数发行版都提供帮助更新客户机的工具。例如用于企业发行版的 Novell ZENworks Linux Management 和 YaST。对于 Red Hat,可以使用 Red Hat Network's satellite architecture 和 kickstart。

另外,还可以使用开放源码工具,比如用于 Debian 的 apt (Advanced Packaging Tool) 和用于基于 RPM Package Manager 的发行版的 yum (Yellow dog updater, modified)。

应用程序更新

可以作为操作系统的组成部分处理应用程序更新,也可以单独处理。如果把它们包含在操作系统中,可以应用前一段中讨论的考虑因素。如果单独处理,可以选用以下方法之一:

  • 基于脚本的更新。脚本可以从不同的网络服务器下载更新。实际上,有专用的应用程序提供更新脚本。
  • 基于包的更新。如果更新组合为包,就可以通过 apt 或 yum 处理它们。
  • 完整客户机交换。如果更新接近客户机的大小,那么交换完整的客户机可能更合适。

更新应用程序可能会改变程序调用和菜单结构。这些变化应该尽可能少影响用户的生产力。因此,应该在测试用例集中测试菜单结构的稳定性和桌面链接的有效性。

实验性迁移常常先比较基于 Linux 的客户机和现有客户机的功能。功能性检查之后,可以紧接着进行易用性检查。因为只有少量客户机参与实验性迁移,所以很容易进行手工更新。尽管如此,仍然建议在实验性迁移中包含更新策略,以便测试选择的更新策略。

远程管理

有两种远程管理方法:

  • 前瞻式。监视客户机,在问题产生损害之前发现问题。例如,对客户机状态的监视可以主要关注剩余磁盘空间、安全状态或资产管理方面的许可证问题。有许多种监视产品,包括 Nagios 等开放源码产品和 IBM Tivoli® Monitoring 等企业级工具。
  • 反应式。当发生系统或应用程序故障时管理客户机。Linux 发行版提供用于远程管理的多种工具。标准的远程管理机制是 ssh,与 rsh、rlogin 或 Telnet 不同,ssh 保证可靠的身份验证。通过使用 ssh,管理员可以轻松地运行脚本来分析客户机并应用补丁,还可以收集安全性、健康状态或资产管理检查所需的数据。还可以使用 VNC 和 FreeNX。

当然,可以结合使用这些方法。例如,为了进行适当的许可证管理,可以使用前瞻式方法监视安装的应用程序。可以使用反应式方法管理各种客户机问题,比如对主目录结构的意外用户操作。

备份

瘦客户机不提供对本地设备的写访问,例如它们可能只提供 Web 应用程序,所以不需要备份。但是,富客户机和胖客户机有不同的备份需求:如果保存业务个人数据的存储设备是从集中管理的数据存储挂载到客户机上的,那么只需要更新配置文件和缓存。如果业务个人数据存储在本地,就必须在备份中包含用户的可写目录。还可以考虑包含桌面配置文件。

可以选用许多工具来实现备份战略,包括开放源码工具(比如用于备份和恢复完整分区的 Partimage)和商业解决方案(比如 IBM Tivoli Storage Manager)。建议在实验性迁移中包含备份战略的实现。





部署新的客户机

在规划从给定的客户机系统到 Linux 客户机的实验性迁移时,目标是证明选用的迁移方法能够高效地管理客户机在企业中的部署。对于客户机本身的部署,必须完成以下任务:

  • 选择部署方法
  • 决定如何更新客户机和更新的频率
  • 对客户机进行个性化定制

部署方法

有两种部署方法:

  • 基于分区或磁盘映像的部署。可以使用现有的企业部署工具或 Partimage 等开放源码工具部署这些映像。基于映像的部署方法的优点是,可以非常简便地包含所有定制风格。缺点是所有定制必须在部署映像之后实现,例如通过执行特殊的脚本实现不同用户组所需的定制。
  • 使用发行版提供的工具执行基于包的部署。一些发行版提供了执行自动化无人值守安装的机制。Red Hat 使用 kickstart,这种机制使用应答文件控制 anaconda(Red Hat 安装程序)。Novell 提供 autoyast,这种机制可以根据配置文件自动应答基于 YaST 的安装过程。这两个工具都使用 RPM 包。

    这种方法的优点是,所有额外软件和配置都包含在 RPM 中。缺点是必须花时间构建包并解决软件依赖性。

更新客户机

两种不同的客户机部署方法导致不同的更新方法:

  • 更新基于映像部署的客户机。如果选择基于映像的更新过程,就必须确保及时更新映像和客户机。如果客户机的所有软件都打包为 RPM,那么可以使用发行版提供的方法更新客户机。如果不是,就必须编写脚本并管理更新在客户机上的安装,从而满足应用程序特有的更新需求。
  • 更新基于 RPM 的客户机。对于通过基于安装的部署方法(因此基于 RPM 打包软件)部署的客户机,可以使用发行版提供的更新机制。

对部署的客户机进行个性化定制

必须根据个人需要调整各种信息,比如:

  • 必须分配主机名(如果不是动态分配的话)。
  • 必须分配 IP 地址(如果不是动态分配的话)。
  • 必须挂载特定的远程文件系统。
  • 必须配置特定的打印机。
  • 必须配置特定的应用程序。
  • 必须迁移业务个人数据。

个性化过程在安装之后进行。每个安装后过程都要求访问所需的数据。可以通过首次引导过程使用这些数据,也可以通过在用户首次调用应用程序时触发的脚本使用它们。首次引导只运行一次并把它的结果写到文件中,从而避免第二次启动。这个过程的优点是它在第一次登录之前执行,可以在此期间创建账户。

另一种方法是执行针对特殊应用程序的脚本,从而定制桌面。这种方法需要登录。

如果对支持从 Microsoft Windows 自动迁移到 Linux 的其他工具感兴趣,可以研究一下 Versora Progression Desktop。





结束语

本文介绍了在企业中引入 Linux 客户机和规划实验性迁移时涉及的最重要的技术问题。我们介绍了许多规划选项,并讨论了它们的优缺点。(责任编辑:A6)


时间:2009-07-10 16:48 来源:developerWorks 中国 作者:Jutta Kreyss 原文链接

好文,顶一下
(2)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量