25-进程分布优化配置
本章节下载: 25-进程分布优化配置 (248.20 KB)
目 录
进程是系统运行的基本单元,它能够给用户提供特定的服务。比如aaa进程能给用户提供AAA功能。
每个进程运行于受保护的内存空间,进程之间、进程与内核之间相互隔离。若某个进程出现问题不会影响整个系统。
设备上运行Comware系统的CPU称为一个节点。当IRF中有多个成员设备,每个成员设备上都有一个节点。
当设备启动或者用户配置/使能了某功能时,系统会自动同时为该业务启动多个进程。其中,一个为主控进程,其它为备份进程。主控进程处于工作状态,为用户提供服务,备份进程处于备用状态。这就是进程级备份。
进程级备份有以下优点:
· 保证了进程的高可用性。当主控进程故障时,系统能迅速从备份进程中选举一个新的主控进程,接替原主控进程继续为用户提供服务,不会影响到其它进程提供的业务。
· 提高了系统整体的稳定性,能适应设备的各种变化。如IRF成员设备离开等,系统均可快速恢复稳定。
· 系统负载可在多节点间分担。不同业务的主进程分别指定到不同节点运行,能充分利用多个节点的CPU和内存资源,有效地分担系统的负载。
对于一些业务,其主控进程只能运行在主设备,这样的进程不支持进程分布优化配置(配置时会提示失败)。当主控进程异常时,系统会自动重启该主控进程。这些业务的备份进程主要用于主备倒换和ISSU升级环境。
另一些业务,其主控进程可以运行在主设备上,也可以运行在从设备上。当主控进程异常时,需要从备份进程中选举一个新的主控进程,从而保证业务不受影响。在众多的备份进程中到底选用哪个作为新的主控进程,由该进程的分布策略决定。
为了方便管理和维护进程,系统定义了缺省分布策略,该策略对所有进程以及进程的实例生效。进程的缺省分布策略如下:
· 主控进程运行在主设备的CPU上,备份进程运行在备设备的CPU上。
· 进程会继承上次运行的位置,启动和运行过程中都不会自动随意更改运行位置。
· 当有新节点加入时,对当前运行的进程没有影响,只对将要启动的进程有影响。即将启动的主控进程会选择一个CPU资源和内存资源更丰富的节点运行,其它节点上则运行该进程的备份进程。(可通过display cpu-usage和display memory命令了解设备当前CPU和内存的使用情况)
用户可以使用placement program default命令进入缺省分布策略视图,修改出厂缺省分布策略。也可以根据实际需要使用placement program program-name [ instance instance-name ]命令进入进程的分布策略视图,为某个进程单独配置分布策略,对该进程的分布进行调整和优化,例如指定某些对资源有特殊要求的进程到特定的节点上运行,以取得更好的性能。和缺省分布策略相比,进程将优先应用单独配置的分布策略。
进程的分布策略由进程的各种偏好(affinity)构成,包括:
· location-set:进程对指定节点位置的偏好。
· location-type:进程对指定节点类型的偏好。
· program:进程对其它不同进程的偏好。
· self:进程对同进程的其它实例的偏好。
以上四种偏好从不同角度表达了用户对进程在某个位置运行的期望,可以同时配置,并可以指定偏好程度。
偏好程度分为正向偏好程度和反向偏好程度,均用正整数表示,取值范围为1~100000:
· 正向偏好程度表示希望运行在该位置,数值越大,表示期望越大,主进程运行在该位置的可能性越大。
· 反向偏好程度表示不希望运行在该位置,数值越大,主进程运行在该位置的可能性越小。
配置了进程的分布策略之后,并不会立即改变进程的分布,用户还需要实施分布策略,才能对进程的分布进行优化。在优化进程分布的过程中,系统会综合进程分布策略、进程当前运行位置、设备节点是否在位和拓扑状态等因素,对优化后各进程理想的运行位置做出决策。如果为某进程决策出的位置不同于当前运行的位置,则对该进程执行主备倒换,即当前运行位置的主控进程降级为备份进程,预期位置的备份进程升级为主控进程。
如果IRF中只有一台成员设备,则所有进程都运行在该设备的CPU上,此时,配置进程分布优化没有意义。
如果IRF中有多台成员设备,进程会进行备份。但运行几个备份进程,运行在哪些CPU上,由功能模块决定。当有备份进程运行时,用户配置进程分布策略,执行分布优化命令,可以让主控进程运行在用户期望的位置。通常情况下,进程在启动时,系统会给主控进程确定一个最佳运行位置,该位置不需要调整。如果确实需要调整,请在工程师的指导下进行,以免错误操作造成业务运行异常。
对于进程的实例,优先使用实例的分布策略视图下的配置,再使用进程的分布策略视图下的配置,最后使用缺省分布策略视图下的配置;对于进程,优先使用进程的分布策略视图下的配置,再使用缺省分布策略视图下的配置。
在配置进程分布优化时,可使用display placement reoptimize命令显示进程的当前运行位置和进程分布优化后的预测位置。
进程分布优化配置任务如下:
(1) 配置进程的分布策略。
请根据需要至少选择一项进行配置。
(2) 手工进行进程分布优化
通过参数用户可以指定节点真实的物理位置,配置进程对具体节点位置的偏好。
(1) 进入系统视图。
system-view
(2) 进入进程的分布策略视图。
¡ 进入缺省进程分布策略视图。
placement program default
¡ 进入指定进程的分布策略视图。
placement program program-name [ instance instance-name ]
缺省进程分布策略视图下的配置对所有进程均生效;指定进程的分布策略视图下的配置只对指定进程生效。
(3) 配置进程对节点位置的偏好。
affinity location-set { slot slot-number }&<1-5> { attract strength | default | none | repulse strength }
缺省情况下,系统未配置进程对节点位置的偏好。
系统支持三种节点类型。
类型 |
说明 |
current |
主控进程当前运行的位置,可以通过display placement program命令查看 |
paired |
所有备份进程当前运行的位置 |
primary |
主设备 |
(1) 进入系统视图。
system-view
(2) 进入进程的分布策略视图。
¡ 进入缺省进程分布策略视图。
placement program default
¡ 进入指定进程的分布策略视图。
placement program program-name [ instance instance-name ]
缺省进程分布策略视图下的配置对所有进程均生效;指定进程的分布策略视图下的配置只对指定进程生效。
(3) 配置进程对节点类型的偏好。
affinity location-type { current | paired | primary } { attract strength | repulse strength | default | none }
缺省情况下,系统未配置进程对节点类型的偏好。
该配置以特定进程的运行位置为参照点,配置的是本进程和其它进程运行在同一位置的偏好。
(1) 进入系统视图。
system-view
(2) 进入进程的分布策略视图。
¡ 进入缺省进程分布策略视图。
placement program default
¡ 进入指定进程的分布策略视图。
placement program program-name [ instance instance-name ]
缺省进程分布策略视图下的配置对所有进程均生效;指定进程的分布策略视图下的配置只对指定进程生效。
(3) 配置本进程和其它进程运行在同一位置的偏好。
affinity program program-name { attract strength | default | none | repulse strength }
缺省情况下,未配置进程和其它进程运行在同一位置的偏好。
该配置用以决定一个进程的多个实例之间是否运行于同一个位置上,如果进程只有一个实例,则该配置不会产生作用。
(1) 进入系统视图。
system-view
(2) 进入进程的分布策略视图。
¡ 进入缺省进程分布策略视图。
placement program default
¡ 进入指定进程的分布策略视图。
placement program program-name [ instance instance-name ]
缺省进程分布策略视图下的配置对所有进程均生效;指定进程的分布策略视图下的配置只对指定进程生效。
(3) 配置进程多实例之间的偏好。
affinity self { attract strength | repulse strength | default | none }
缺省情况下,系统未配置进程多实例之间的偏好。
配置本功能前,请确保相关进程已配置了NSR或GR等备份功能,且NSR或GR等备份功能处于稳定状态,否则,可能导致相关协议出现邻居震荡等异常情况。
手工进行进程分布优化时请保持系统的稳定性,不建议在此期间进行相关进程的重启操作。
(1) 进入系统视图。
system-view
(2) 手工进行进程分布优化。
placement reoptimize
完成进程相关的配置后,在任意视图下执行display命令可以显示进程的位置等信息,通过查看显示信息可验证配置的效果。
表1-1 进程分布优化显示和维护
操作 |
命令 |
显示服务组的信息 |
display ha service-group { program-name [ instance instance-name ] | all } |
显示具体位置上正在运行的进程 |
display placement location { all | slot slot-number } |
显示进程的分布策略 |
display placement policy program { program-name | all | default } |
显示进程的当前运行位置 |
display placement program { program-name | all } |
显示进程分布优化后的预测位置 |
display placement reoptimize program { program-name [ instance instance-name ] | all } |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!