'\"macro stdmacro .\" .\" Copyright (c) 2015 Red Hat. .\" .\" This program is free software; you can redistribute it and/or modify it .\" under the terms of the GNU General Public License as published by the .\" Free Software Foundation; either version 2 of the License, or (at your .\" option) any later version. .\" .\" This program is distributed in the hope that it will be useful, but .\" WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY .\" or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License .\" for more details. .\" .\" .TH PMDADM 1 "PCP" "Performance Co-Pilot" .SH "نام (NAME)" pmdadm \- عامل دامنه معیارهای کارایی (PMDA) برای Device Mapper .ds ia dm .SH "خلاصه دستور (SYNOPSIS)" \f3$PCP_PMDAS_DIR/\*(ia/pmda\*(ia\f1 [\f3\-D\f1 \f2debug\f1] .SH "توضیحات (DESCRIPTION)" دستور .B pmdadm یک «عامل دامنه معیارهای کارایی» (PMDA) است که مقادیر معیارها را برای Device Mapper در سیستم محلی ارائه می‌دهد. .PP این PMDA داده‌های خود را از طریق ابزار .BR dmsetup (8) و رابط برنامه‌نویسی (API) dmstats جمع‌آوری می‌کند و برای کارکرد صحیح نیازمند نصب بودن این برنامه است. علاوه بر این، برای دریافت مقادیر شمارنده‌های اولیه، باید حداقل یک ناحیه آماری با استفاده از ابزار .BR dmstats (8) ایجاد شده باشد. برای مثال‌ها به بخش‌های زیر مراجعه کنید. .PP توجه داشته باشید که جمع‌آوری آمار device-mapper به‌طور پیش‌فرض فعال نیست و پس از راه‌اندازی مجدد سیستم پایدار نمی‌ماند (مگر اینکه مدیر سیستم دستوری را برای اجرا در .B rc.local یا معادل آن پیکربندی کرده باشد). دلیل این امر بار اضافی (overhead) ناشی از جمع‌آوری آمار است. علاوه بر این، عامل .B pmdadm جمع‌آوری هیچ آماری را به‌طور خودکار فعال نمی‌کند، زیرا ممکن است تنها مصرف‌کننده این داده‌ها نباشد. .SH "نصب (INSTALLATION)" عامل DM PMDA را با استفاده از اسکریپت Install با دسترسی ریشه (root) نصب کنید: .sp 1 .RS +4 .ft B .nf # cd $PCP_PMDAS_DIR/dm # ./Install .fi .ft P .RE .sp 1 برای حذف نصب، دستورهای زیر باید با دسترسی ریشه انجام شوند: .sp 1 .RS +4 .ft B .nf # cd $PCP_PMDAS_DIR/dm # ./Remove .fi .ft P .RE .sp 1 ابزار .B pmdadm توسط .BR pmcd (1) راه‌اندازی می‌شود و هرگز نباید مستقیماً اجرا شود. اسکریپت‌های .B Install و .B Remove هنگام نصب یا حذف عامل، به .B pmcd اطلاع‌رسانی می‌کنند. .SH "پیکربندی (CONFIGURATION)" این PMDA از dmstats API (کتابخانه پشتیبانی device-mapper در فضای کاربری) برای ثبت داده‌های کارایی device-mapper استفاده می‌کند. .br برای استفاده از این PMDA، کاربران به کتابخانه پشتیبانی device-mapper در فضای کاربری (libdevmapper) و ابزار خط فرمان فضای کاربری .BR dmstats (8) نیاز دارند. پیش از در دسترس قرار گرفتن معیارهای device-mapper برای PCP، باید نواحی آماری (statistics regions) ایجاد شوند. برای نمونه، جهت فعال‌سازی آمار پایه‌ای برای تمام دستگاه‌های منطقی محلی device-mapper، از دستور زیر استفاده کنید: .P .ft CR .nf .in +0.5i # dmstats create --alldevices .in .fi .PP برای ایجاد نواحی آماری با مرزهای هیستوگرام مشخص، از دستور زیر استفاده کنید: .P .ft CR .nf .in +0.5i # dmstats create --alldevices --bounds\fP \fIhistogram_boundaries .in .fi .PP مرزهای هیستوگرام تاخیر را که باید برای ناحیه ردیابی شود، به صورت فهرستی از مقادیر تاخیر که با کاما از هم جدا شده‌اند مشخص کنید. مقادیر تاخیر به نانوثانیه داده می‌شوند. پسوند واحد اختیاری .BR ns ، .BR us ، .BR ms یا .BR s می‌تواند پس از هر مقدار مشخص شود تا به ترتیب واحدهای نانوثانیه، میکروثانیه، میلی‌ثانیه یا ثانیه را تعیین کند. برای نمونه: .P .ft CR .nf .in +0.5i # dmstats create --alldevices --bounds 10us,30us,50us,70us,90us .in .fi .PP جزئیات بیشتر و مثال‌های پیچیده‌تر را می‌توان در .BR dmstats (8) یافت. .SH "معیارها (METRICS)" .IP "\fBشمارنده‌های اولیه (Basic Counters)\fR" 4 شمارنده‌های اولیه امکان دسترسی به داده‌های خام شمارنده از هسته را فراهم می‌کنند و اجازه می‌دهند پردازش‌های بعدی توسط برنامه دیگری انجام شود. .br هسته برای هر ناحیه آماری، سیزده شمارنده جداگانه ارائه می‌دهد. یازده مورد اول از این شمارنده‌ها با شمارنده‌های ارائه‌شده در /proc/diskstats یا /sys/block/*/*/stat مطابقت دارند. جفت پایانی شمارنده‌های جداگانه‌ای برای زمان خواندن و نوشتن ارائه می‌دهند. .RS 4 .IP "\fBdmstats.read\fR" 4 تعداد خواندن‌های تکمیل‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.reads_merged\fR" 4 تعداد خواندن‌های ادغام‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.read_bytes\fR" 4 تعداد کیلوبایت‌های خوانده‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.reads_time\fR" 4 مدت زمان انباشته تمام درخواست‌های خواندن به ازای هر دستگاه device-mapper. .IP "\fBdmstats.write\fR" 4 تعداد نوشتن‌های تکمیل‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.writes_merged\fR" 4 تعداد نوشتن‌های ادغام‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.write_bytes\fR" 4 تعداد کیلوبایت‌های نوشته‌شده در این بازه به ازای هر دستگاه device-mapper. .IP "\fBdmstats.writes_time\fR" 4 مدت زمان انباشته تمام درخواست‌های نوشتن به ازای هر دستگاه device-mapper. .IP "\fBdmstats.in_progress\fR" 4 تعداد درخواست‌های در حال انجام به ازای هر دستگاه device-mapper. .IP "\fBdmstats.io_ticks\fR" 4 نانوثانیه‌های صرف‌شده برای سرویس‌دهی به درخواست‌ها به ازای هر دستگاه device-mapper. .IP "\fBdmstats.queue_ticks\fR" 4 این فیلد در هر شروع I/O، تکمیل I/O، ادغام I/O، یا خواندن این آمارها، به اندازه تعداد I/Oهای در حال انجام ضرب در تعداد نانوثانیه‌های صرف‌شده برای انجام I/O از زمان آخرین به‌روزرسانی این فیلد افزایش می‌یابد. این می‌تواند معیاری ساده برای هر دو مورد زمان تکمیل I/O و کارهای معوقه‌ای (backlog) باشد که ممکن است در حال انباشته شدن باشند. .IP "\fBdmstats.read_ticks\fR" 4 نانوثانیه‌های صرف‌شده برای سرویس‌دهی به خواندن‌ها به ازای هر دستگاه device-mapper. .IP "\fBdmstats.write_ticks\fR" 4 نانوثانیه‌های صرف‌شده برای سرویس‌دهی به نوشتن‌ها به ازای هر دستگاه device-mapper. .br .RS -4 .IP "\fBفیلدهای هیستوگرام (Histogram fields)\fR" 4 هیستوگرام‌ها توزیع فراوانی بازه‌های تاخیر I/O مشخص‌شده توسط کاربر را اندازه می‌گیرند. مرزهای ستون‌های هیستوگرام (bin) هنگام ایجاد یک ناحیه مشخص می‌شوند. .br نام نمونه نشان‌دهنده devicename، شناسه ناحیه (region id) و مرزهای ستون‌ها است. .RS 4 .IP "\fBdmstats.histogram.hist_count\fR" 4 فهرستی از شمارش‌های هیستوگرام برای ناحیه آماری جاری به ترتیب صعودی مقدار تاخیر. هر مقدار نشان‌دهنده تعداد I/Oهایی است که زمان تاخیر آن‌ها در طول دوره نمونه‌برداری در محدوده زمانی آن ستون قرار گرفته است. .IP "\fBdmstats.histogram.hist.bins\fR" 4 تعداد ستون‌های هیستوگرام تاخیر پیکربندی‌شده برای ناحیه. .RE .SH "مثال‌ها (EXAMPLES)" .ft CR .nf .in # dmstats create looptest0 --bounds 10us,30us,50us looptest0: Created new region with 1 area(s) as region ID 0 .in .fi .PP .ft CR .in # pminfo -f dmstats.read dmstats.histogram.hist_count .P dmstats.read inst [0 or "looptest0"] value 4099 .P dmstats.histogram.hist_count inst [0 or "looptest0:0:0s"] value 1 inst [1 or "looptest0:0:10us"] value 3752 inst [2 or "looptest0:0:30us"] value 250 inst [3 or "looptest0:0:50us"] value 96 .ft 1 .SH "فایل‌ها (FILES)" .IP "\fB$PCP_PMDAS_DIR/dm/help\fR" 4 فایل متنی راهنمای پیش‌فرض برای معیارهای dm .IP "\fB$PCP_PMDAS_DIR/dm/Install\fR" 4 اسکریپت نصب برای عامل \fBpmdadm\fR .IP "\fB$PCP_PMDAS_DIR/dm/Remove\fR" 4 اسکریپت لغو نصب برای عامل \fBpmdadm\fR .IP "\fB$PCP_LOG_DIR/pmcd/dm.log\fR" 4 فایل لاگ پیش‌فرض برای پیام‌های خطای \fBpmdadm\fR .SH "محیط PCP (PCP ENVIRONMENT)" متغیرهای محیطی با پیشوند \fBPCP_\fR برای پارامتریک کردن نام فایل‌ها و دایرکتوری‌های مورد استفاده توسط \fBPCP\fR به کار می‌روند. در هر نصب، فایل \fB/etc/pcp.conf\fR حاوی مقادیر محلی برای این متغیرها است. متغیر \fB$PCP_CONF\fR ممکن است برای تعیین یک فایل پیکربندی جایگزین استفاده شود، همان‌طور که در \fIpcp.conf\fR(5) توضیح داده شده است. .SH "گزینه‌های اشکال‌زدایی (DEBUGGING OPTIONS)" گزینه .B \-D یا .B \-\-debug خروجی اطلاعات عیب‌یابی تکمیلی را در .I stderr برای کمک به تفکیک و اولویت‌بندی مشکلات فعال می‌کند، اگرچه این اطلاعات گاهی مبهم بوده و در درجه اول برای راهنمایی توسعه‌دهندگان در نظر گرفته شده است تا کاربران نهایی. .I debug فهرستی از گزینه‌های اشکال‌زدایی جداشده با کاما است؛ از .BR pmdbg (1) همراه با گزینه .B \-l برای دریافت فهرستی از گزینه‌های اشکال‌زدایی موجود و معانی آن‌ها استفاده کنید. .SH "همچنین ببینید (SEE ALSO)" .BR PCPIntro (1)، .BR pmcd (1)، .BR pmstore (1)، .BR dmsetup (8) و .BR dmstats (8). .\" control lines for scripts/man-spell .\" +ok+ writes_merged reads_merged libdevmapper miliseconds in_progress .\" +ok+ write_bytes write_ticks writes_time queue_ticks read_bytes read_ticks .\" +ok+ reads_time devicename hist_count diskstats userspace io_ticks .\" +ok+ looptest dmsetup dmstats kbytes hist .\" +ok+ stat sys {both from /sys/block/*/*/stat. } DM {from DM PMDA } .\" +ok+ rc {from rc.local} dm {from $PCP_PMDAS_DIR/dm}