Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103547221
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-20 13:08:36

developerWorks
 

刘 恺, 技术支持工程师, IBM科技产品(深圳)有限公司

2008 年 1 月 10 日

本系列文章旨在带领读者探索 AIX 6.1 中的新特性和对 AIX 5L 中已有功能的增强,并了解这些新特性对用户的影响。在本文的上篇中,我们介绍了AIX 6.1在系统基础功能,存储、I/O和文件系统方面的新功能和增强。在本篇中,我们来看看网络,性能,虚拟化和可管理性方面的变化。

AIX 6.1 中对 IPv6 支持做了以下增强:

  • 支持新的 RFC 标准:RFC4007(IPv6 Scoped Address Architecture)和 RFC4443(Internet Control Message Protocol ICMPv6),与标准技术保持一致。
  • 支持校验卸载(Checksum Offload)和大包收发卸载(Largesend Offload/Largereceive Offload),在受支持的以太网卡上可以将 IPv6 数据包的校验、大包收发的重组工作交由网卡芯片硬件来完成,从而降低 CPU 的负担并提高吞吐量。

这些更新使得 AIX 6 对 IPv6 的支持更加完善,性能更优,能更好的应用于 IPv6 网络。

IGMP v3(Internet Group Management Protocol v3)协议对原有的 v1 和 v2 版本的协议进行了增强,可以针对来源地址对数据包进行过滤。IBM 在 AIX 5L 中实现了 IGMP v1 和 v2,在 AIX 6.1 中新增加了对 v3 协议的支持。

IBM 在 AIX 6.1 中对 NFS 做了如下增强:

  • EIM(Enterprise Identity Mapping)支持多服务器冗余保护,可以在主 EIM 服务器出现故障时切换到使用辅 EIM 服务器。EIM 服务是在 AIX 中用于 NFS 服务器和客户端之间的用户帐号(ID)信息转换映射的数据库。在 AIX 6.1 中,使用 chnfsim 命令或者对应的 SMIT 菜单配置 EIM 服务器信息时,可以指定一个主服务器和最多 11 个辅助服务器,当主服务出现故障时,辅助服务器可以保证 ID 映射服务不发生中断,从而不影响 NFS 服务的正常运行。
  • NFS 代理服务现在在安全性、协议包容性和性能上都得到了增强。NFS 代理位于 NFS 客户端和真正的 NFS 服务器之间,它能缓存和复制 NFS 服务器上的数据,从而使得客户端能更快的访问数据,并且减少到 NFS 服务器的网络流量。在 AIX 6.1 中,NFS 代理在以下方面得到增强:
    • 客户端和代理之间、代理和服务器之间都支持 RPCSEC_GSS Kerberos 方式的安全认证。这需要安装 Expansion Pack 光盘上的 krb5 和 clic 软件包。
    • 客户端可以使用 NFS v3 协议访问 NFS 代理,而不论 NFS 代理和 NFS 服务器之间使用的是 v3 还是 v4 协议。这使得更多旧的客户端可以利用 AIX NFS 代理。
    • NFS 代理下层所使用的 CacheFS 得到了增强,性能,可缓存的最大文件数、最大文件大小和总 Cache 大小都得到了提高。

以上的增强使得 AIX 在大型企业级的 NFS 文件服务中的性能,安全性和健壮性都有了较大的提高。

AIX 6.1 开始,FTP 服务支持 TLS(Transport Layer Security)协议,可以对 FTP 的数据和命令通道进行传输加密。要使用此功能需要安装 Expansion Pack 光盘上的 openssl 软件包并配置 /etc/ftpd.conf 文件。具体的配置信息请使用 man ftpd 命令查看手册。

通过 TLS 加密方式使用 FTP 使得用户认证信息不再以明文方式在网络上传输,因此能大大提高 FTP 服务的安全性,但是由于数据加密需要消耗处理器资源,因此和会对性能造成影响。在需要大吞吐量的 FTP 服务时,要仔细评估加密所带来的影响。

