| IBQUERYERRORS(8) | OpenIB Diagnostics | IBQUERYERRORS(8) |
نام (NAME)
ibqueryerrors - پرسوجو و گزارش شمارندههای خطای درگاه IB
خلاصه دستور (SYNOPSIS)
ibqueryerrors [گزینهها]
توضیحات (DESCRIPTION)
رفتار پیشفرض، گزارش شمارندههای خطای درگاه است که برای هر درگاه در ساختار شبکه (fabric)، از یک مقدار آستانه معین فراتر میروند. مقدار آستانه پیشفرض صفر (0) است. فیلدهای خطا را میتوان بهطور کامل نیز نادیده گرفت (سرکوب کرد).
علاوه بر گزارش خطاها روی هر درگاه، دستور ibqueryerrors میتواند دادههای ارسالی و دریافتی درگاه و همچنین اطلاعات کامل پیوند به درگاه راه دور را (در صورت در دسترس بودن) گزارش کند.
گزینهها (OPTIONS)
-s, --suppress <err1,err2,...> خطاهای مشخصشده در فهرست ارائهشده که با کاما از هم جدا شدهاند را نادیده میگیرد (سرکوب میکند).
-c, --suppress-common برخی از شمارندههای رایج «اثر جانبی» را نادیده میگیرد. این شمارندهها معمولاً نشاندهنده وضعیت خطا نیستند و در اکثر مواقع میتوان با اطمینان از آنها چشمپوشی کرد.
-r, --report-port اطلاعات درگاه را گزارش میدهد. این اطلاعات شامل LID، درگاه، درگاه خارجی (در صورت وجود)، تنظیمات سرعت پیوند، GUID راه دور، درگاه راه دور، درگاه خارجی راه دور (در صورت وجود) و اطلاعات شرح گره راه دور است.
--data شمارندههای اختیاری دادههای ارسالی و دریافتی را نیز شامل میشود.
--threshold-file <filename> یک فایل آستانه جایگزین را مشخص میکند. پیشفرض /etc/infiniband-diags/error_thresholds است.
--switch دادهها را فقط برای سوییچها چاپ میکند
--ca دادهها را فقط برای CAها (تطبیقدهندههای کانال) چاپ میکند
--skip-sl از sl پیشفرض برای پرسوجوها استفاده میکند. هنگام استفاده از موتور مسیریابی آگاه از کیفیت خدمات (QoS)، استفاده از این گزینه توصیه نمیشود زیرا میتواند باعث بنبست اعتباری (credit deadlock) شود.
--router دادهها را فقط برای مسیریابها چاپ میکند
--clear-errors -k پس از خواندن، شمارندههای خطا را پاک میکند.
--clear-counts -K پس از خواندن، شمارندههای داده را پاک میکند.
هشدار: پاک کردن شمارندههای داده یا خطا بدون در نظر گرفتن اینکه چاپ شوند یا خیر اتفاق میافتد. برای جزئیات مربوط به کنترل اینکه کدام شمارندهها چاپ شوند، --counters و --data را ببینید.
--details شامل جزئیات خطاهای دریافتی و بستههای دور ریختهشده ارسالی (transmit discard) میشود
--counters فقط شمارندههای داده را چاپ میکند
فلگهای پویش جزئی (Partial Scan flags)
گره مورد نظر برای شروع پویش جزئی را میتوان با آدرسهای زیر مشخص کرد.
--port-guid, -G <port_guid> یک port_guid را مشخص میکند
-D, --Direct <dr_path> آدرس مشخصشده یک مسیر هدایتشده (directed route) است
مثالها: -D "0" # درگاه خود گره (self port) -D "0,1,2,1,4" # خروج از طریق درگاه ۱، سپس ۲، ... (توجه داشته باشید که عدد دوم در مسیر مشخصشده باید با درگاه مورد استفاده مطابقت داشته باشد. این مقدار را میتوان با فلگ انتخاب درگاه '-P' یا درگاه پیداشده از طریق فرآیند انتخاب خودکار مشخص کرد.)
نکته: برای سوییچها، نتایج برای همه درگاهها چاپ میشوند، نه فقط درگاه ۰ سوییچ.
-S <port_guid> همانند "-G" عمل میکند (تنها برای سازگاری با نسخههای پیشین ارائه شده است).
فلگهای فایل حافظه موقت (Cache File flags)
--load-cache <filename> دادههای ذخیرهشده کش ibnetdiscover در فایل مشخصشده را بارگذاری و استفاده میکند. این گزینه میتواند برای خروجی گرفتن و کسب اطلاعات درباره ساختارهای دیگر یا وضعیت پیشین یک ساختار شبکه مفید باشد.
فلگهای انتخاب درگاه (Port Selection flags)
-C, --Ca <ca_name> از ca_name مشخصشده استفاده میکند.
-P, --Port <ca_port> از ca_port مشخصشده استفاده میکند.
- -Y, --pkey-idx <idx>
- نمایه جدول P_Key (از 0-65535، پیشفرض 0) که برای MADهای خروجی SA/GMP استفاده میشود. بستههای MAD از نوع SMP (شامل مسیر هدایتشده SMI / مسیریابیشده با LID) همواره از نمایه P_Key برابر با 0 استفاده میکنند.
انتخاب درگاه محلی (Local port Selection)
پشتیبانی از چند درگاه / چند CA: زمانی که هیچ دستگاه یا درگاه IB مشخص نشده باشد (بخش «پارامترهای محلی umad» را در زیر ببینید)، کتابخانه libibumad درگاه مورد استفاده را بر اساس معیارهای زیر انتخاب میکند:
- 1.
- نخستین درگاهی که در وضعیت ACTIVE (فعال) باشد.
- 2.
- در صورت پیدا نشدن، نخستین درگاهی که در وضعیت UP (پیوند فیزیکی برقرار) باشد.
اگر نام درگاه یا CA مشخص شده باشد، کتابخانه libibumad تلاش میکند درخواست کاربر را برآورده سازد و در صورتی که ممکن نباشد، با شکست مواجه میشود.
برای مثال:
ibaddr # استفاده از نخستین درگاه (معیار شماره ۱ در بالا) ibaddr -C mthca1 # انتخاب بهترین درگاه فقط از "mthca1" ibaddr -P 2 # استفاده از دومین درگاه (active/up) از نخستین دستگاه IB موجود ibaddr -C mthca0 -P 2 # استفاده انحصاری از درگاه مشخصشده
فلگهای پیکربندی (Configuration flags)
--config, -z <config_file> فایل پیکربندی جایگزین را مشخص میکند.
- --outstanding_smps, -o <val>
- تعداد SMPهای
معوق (outstanding) که
باید در طول
پویش صادر
شوند را
مشخص
میکند.
پیشفرض: 2
--node-name-map <node-name-map> یک نگاشت نام گره را مشخص میکند.
-t, --timeout <timeout_ms> مهلت زمانی پیشفرض را برای MADهای تقاضاشده لغو و مقدار جدید تعیین میکند.
- -y, --m_key <key>
- از M_key مشخصشده برای درخواستها استفاده میکند. اگر مقداری غیرعددی (مانند 'x') مشخص شود، مقدار مورد نظر از کاربر درخواست خواهد شد.
فلگهای اشکالزدایی (Debugging flags)
- -d
- سطح اشکالزدایی IB را افزایش میدهد. میتواند چندین بار استفاده شود (-ddd یا -d -d -d).
- -e
- نمایش خطاهای ارسال و دریافت (اتمام مهلت زمانی و سایر موارد)
-h, --help نمایش پیام راهنما
- -v, --verbose
- سطح پرگویی برنامه را افزایش میدهد. میتواند چندین بار استفاده شود (-vv یا -v -v -v)
-V, --version اطلاعات نگارش را نمایش میدهد.
-R (این گزینه منسوخ شده است و هیچ کاری انجام نمیدهد)
وضعیت خروج (EXIT STATUS)
-1 در صورتی که پویش شکست بخورد.
0 در صورتی که پویش بدون خطاهای فراتر از آستانه با موفقیت انجام شود.
1 در صورتی که خطاهای فراتر از آستانه یافت شوند یا در حالت بررسی ناهماهنگیهایی پیدا شود.
فایلها (FILES)
آستانه خطا (ERROR THRESHOLD)
/etc/infiniband-diags/error_thresholds
مقادیر آستانه برای خطاها را تعریف میکند. قالب فایل بهصورت ساده "name=val" است. توضیحات با '#' آغاز میشوند.
مثال:
# تعیین آستانهها برای شمارندههای خطا SymbolErrorCounter=10 LinkErrorRecoveryCounter=10 VL15Dropped=100
فایل پیکربندی (CONFIG FILE)
/etc/infiniband-diags/ibdiag.conf
یک فایل پیکربندی سراسری برای تنظیم برخی از گزینههای مشترک برای همه ابزارها ارائه شده است. برای جزئیات به فایل پیکربندی ارائهشده مراجعه کنید.
قالب فایل نگاشت نام گره (NODE NAME MAP FILE FORMAT)
فایل نگاشت نام گره برای مشخص کردن نامهای کاربرپسند برای گرهها در خروجی استفاده میشود. برای انجام جستجو از GUIDها استفاده میشود.
این قابلیت توسط بسته opensm-libs ارائه شده است. برای محل فایل در نصب خود به opensm(8) مراجعه کنید.
بهطور کلی:
# توضیحات <guid> "<name>"
مثال:
# IB1 # کارتهای خط (Line cards) 0x0008f104003f125c "IB1 (Rack 11 slot 1 ) ISR9288/ISR9096 Voltaire sLB-24D" 0x0008f104003f125d "IB1 (Rack 11 slot 1 ) ISR9288/ISR9096 Voltaire sLB-24D" 0x0008f104003f10d2 "IB1 (Rack 11 slot 2 ) ISR9288/ISR9096 Voltaire sLB-24D" 0x0008f104003f10d3 "IB1 (Rack 11 slot 2 ) ISR9288/ISR9096 Voltaire sLB-24D" 0x0008f104003f10bf "IB1 (Rack 11 slot 12 ) ISR9288/ISR9096 Voltaire sLB-24D" # ستونهای اصلی (Spines) 0x0008f10400400e2d "IB1 (Rack 11 spine 1 ) ISR9288 Voltaire sFB-12D" 0x0008f10400400e2e "IB1 (Rack 11 spine 1 ) ISR9288 Voltaire sFB-12D" 0x0008f10400400e2f "IB1 (Rack 11 spine 1 ) ISR9288 Voltaire sFB-12D" 0x0008f10400400e31 "IB1 (Rack 11 spine 2 ) ISR9288 Voltaire sFB-12D" 0x0008f10400400e32 "IB1 (Rack 11 spine 2 ) ISR9288 Voltaire sFB-12D" # GUID Node Name 0x0008f10400411a08 "SW1 (Rack 3) ISR9024 Voltaire 9024D" 0x0008f10400411a28 "SW2 (Rack 3) ISR9024 Voltaire 9024D" 0x0008f10400411a34 "SW3 (Rack 3) ISR9024 Voltaire 9024D" 0x0008f104004119d0 "SW4 (Rack 3) ISR9024 Voltaire 9024D"
نویسنده (AUTHOR)
- Ira Weiny
- < <ira.weiny@intel.com> >
| 2016-09-26 |