hello_unix
作者hello_unix·2010-05-31 15:30
信息技术经理·西安

aix 如何调整pbuf

字数 60阅读 3479评论 0赞 0

如何调整pbuf

   

环境:(产品AIX V5.3及以上版本,平台pSeries)

问题描述: 本文介绍了如何调整pbuf.

解答:

1. pbuf简介:
AIX V5.3版本开始, 系统为每一个卷组分配一个pbuf的资源池,
使用命令lvmo管理pbuf池,简单介绍几个参数:

pv_buf_count:每增加一个PV,所增加的pbufs数量,
在32位内核下缺省值为256,64位内核下为512
total_vg_pbufs:当前卷组可用的pbufs数量
max_vg_pbuf_count:卷组所能申请到的最大pbuf数量
pervg_blocked_io_count:因缺少pbuf而阻塞的I/O数,varyonvg时其值清零.

简单解释它们之间的关系:
(1) 当vg上没有IO时,total_vg_pbufs = pv_pbuf_count * pv数量.
(2) 当vg上有IO时,total_vg_pbufs数目会随之减少.当total_vg_pbufs耗尽,
即pbuf用完,这时提交的IO请求需等待,直到有可用的pbuf.
此时,"pervg_blocked_io_count"也会相应增加.

2. 如何诊断和改善pbuf瓶颈问题:
(1) 首先查看"vmstat -v", 例如:
4668058 pending disk I/Os blocked with no pbuf
vmstat命令显示的是全系统的一个累积值,当系统重启时,该值清零.

(2) 然后通过lvmo命令检查每一个vg的pbuf情况:
例如此系统中,pbuf缺乏都来自于datavg,即"pervg_blocked_io_count":
# lvmo -v datavg -a
vgname = ocrvg12
pv_pbuf_count = 512
total_vg_pbufs = 8192
max_vg_pbuf_count = 16384
pervg_blocked_io_count = 4668058 <<<
global_pbuf_count = 512
global_blocked_io_count = 4668058 <<<

(3) 当vg上的"pervg_blocked_io_count"过高,建议提高该vg的"pv_pbuf_count"
增加该vg的pbuf数目,改善性能.
例如: # lvmo -v datavg -o pv_pbuf_count=1024
# varyoffvg datavg
# varyonvg datavg

摘自

http://www-900.ibm.com/cn/support/viewdoc/detail?DocId=1811088I26001

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

X社区推广