注意:AIX 默认开启有 telnet 服务。由于 telnet 服务也采用明文方式传输用户帐号和密码信息。因此如果需要保证远程访问的安全性,仅仅将 FTP 服务使用 SSL 保护是不够的。建议将 telnet 服务关闭,使用 ssh 方式提供远程登录服务。AIX 在 Expansion Pack 光盘上提供了 openssh 软件包,提供了 ssh 客户端和服务器端程序,安装后即可使用。

IBM 在 AIX 6.1 中引入了一个称之为 netcd 的系统服务,负责缓存本地应用程序对以下记录的查询请求:

  • 本地文件内的记录:/etc/hosts,/etc/services,/etc/protocol 等
  • DNS 服务器上的记录,如主机名和 IP 地址间的正、反向解析等。
  • NIS 和 NIS+ 服务器上的记录,如用户帐号,hosts,services,protocol,netgroup 等。
  • Yellow page 服务和 AIX ULM(User Loadable Module)上的用户帐号等信息

当应用程序进行查询时,netcd 进程会将查询记录缓存下来并设置一个超时时间(TTL),在这个时间到期前,任何对同一个记录的查询将直接从 netcd 的本地缓存返回,而不需要再次连接服务器进行查询。对于有大量查询请求的应用程序,该项改进可以大大改善查询的性能,毕竟对于每次查询都与服务器建立连接,发送查询并等待返回是一个相当耗时的操作,尤其是在负责解析的服务器比较繁忙或者网络带宽有限的情况下。

与 netcd 服务同时提供的还有 netcdctrl 命令,可以用于查看和刷新 netcd 的缓存状态,或者设置日志级别。

NDAF(Network Data Administration Facility)提供了基于 NFS4 协议的网络文件服务的中心管理和数据复制和同步环境。使用 NDAF,系统管理员可以通过多台 AIX 服务器提供一个单一的 NFS v4 文件服务,并由一个单一控制点在这些服务器上创建和同步数据。NFS 客户端可以使用一个统一的名字空间(也就是 NFS 服务器上输出的路径)来访问数据,即使数据实际上位于不同的服务器上。AIX 5.3 TL5 中引入了该功能,包括在 Expansion Pack 光盘中,而从 AIX 6.1 开始它被集成进了安装 CD 成为基本系统的一部分。







当用户在 AIX 系统上安装应用程序时(尤其是大型的应用软件,如数据库,中间件等)经常会需要按照其要求配置 AIX 系统,如设置 VMM 参数,配置 AIO/CIO 等。IBM 据此对 AIX 6.1 的系统配置和参数做了相应的调整,以提高系统安装后的默认配置下的性能,减少系统管理员需要做的额外工作。

改变了的配置主要包括:

  • vmo 参数中的 minperm%,maxperm%,maxclient%,lru_file_repage 和 page_steal_method 参数调整。paging space 只有在 AVM(活动虚拟内存)大小达到物理内存大小的 97% 以上时才会被使用。同时,系统允许 90% 的内存可以被用来做文件缓存,而在发生页交换时,系统将会优先将文件缓存页换出内存,尽量将应用程序所使用的页面保留在物理内存中。此项改变使得使得 AIX 6.1 对系统物理内存的利用率更高,并且对于有大量内存用来作为文件缓存的应用环境,也不再会出现文件缓存将应用内存“挤出”到 paging space 的情况出现。
  • 磁盘 I/O 速率控制。当系统中有某个进程进行持续的大数据量的磁盘写入时,它将会占用整个系统的 I/O 带宽,使得其他进程的 I/O 请求无法及时得到响应,只能处于等待状态,看起来就好像系统已经几乎失去响应。IBM 在 AIX 5L 中提供了两个参数 minpout 和 maxpout,可以控制 I/O 的上下阀值,将进程的 I/O 队列限制在一个合适的范围内,从而为其他进程留下一定的余地,减少前面提到的情况的出现。但是该设置在 AIX 5L 中默认为关闭。由于现在 POWER 5、POWER 6 处理器的性能非常强劲,数据产生(被处理)的速度经常会大大超过存储系统的带宽,因此必须打开此项设置以保证系统在持续大 I/O 负载下的响应性。IBM 在 AIX 6.1 中已经将此设置打开。具体控制可以通过设置 sys0 设备的 minpout 和 maxpout 属性来配置全局值,也可通过文件系统的 mount 选项来为某个文件系统单独设置。
  • AIO 调整。我们在本文上篇中已经介绍过 AIX 6.1 中的 AIO 子系统的变化。更具体来讲,现在 AIO 子系统无需手动启用,只要有应用程序发起 AIO 请求,就会有对应的内核 AIO 服务程序自动启动处理请求。AIO 服务程序的数量会随需要动态增加(minservers,maxservers 和 maxreqs 等上限值比起 AIX 5L 也有增加),在 AIO 请求处理完毕后,在指定的时间内(aio_server_inactivity 值)如果没有更多的请求,AIO 服务程序会自动结束。所有这些设置现在都由 ioo 命令进行设置,并且动态生效。
  • NFS 调整。nfso 命令支持的 nfs_max_read_size,nfs_max_write_size,nfs_rfc1323 三个参数改变:读写块大小被提高到 64KB,对 RFC 1323(TCP Extensions for High Performance)的支持也默认打开,这些都可以提高 NFS 的网络 I/O 性能。

