aix7.1重装6.1

    技术2024-06-08  88

    AIX®6.1具有许多重要的创新和改进,包括:

    虚拟化-工作负载分区和实时应用程序移动性等功能 安全性-诸如加密文件系统,受信任的AIX和基于角色的访问控制(RBAC)之类的功能 可用性—功能,例如AIX并发更新和动态跟踪 可管理性-功能,例如用于AIX的新的Systems Director控制台和Workload Partition Manager

    它还支持POWER6性能创新,例如高级同时多线程(SMT),共享专用处理器和可变页面大小。 充分了解哪些创新和增强功能更能体现POWER6,AIX 6.1或两者的结合,这一点很重要。 例如,仅从操作系统角度来看,AIX在以下方面对旧的缺省可调参数进行了改进:

    vmo ioo aio no nfso schedo

    尽管AIX 6.1确实进行了一些实际的性能增强,例如I / O步调的改进和AIX对AIO服务器的实现,但没有什么令人惊奇的不同。 实际上,从AIX 5.1到AIX 5.2以及从5.2到5.3进行了更多的性能更改(包括新的监视工具,调整工具,新的可调参数,这些更改更改了设置虚拟内存管理器(VMM)设置的方式以及并发I / O改进)您将看到从AIX 5.3迁移到AIX 6.1。 在AIX 6.1中,除已删除的命令(即IE和aioo)以外,所有调整命令均保持不变,并且也没有新的监视工具。 其他更改反映了对实用程序所做的更新,这些更新反映了对其他工作负载分区创新的支持,包括:

    t Filemon iostat netpmon pprof 普罗蒙 进程树 svmon 托帕斯 tprof 虚拟机

    工作负载分区(WPAR)允许在一个AIX映像中使用单独的虚拟分区。 它更多地是对逻辑分区(LPAR)的补充,而不是对其的替代。 WPAR实际上在LPAR内部运行,并且在概念上与Solaris容器非常相似。 我在不到15分钟的时间内构建了WPAR。 实际上,您将在WPAR中进行一些分析,以便实际上可以查看现在支持WPAR的一些更新工具。 注意,仅在AIX 6.1中需要WPAR,而不需要POWER6。 在WPAR中,某些命令的运行方式也不同或根本不运行-其中一些将在适用的地方进行讨论。 AIX 6.1的其他性能改进包括独特的可调文档和受限制的可调。

    调整方法

    本节总结了用于调整系统的调整方法。 您不必一定要使用这个。 还有许多其他方法,但是您应该使用某种调整方法或结构化程序。

    五步方法包括:

    建立基线 压力测试和监控 识别瓶颈 调整瓶颈 重复(从第二步开始)

    让我们更深入地看一下步骤:

    建立基准-调整甚至开始监视之前,必须建立基准。 基准是系统运行良好时的外观快照。 该基准不仅应捕获性能类型的统计信息,而且还应记录系统的实际配置(内存,CPU和磁盘的数量)。 这很重要,因为在对用户可能抱怨的性能进行故障排除之前,您需要了解性能良好的系统的外观。 这样做可以帮助您将数据转换为客户签署服务等级协议(SLA)。 压力测试和监视-在此处可以在高峰工作负载下监视和压力系统。 您应该在此处使用多种监视工具来帮助验证您的发现。 监视部分至关重要,因为如果没有准确的系统历史记录,就无法有效地调整任何内容,尤其是在压力时期。 识别瓶颈—压力和监视系统的目的是确定瓶颈。 没有正确的诊断,您将无法提供正确的药物。 如果系统实际上是受CPU限制的,那么您可以运行其他工具,例如trace,curt,splat,tprof和ps,以进一步识别导致瓶颈的实际进程。 调整瓶颈—最终确定了瓶颈之后,就该进行调整了。 您所做的调整取决于瓶颈,例如,CPU,虚拟内存或I / O。 一些子系统更适合主动调优,例如虚拟内存和使用vmo ,而解决CPU类型瓶颈的“办法”通常是更有效地管理工作负载或分配(使用动态逻辑分区(DLPAR),无上限分区或分区)负载管理器)更多资源到您的系统。 重复-从该过程的第二步开始,再次进行该过程的时间。 只有重复测试并持续监视系统,才能确定调整是否确实产生了影响。

    AIX 6.1-内存

    本节讨论在虚拟内存子系统中所做的更改。

    这些年来,许多人抱怨AIX的默认参数。 这些抱怨不仅反映了大多数用户在AIX之上运行的事实,例如像Oracle这样的任务关键型数据库应用程序。 因此,系统管理员不得不更改许多子系统上的设置,尤其是虚拟内存(换句话说就是minperm和maxperm )。 IBM®已经听取并更改了这些参数以反映该现实。 还应注意,您不应仅依赖这些设置,而应始终与独立软件供应商(ISV)核对,以验证其推荐的设置适用于AIX 6.1,并进行相应的更改。

    让我们看一下表1中 AIX 5.3和AIX 6.1的vmo参数的并排视图。 您将看到一些参数现在处于受限模式。 进行了最重要的更改以解决分页问题,​​在分页问题中,即使系统具有足够的可用内存,数据库服务器也会频繁分页计算页面。 在先前有关调优的文章中(请参阅参考资料 ),建议将这些参数更改为与表中指示的参数相当接近的默认值。 更改在AIX 5.3调整建议列中指示。 现在,为了防止更改某些参数,许多可调参数也被分为受限制的不同类别。 事实是,在没有明确警告的情况下,现在只能更改29个vmo可调参数。 现在有30个被视为受限制的可调参数,除非得到“ IBM支持专业人员”的指示,否则IBM正式声明不得对其进行修改。 IBM进行了此更改,以阻止初级管理员更改某些被认为非常关键以至于被归为受限制的参数。

    表1. vmo参数列表和调整建议
    类型 AIX 5.3 AIX 5.3调整更改建议 AIX 6.1 受限制的 cpu_scale_memp = 8 8 8 是 data_stagger_interval = 161 161 161 是 减幅= 1 1个 force_relalias_lite = 0 0 0 框架集= 2 2 2 不再可用 是 htabscale =不适用 不适用 不适用 是 kernel_heap_psize = 4096 4096 4096 kernel_psize = 4096 4096 65536 是 large_page_heap_size = 0 0 0 是 lgpg_regions = 0 0 0 lgpg_size = 0 0 0 low_ps_handling = 1 1个 0 lru_file_repage = 1 1个 0 0 是 lru_poll_interval = 10 10 10 是 lrubucket = 131072 131072 131072 是 maxclient%= 80 80 90 90 是 maxfree = 1088 1088 1088 最大性能= 598781 598781 442683 maxperm%= 80 80 90 90 是 maxpin = 635249 635249 423471 maxpin%= 80 80 80 mbuf_heap_psize = 65536 65536 64436 是 memory_affinity = 1 1个 1个 是 memory_frames = 786432 786432 524288 memplace_data = 2 2 2 memplace_mapped_file = 2 2 2 memplace_shm_anonymous = 2 2 2 memplace_shm_named = 2 2 2 memplace_stack = 2 2 2 memplace_text = 2 2 2 memplace_unmapped_file = 2 2 2 内存池= 5 5 minfree = 960 960 960 minperm = 149694 149694 14756 minperm%= 20 20 5 3 nokilluid = 0 0 0 npskill = 3072 3072 3072 npsrpgmax = 24576 24576 8192 是 npsrpgmin = 18432 18432 6144 是 npsscrubmax = 24576 24576 8192 是 npsscrubmin = 18432 18432 6144 是 npswarn = 12288 12288 12288 num_spec_dataseg = 0 0 0 是 numpsblks = 393216 393216 393216 page_steal_method = 0 0 1个 是 pagecoloring =不适用 不适用 pinnable_frames = 675516 675516 349814 pta_balance_threshold =不适用 不适用 relalias_percentage = 0 0 0 rpgclean = 0 0 0 是 rpgcontrol = 2 2 2 是 擦洗= 0 0 0 擦洗= 0 0 0 是 soft_min_lgpgs_vmpool = 0 0 spec_dataseg_int = 512 512 512 是 strict_maxclient = 1 1个 1个 是 strict_maxperm = 0 0 0 是 v_pinshm = 0 0 0 vm_modlist_threshold = -1 -1 -1 是 vmm_fork_policy = 1 1个 1个 是 vmm_mpsize_support = 1 1个 2 是 vmm_default_pspa -1

    新的vmo标志-F提供所有参数,包括受限制的参数。 这里的大部分内容都被删除了—仅提供了一个包含受限部分的小样本(请参见清单1 )。

    清单1.将-F标志与vmo一起使用以查看所有可调值
    lpar9ml162f_pub[/] > vmo -F -a force_relalias_lite = 0 vmm_default_pspa = -1 ##Restricted tunables maxperm% = 90

    甚至受限的可调参数也可以更改。 当您进行更改时,您只会收到严厉的警告(请参见清单2 )。

    清单2.调整可调参数警告
    lpar9ml162f_pub[/] > vmo -o maxperm%=99 Setting maxperm% to 99 Warning: a restricted tunable has been modified

    重新引导后更改参数时,您将受到进一步的谴责,并被要求实际确认是否要执行此操作。 您必须在物理上输入“ yes”(参见清单3 )。

    清单3.受限制的可调参数—回答yes进行更改
    lpar9ml162f_pub[/] > vmo -p -o maxperm%=99 Modification to restricted tunable maxperm%, confirmation required yes/no yes Setting maxperm% to 99 in nextboot file Setting maxperm% to 99 Warning: a restricted tunable has been modified lpar9ml162f_pub[/] >

    最重要的现成性能值包括以下新值:

    minperm maxperm maxclient strict_maxclient

    这是基于AIX 5.3期间首次出现的更改,此时您不再需要关闭strict_maxclient ,增加minfrree和maxfree或减少minperm , maxperm和maxclient 。 新建议(现在已作为AIX 6.1的默认值合并)是关闭重调比例检查lru_file_repage ,以确保不分页工作存储并仅考虑文件分页。 在AIX 6.1中,更改了VMM替换缺省值,以将其实际内存的90%用于文件高速缓存,从而使计算页面胜于文件页面。 除非活动虚拟内存的数量超过实际内存大小的97%,否则minperm会减少到3%(请参见清单4 ),以确保计算页面不会被盗。

    清单4. minperm减少到百分之三
    # vmo -o minperm%=97 Value of the tunable minperm% cannot be changed in a WPAR

    某些更改在WPAR中不起作用。 WPAR是LPAR的子集,但它们仍然是单个操作系统映像的一部分。

    另一个重要的更改包括VMM动态变量页面大小支持(VPSS)。 页面被定义为固定长度的数据块,并保存在虚拟内存中。 在AIX 6.1(仅在POWER6处理器上)中,VMM现在可以根据应用程序内存使用情况动态使用较大的页面大小,这将大大提高性能。 此功能对应用程序完全透明。 如果AIX不会导致进程内存使用量增加,则仅使用较大的页面。 使用较大的页面可以提高性能,因为将需要进行较少的硬件地址转换。 它仅支持在工作存储内存上执行此操作,不支持持久存储。 新参数是vmm_default_pspa (也可与vmm_mpsize_support可调参数结合使用)。

    清单5. lsattr输出说明了处理器的体系结构
    lpar9ml162f_pub[/usr/samples/tcpip] > lsattr -El proc0 Frequency 1654344000 Processor Speed False smt_enabled true Processor SMT enabled False smt_threads 2 Processor SMT threads False state enable Processor state False type PowerPC_POWER5 Processor type False lpar9ml162f_pub[/usr/samples/tcpip] >

    让我们查看VPSS可调设置的设置。

    清单6.在POWER5系统上自动禁用的VPSS
    lpar9ml162f_pub[/usr/samples/tcpip] > vmo -a | grep pspa vmm_default_pspa = -1

    AIX 6.1-CPU

    本节重点介绍在CPU子系统中所做的更改。

    尽管schedo也可以用于调整某些内存功能,例如分页负载控制,但主要用于CPU调度程序调整。 在AIX 6.1中,只有42个可调参数中的27个受到限制,剩下15个可调参数可以在没有明确警告的情况下进行修改。 尽管更改了一些默认值,但是在AIX 6.1上的CPU监视和调整方面并没有进行实质性的更改(请参见清单7 )。

    清单7.受限的可调参数
    lpar9ml162f_pub[/] > schedo -F -a ##Restricted tunables %usDelta = 100 allowMCMmigrate = 0 fast_locks = n/a hotlocks_enable = 0 idle_migration_barrier = 4 krlock_confer2self = 1 krlock_conferb4alloc = 1 krlock_enable = 1 krlock_spinb4alloc = 1 krlock_spinb4confer = 1024 n_idle_loop_vlopri = 100 search_globalrq_mload = 256 search_smtrunq_mload = 256 setnewrq_sidle_mload = 384 shed_primrunq_mload = 64 sidle_S1runq_mload = 64 sidle_S2runq_mload = 134 sidle_S3runq_mload = 134 sidle_S4runq_mload = 4294967040 slock_spinb4confer = 1024 smt_snooze_delay = 0 smtrunq_load_diff = 2 v_exempt_secs = 2 v_min_process = 2 v_repage_hi = 0 v_repage_proc = 4 v_sec_wait = 1 lpar9ml162f_pub[/] >

    AIX 6.1-磁盘I / O

    本节概述了磁盘I / O子系统中所做的更改。

    在AIX 6.1中,可以使用ioo来控制的48个可调参数中,现在有27个受到限制,剩下的21个可调参数可以在没有明确警告的情况下进行修改。 最重要的更改会影响I / O步调和AIO动态可调参数(请参见清单8 )。

    清单8.受限的ioo可调参数
    # ioo -F -a ##Restricted tunables aio_fastpath = 1 aio_fsfastpath = 1 aio_kprocprio = 39 aio_multitidsusp = 1 aio_sample_rate = 5 aio_samples_per_cycle = 6 j2_maxUsableMaxTransfer = 512 j2_nBufferPerPagerDevice = 512 j2_nonFatalCrashesSystem= 0 j2_syncModifiedMapped = 1 j2_syncdLogSyncInterval = 1 jfs_clread_enabled = 0 jfs_use_read_lock = 1 maxpgahead = 8 maxrandwrt = 0 memory_frames = 524288 minpgahead = 2 numclust = 1 numfsbufs = 196 pgahd_scale_thresh = 0 posix_aio_fastpath = 1 posix_aio_fsfastpath = 1 posix_aio_kprocprio = 39 posix_aio_sample_rate = 5 posix_aio_samples_per_cycle = 6 pv_min_pbuf = 512 sync_release_ilock = 0

    JFS2

    对增强日志文件系统(JFS2)进行了更改,现在可以使您无需记录就挂载JFS2 f / s。 虽然这可以大大提高性能,但不建议您这样做。 如果需要恢复数据,则必须使用可怕的fsck ,从记录文件系统以来,该fsck已从内存中清除掉了。 一些有用的情况可能包括从备份中还原数据,以及在活动窗口可能很小且不关心可用性的活动期间节省时间。

    iSCSI

    现在可以在千兆位以太网适配器上使用目标软件驱动程序,这将明显提高此类环境中的性能。 目标驱动程序将本地磁盘或逻辑卷导出到使用iSCSI协议连接到AIX的iSCSI启动器。 iSCSI的普及是基于光纤的存储的可行替代方案,这使其成为一项重要的增强功能。

    I / O起搏

    磁盘I / O安排是一种机制,可让您限制对文件的未决I / O请求的数量。 这样可以防止磁盘I / O密集型进程(通常以大顺序写入的形式)耗尽CPU。 AIX 6.1默认启用I / O步调。 在AIX 5.3中,您需要显式启用此功能。 这样做的方法是将minpout和maxput参数的sys0设置分别设置为4096和8193:

    lpar9ml162f_pub[/] > lpar9ml162f_pub[/] > lsattr -El sys0
    图1. lsattr输出说明了新的I / O步调设置

    异步I / O(AIO)

    AIO是AIX软件子系统,它允许进程发出I / O操作而无需等待I / O完成。 由于I / O操作和应用程序处理同时运行,因此它们实际上在后台运行并提高了性能。 这在数据库环境中尤其重要。 有两种类型的AIX子系统:旧版AIO和POSIX AIO。 它们之间的差异涉及在应用程序层传递的不同参数。 换句话说,开发人员选择应用程序使用的实现。 无论选择哪个子系统,两者都可以在AIX上同时运行。 在AIX 5L™中,如果应用程序使用AIO,则需要在autoconfig参数中显式激活子系统。 由于还需要加载内核扩展,因此系统也需要重新启动。 实际上,如果对以下两个可调参数进行了任何更改,则AIX 5.3 TL5之前的任何发行版都需要重新启动:

    maxreqs maxservers minservers

    在AIX 5.3中,您还具有aioo命令,该命令使您无需重新引导即可动态进行这些更改(减少所需的重新引导)。 应当注意,该命令没有更改对象数据管理器(ODM)属性,这意味着它们在重新引导后将不会保持不变。

    在AIX 6.1中,可调参数fastpath和fsfastpath现在是受限制的可调参数,并且默认情况下设置为1。 它对可调参数具有以下影响(请参见清单9 ):

    fastpath :AIO请求将原始逻辑卷直接传递到磁盘层。 fsfastpath :AIO请求将在JFS2上使用并发I / O打开的文件直接传递到LVM或磁盘。
    清单9.受限的可调参数
    ##Restricted tunables aio_fastpath = 1 aio_fsfastpath = 1

    此外,AIO子系统现在默认情况下已加载且未激活。 它们在应用程序启动AIO I / O请求时自动启动。 没有更多的aioo命令(寿命很短),这些可调参数现在仅与ioo (请参见清单10 )。

    清单10. AIX旧方法(AIX 5.3)
    lpar9ml24f_pub[/] > # aioo -a minservers = 1 maxservers = 1 maxreqs= 4096 fsfastpath = 0

    清单11提供了AIX 6.1的新方法。

    清单11. AIO新方法(AIX 6.1)
    lpar9ml162f_pub[/] > ioo -a | grep active aio_active = 0 posix_aio_active =

    还值得注意的是,ODM中没有更多的AIO设备。

    如您所见, ioo还添加了两个新参数: aio_active和posix_aix _active。 这些只能由AIX更改,并且仅在使用和固定AIO内核扩展器时将它们设置为1。 如果您喜欢grep ,那么您将找不到更多的AIO服务器。 现在您将看到aioLpools和aioPpools ; 这些是为Legacy和POSIX管理AIO子系统的内核进程。 更改的结果是,更少的固定内存和更少的系统上正在运行的进程。 两者都对整体系统性能产生积极影响(请参见清单12 )。

    清单12.新的AIO内核进程
    lpar9ml162f_pub[/] > pstat -a | grep aio 39 a 2704e 1 2704e 0 0 1 aioLpool 40 a 28050 1 28050 0 0 1 aioPpool lpar9ml162f_pub[/] >

    与AIO服务器相关的minserver和maxserver参数现在可以根据每个CPU可调参数进行调整。 更改这些值不会导致系统上可用服务器数量的更改; 该数量取决于并发I / O请求的数量(请参见清单13 )。

    清单13. minservers和maxservers默认参数的更改
    lpar9ml162f_pub[/] > ioo -a | grep minservers aio_minservers = 3 posix_aio_minservers = 3 lpar9ml162f_pub[/] > ioo -a | grep maxservers aio_maxservers = 30 posix_aio_maxservers = 30 lpar9ml162f_pub[/] >

    还值得注意的是,ODM中没有更多的AIO设备。

    AIX 6.1-网络和网络文件系统(NFS)I / O

    本节概述了在网络I / O子系统(包括NFS)中所做的更改。

    在133个no可调参数中,只有5个被分类为受限制的(参见清单14 )。

    清单14.受限的可调参数
    #no -F -a ##Restricted tunables extendednetstats = 0 inet_stack_size = 16 net_malloc_police = 16384 pseintrstack = 24576 use_isno = 1 lpar9ml162f_pub[/] >

    还引入了新的网络缓存守护程序,以提高使用DNS解析时的性能。

    可以从系统资源控制器(SRC)启动此守护程序。

    它的主要配置文件在/etc/netcd.conf中,您可以将/ usr / samples / tcpip中的文件复制到/ etc并将其用作模板。 用于管理守护程序的命令是netcdctrl 。 使用此命令,您可以将缓存内容转储到文件中,显示缓存使用情况的统计信息,刷新缓存表,以及更改守护程序的日志记录级别。 清单15显示了统计信息。

    清单15.使用netcdctrl显示缓存netcdctrl
    lpar9ml162f_pub[/usr/samples/tcpip] > netcdctrl -t dns -e hosts -s /tmp/netcd.stats lpar9ml162f_pub[/usr/samples/tcpip] > more /tmp/netcd.stats CACHE dns, hosts, name Hash index : 0, Max number of entries : 0, Current number of entries : 0 Hash index : 1, Max number of entries : 0, Current number of entries : 0 Hash index : 2, Max number of entries : 0, Current number of entries : 0 Hash index : 3, Max number of entries : 0, Current number of entries : 0

    关于/etc/netsvc.conf文件,没有任何改变。 在确定解析顺序时,仍然需要此文件。

    NFS

    在24个NFS可调参数中,有21个被分类为受限(参见清单16 )。

    清单16.受限的可调参数
    #nfso -a ##Restricted tunables lockd_debug_level = 0 nfs_allow_all_signals = 0 nfs_auto_rbr_trigger = 0 nfs_dynamic_retrans = 1 nfs_gather_threshold = 4096 nfs_iopace_pages = 0 nfs_max_threads = 3891 nfs_repeat_messages = 0 nfs_socketsize = 600000 nfs_tcp_duplicate_cache_size = 5000 nfs_tcp_socketsize = 600000 nfs_udp_duplicate_cache_size = 5000 nfs_v2_pdts = 1 nfs_v3_pdts = 1 nfs_v4_pdts = 1 nfs_v2_vm_bufs = 10000 nfs_v3_vm_bufs = 10000 nfs_v4_vm_bufs = 10000 statd_debug_level = 0 statd_max_threads = 50 udpchecksum = 1 lpar9ml162f_pub[/] >

    此处唯一值得注意的更改是,默认情况下现已默认启用RFC1323(在TC / IP堆栈上),这允许TCP连接将TCP缩放窗口用于任何NFS连接。 此外,每个NFS V3挂载点的biod守护程序的默认数量现在已增加到32。

    摘要

    AIX 6.1提供了许多创新,例如WPAR的使用和实时应用程序的可用性。 它还提供了有关性能调整的许多更改。 一些更重要的更改包括改进默认参数以更准确地反映实际数据处理,独特的可调文档,受限制的可调参数的合并以及I / O步调和AIO服务器的增强。 AIX 6.1简直很棒,但还请记住,在IBM领域,AIX 6.1是新的6.0。 您还记得吗,AIX 5.2比AIX 5.1更好,更稳定。 在进行操作系统升级之前,请考虑所有事项,但是,如果您的应用程序完全支持它,并且您认为创新在您的环境中足够重要就可以采取行动,那么当然不要担心迁移。


    翻译自: https://www.ibm.com/developerworks/aix/library/au-aix6tuning/index.html

    相关资源:IBM_AIX_7.1
    Processed: 0.013, SQL: 9