AIX 6.1 中对系统参数调整命令(vmo,ioo,schedo,no,nfso,raso)做了更新,增加了一类称之为“受限”的参数。此类参数能对更多系统内部行为进行调整,但同时也可能由于不适当的修改导致影响系统稳定性和数据完整性。因此除非有 IBM 开发人员的参与和指导,否则普通用户和系统管理员不应改变这些参数。

受限参数默认在使用 vmo/ioo/schedo/no/nfso/raso 命令查看参数列表时(-a,-L,-x 参数)不会显示,如要查看,必须要同时使用 -F 参数。例如下列 raso 命令的输出结果:

# raso –a -F
 kern_heap_noexec = 0
 kernel_noexec = 1
 mbuf_heap_noexec = 0
 mtrc_commonbufsize = 3799
 mtrc_enabled = 1
 mtrc_rarebufsize = 199
 tprof_cyc_mult = 1
 tprof_evt_mult = 1
 tprof_inst_threshold = 1000
##Restricted tunables
                recovery_action = 1
                recovery_average_threshold = 5
                recovery_debugger = 0
                recovery_framework = 0 
            

其中加粗标出的部分就是“受限参数”。在修改这些参数时,会有警告提示,如要做永久修改,必须要经过确认才会生效,并且在系统启动时会记录一条 errlog。

再次提醒:这些受限参数必须要在 IBM 专业人员的指导和要求下才能进行修改,否则可能造成系统不稳定或者数据丢失,IBM 不为用户自行修改造成的问题负责。建议用户在任何情况下需要修改受限参数时都先做好数据备份。

由于 AIX 6.1 支持新的硬件和提供了新的特性,性能监控的工具也进行了相应的更新以反映新的数据。更新主要包括:

  • topas/vmstat/iostat/netstat/nfsstat/filemon/svmon/netpmon/proctree/trace/curt/tprof/pprof 等命令更新,增加命令选项以支持从全局环境收集某个或所有 WPAR(工作负载分区)的性能状态数据,或者在 WPAR 内运行收集该 WPAR 的数据。
  • iostat 命令支持获取磁带设备的 I/O 状态信息。
  • topas 和 lparstat 命令升级支持获取 POWER 6 新的多个共享处理器池信息。






AIX 6.1 在虚拟化方面的最大变化就是引入了 WPAR。WPAR 是纯软件的虚拟化解决方案,他与 IBM POWER 平台上传统的 LPAR(逻辑分区)方案有着本质上的不同,下表给出了 LPAR 和 WAPR 的简单比较,更多的内容会有专文进行阐述。

LPAR WPAR
实现技术 硬件支持,POWER 处理器加 Hypervisor(微码内置功能) 软件功能,由 AIX 内核实现
管理方法 HMC 或 IVM AIX 系统命令,WPAR Manager
特点 一个服务器,多个物理或虚拟设备,多个 OS 一个 OS,一套物理或虚拟设备,多个应用环境
操作系统 AIX 或者 Linux 仅 AIX 6.1
成本 需要购买 APV 随 AIX 6 附带,无额外费用。
WPAR Manager 需额外许可。

承载 WPAR 的 AIX 系统在 WPAR 的术语中称之为全局环境(Global Environment),它既可以运行在一个物理机器上,也可以是一个 LPAR。WPAR 相比于 LPAR 是更加轻量级的虚拟化解决方案,它与全局 AIX 环境共享处理器,内存,网络和文件系统资源,创建和初始化操作简单快捷。

WPAR 又分为系统 WPAR(System WAPR)和应用 WPAR(Application WPAR)两类。系统 WPAR 是一个完整的 AIX 环境,拥有独立的资源,如独立的 init 进程树提供网络服务,独立的文件系统,用户帐户等。创建系统 WPAR 的过程实际上包括了 AIX 软件包安装的过程。对于用户来讲,访问 WPAR 与其他独立的 AIX 系统差异不大,既可以登录到终端,可以使用 telnet 连接。而应用 WPAR 则是一个更加精简的环境,它只包含应用程序特定的进程和相应的内核支撑环境,它不包含自己独立的资源,只能共享使用全局环境的资源。当应用 WPAR 中包含的应用程序启动时,它也就启动,当应用停止时应用 WPAR 也就被删除了,因此从用户的角度来看它更加接近于传统的 chroot。

WPAR 为用户带来了以下好处:

  • 进一步降低虚拟化成本。
  • 优化系统资源使用率:一个系统中可以有多个 WPAR 运行,在隔离的同时也使得系统的计算资源得以更加充分的利用。
  • 更细粒度的对计算资源进行分配:管理员可以对对 WPAR 的资源(处理器,内存等)占用进行控制,保证应用可以合作性的共享系统资源。
  • 对应用环境的隔离进一步提高了安全性和稳定性:每个 WPAR 都是独立的环境,有自己的安全上下文和用户帐号等,一个 WPAR 内的安全问题不会对其他 WPAR 和全局环境产生影响。
  • 提高应用可用性:管理员可以对某个 WPAR 的状态生成快照(checkpointing)并稍后恢复运行(resuming)。此功能可以提高应用的可用性:当系统故障发生时,暂停应用,移动到另外的平台上恢复运行,同时对故障系统进行维修。

要注意的是,LPAR 和 WPAR 两者之间并不冲突,完全可以互补。

动态应用迁移(Live Application Mobility)是 AIX 6 WPAR 提供的一项高级特性,它允许 WPAR 动态的移动到另外一个系统上,而不影响其中应用的持续运行。该功能的关键特点在于:

  • WPAR 在迁移时处于活动状态,无需停止其中的应用或者整个 WPAR。对于用户来讲,迁移时的影响只是 WPAR 中的应用响应速度有短暂的降低。
  • 迁移可以在逻辑分区和物理机器之间进行,也就是说,WPAR 可以从同一个物理机器上一个逻辑分区迁移到另一个,也可以完全迁移到另外一个物理机器。当然,在不同的物理平台之间迁移时,必须要保证平台硬件的兼容性,例如处理器类型。
  • 需要迁移的 WPAR 其文件系统必须放在 NFS 上,以保证在源和目的全局环境中都能够访问该 WPAR 的数据。迁移过程由 IBM Workload Partition Manager 软件进行控制。

Workload Partition Manager 是 IBM 单独销售的专用于 WPAR 管理的软件平台。它除了为 Live Application Mobility 提供支持外,还可以对 WPAR 进行创建,修改,删除,监控等管理操作,并支持对多台服务器实行集中式图形化管理。如果不使用 WPAR Manger,管理员只能够使用基本的命令行工具或者 SMIT 来管理 WPAR,因此即使不需要 Live Application Mobility 功能,也推荐使用 WPAR Manager 来降低 WPAR 管理的复杂度。

Live Application Mobility 可以被用来进一步提高灵活性和可用性。当平台需要进行升级,或者由于故障需要停机维护时,通过此功能可以将工作负载动态的切换到其他硬件上,在不影响应用的同时即可完成维护任务。

Live Partition Mobility 是 IBM POWER 6 的平台提供的新一代虚拟化高级特性,它使得逻辑分区(LPAR)可以在物理系统之间动态迁移。与 WPAR 的 Live Application Mobility 类似,它也可以帮助提高应用的灵活性和可用性。

Live Partition Mobility 需要 POWER 6 硬件平台的支持,被迁移的 LPAR 内运行的操作系统也必须要支持此特性。IBM 在 AIX 6.1 和 5.3 TL7 中增加了对 Live Partition Mobility 的支持。

多个共享处理器池是 POWER 6 平台引入的虚拟化新特性。在 POWRE 5 平台上,所有的共享处理器(Shared Processor)逻辑分区(LPAR)都使用一个统一的、系统全局的处理器池(Processor Pool),并从中取得自己的处理器资源。POWER 6 对这一特性做了增强:一个物理系统中可以有多个处理器池,每个池可供一个或多个(即一组)LPAR 使用,并且处理器池中的处理器数量和 LPAR 数量都动态可调,这样可以按组来控制 LPAR 的处理器资源分配。AIX 6.1 和 AIX 5.3 TL7 系统的对这一特性提供了支持,并升级了性能工具以支持获取系统处理器池的信息。







IBM 为 AIX 用户提供了多种手段来执行 AIX 管理任务,每个管理员都可以选择自己习惯的方式以最高的效率来执行。AIX 5L 中提供的管理手段包括:

  • 命令行。使用传统的 UNIX 世界的命令行程序,管理员能清楚的知道自己干了什么,并能深入的理解系统行为。但是学习难度较高,操作比较枯燥。
  • SMIT 菜单,包括 ASCII 界面方式和基于 X-window 系统的 GUI 方式。这是 AIX 独有的管理工具,非常便捷,功能丰富而且易扩展,几乎所有常用的系统管理任务都可以在 SMIT 中执行。
  • Web-based System Management(WebSM),使用基于 Java 的 GUI 界面。使用 WebSM 能管理本地或者远程服务器,完成绝大多数 SMIT 工具支持的任务,并且界面和操作更加接近于现代软件的习惯。WebSM 需要执行一个 Java 的本地程序作为界面,该工具在 AIX 中集成为 WebSM 的一部分,在 Windows 或 Linux 上必须单独下载安装。

在 AIX 6.1 中,新增加了称之为 IBM Systems Director Console 的管理工具。该工具提供了基于 Web 界面的管理手段,因此不需要安装客户端,任何能运行受支持的浏览器的系统都可以连接到该工具执行管理任务。系统管理员通过 IBM Systems Director Console 界面可以访问到:

  • 按照 IBM Systems Director Console 方式组织的系统管理任务
  • SMIT 菜单的 Web 界面版本
  • 系统状态信息
  • 其他信息,如 Console 配置等

通过将系统管理任务集成到 Web 界面,AIX 6.1 提供了更加简便高效的管理手段,对于降低管理难度和成本具有很大的意义。而对于熟练的系统管理员,如不需要使用 IBM Systems Director Console,则可以将其关闭以节省系统资源,只需要将 /etc/inittab 中 pconsole 子系统对应的启动条目删除即可。

工作负载管理器(Workload Manager)是 AIX 系统内置的资源控制系统,管理员可以使用 WLM 来控制处理器,内存,I/O 资源的分配。在 AIX 6.1 中,WLM 的功能的到增强,用以控制 WPAR 的资源分配。事实上,WPAR 的资源分配控制功能在底层正是由 Workload Manager 提供。但要注意的是,WPAR 的资源控制操作不应该通过 WLM 来直接进行,而应该使用 WPAR 的管理工具,如 WPAR Manager。并且目前 WLM 只支持在全局环境中运行,控制全局环境中的应用或者 WPAR 的资源,而不支持在 WPAR 内运行。

阅读(1581) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~