مدیریت IMT، لاگ SDNAS، NDMP/PAX و tcpdump در Dell PowerStore؛ قسمت دوازدهم

مدیریت IMT و عیب‌یابی NAS در Dell PowerStore در این قسمت از راهنمای Service Scripts بر مجموعه‌ای از ابزارهای Service Mode متمرکز است که برای بررسی File System Import، مشاهده Logهای SDNAS، تحلیل Sessionهای NDMP و PAX، اجرای Packet Capture و تهیه Backup از پیکربندی NAS Server استفاده می‌شوند.

این مقاله ادامه مدیریت NAS، ACL و Data Protection در Dell PowerStore است. در قسمت قبل، ACL، Dynamic Access Control، Data Protection و مدیریت NAS Server بررسی شد و اکنون تمرکز از مدیریت ساختاری NAS به عملیات تشخیصی و بازیابی عمیق‌تر منتقل می‌شود.

خلاصه مقاله

این قسمت نحوه استفاده از Service Scriptهای IMT، SDNAS Log، NDMP/PAX Statistics، Linux tcpdump و NAS Server Configuration Backup را بررسی می‌کند و Stateها، Flagها، محدودیت‌ها و ریسک‌های اجرایی مهم هر ابزار را توضیح می‌دهد.

مسیر مطالعه این راهنما

جایگاه قسمت دوازدهم
  • قسمت یازدهم: مدیریت NAS، ACL و Data Protection در Dell PowerStore
  • قسمت دوازدهم: مدیریت IMT، SDNAS Log، NDMP/PAX، tcpdump و NAS Server Backup 
  • قسمت سیزدهم: عیب‌یابی CIFS در Dell PowerStore

مطالعه قسمت یازدهم برای شناخت زمینه Service Scripts مرتبط با NAS مفید است؛ به‌خصوص اگر هدف، دنبال‌کردن ترتیب ابزارهای NAS در این مجموعه باشد.

محدوده و الزامات Service Scripts این قسمت

ابزارهای این قسمت از نظر Scope، سطح دسترسی و ریسک عملیاتی یکسان نیستند. بیشتر آن‌ها در Service Mode اجرا می‌شوند و در سطح Node فعالیت می‌کنند، در حالی که svc_nas_cbr دامنه Appliance دارد.

مقایسه Scope، دسترسی و ریسک Service Scriptها
Service ScriptکاربردModeScopeService Passwordrootریسک عدم دسترس‌پذیریریسک از دست رفتن داده
nas_svc_imtمدیریت IMT ImportServiceNodeبلهخیربلهخیر
nas_svc_logمشاهده SDNAS LogServiceNodeبلهخیربلهخیر
nas_svc_paxstatsآمار NDMP/PAXServiceNodeبلهخیرخیرخیر
nas_svc_tcpdumpPacket CaptureServiceNodeبلهخیربلهخیر
svc_nas_cbrBackup پیکربندی NAS ServerServiceApplianceخیرخیرخیرخیر

برای مرور جایگاه NAS نسبت به سایر معماری‌های ذخیره‌سازی می‌توان تفاوت NAS، SAN و DAS در ذخیره‌سازی داده را نیز مطالعه کرد.

مدیریت IMT Import با nas_svc_imt

Service Script مربوط به In-band Migration Tool یا IMT برای مدیریت File System Import استفاده می‌شود. یکی از کاربردهای مهم آن بررسی Import متوقف‌شده و رسیدگی به Nodeهایی است که Failure پایدار دارند.

فرمت دستور
svc_nas run nas_svc_imt -h <NAS server name> [-i { <import session id> | --all | --failed}] [-n {id |--all}] [-f] [-s] [-r] [-c] [-d] [-l] [-t]

مشاهده Import Sessionها و Stateهای IMT

گزینه -i یا --show-imports شناسه و State مربوط به File System Importهای NAS Server مشخص‌شده را نمایش می‌دهد. خروجی را می‌توان برای یک Session مشخص، همه Importها یا فقط Importهای Failed محدود کرد.

Stateهای File System Import
Stateمفهوم
MIS_EXECUTINGImport در حال پردازش Active Nodeها است.
MIS_PAUSEDImport توسط کاربر یا به دلیل Fault در حالت Pause قرار دارد.
MIS_WAITING_FOR_RESYNCImport Idle است اما یک یا چند Node دارای Failure پایدار دارد.
MIS_SYNCINGImport Idle است و Failure پایدار ندارد و در انتظار تکمیل است.
MIS_COMPLETEImport با موفقیت کامل شده است.
MIS_CANCELLEDImport لغو شده است.
MIS_FAILEDImport به علت خطای غیرقابل‌بازیابی شکست خورده است.

وقتی State برابر MIS_WAITING_FOR_RESYNC باشد، بررسی Failed Nodeها مرحله بعدی عیب‌یابی است.

شناسایی Failed Node و Dirty File

گزینه -n یا --show-failed-nodes مقدار Identity یا inode و Path مربوط به Nodeهایی را نمایش می‌دهد که Failure پایدار دارند. inode شماره Decimal مربوط به یک Directory یا File در Target File System است.

فرمت دستور
nas_svc_imt <NAS server name> [-n | --show-failed-nodes] {<import session id> | --all}

برای مشاهده Dirty Fileها نیز از -f یا --show-dirty-files استفاده می‌شود.

فرمت دستور
nas_svc_imt <NAS server name> [-f | --show-dirty-files] {<import session id> | --all}

بررسی Node State و اجرای Resync

گزینه -s یا --show-nodes جزئیات Import مربوط به یک یا چند Node مشخص را نمایش می‌دهد.

Stateهای Node در IMT
Node Stateتوضیح
MNS_NONENode بخشی از Import نیست یا هنوز توسط Import کشف نشده است.
MNS_PENDINGNode کشف شده و بخشی از Import است اما هنوز پردازش نشده است.
MNS_FAILEDهنگام پردازش Node یا اعمال Client Modification روی آن خطا رخ داده است.
MNS_MOVINGNode در حال پردازش است.
MNS_MOVEDNode با موفقیت پردازش شده است.
MNS_STREAMNode یک Named Stream متعلق به Import است.

برای Trigger کردن Resync روی یک یا چند Node از -r یا --resync-nodes استفاده می‌شود.

فرمت دستور
nas_svc_imt <NAS server name> [-r | --resync-nodes] <import session id> --node <ino>

اگر Node مشخص‌شده با معادل خود در Source File System تطابق نداشته باشد، یک Task به‌صورت Asynchronous اجرا می‌شود تا Node دوباره Import شود.

Clear یا Drop کردن Failed Nodeها

گزینه -c یا --clear-failed-nodes خطا را روی یک Node دارای Failure پایدار به‌اجبار Clear می‌کند.

فرمت دستور
nas_svc_imt <NAS server name> [-c | --clear-failed-nodes] <import session id> [--yes] --node <ino>
هشدار

Clear اجباری Failed Node ممکن است باعث شود محتوای Source و Target یکسان نباشند. اختلاف‌های ایجادشده باید پس از تکمیل Import به‌صورت دستی برطرف شوند. تأیید عملیات از طریق Interactive Prompt یا تعیین --yes الزامی است.

گزینه -d یا --drop-failed-nodes رفتار متفاوتی دارد.

فرمت دستور
nas_svc_imt <NAS server name> [-d | --drop-failed-nodes] <import session id> [--yes] --node <ino>

در این حالت Node از File System Import کنار گذاشته می‌شود و Import دیگر روی آن پردازشی انجام نمی‌دهد؛ حتی تلاش برای Write نیز صورت نمی‌گیرد. تفاوت میان Source و Target قابل انتظار است و باید پس از تکمیل Import دستی برطرف شود.

مدیریت DHSM Connectionها

IMT امکان بررسی Connectionهای HTTP و HTTPS منتقل‌شده به Destination مربوط به File System Import را فراهم می‌کند.

فرمت دستور
nas_svc_imt <NAS server name> --list-dhsm-conns <import session id>

برای تعیین Connection فعال از Connection ID یا cid استفاده می‌شود.

فرمت دستور
nas_svc_imt <NAS server name> --set-dhsm-conn <import session id> --cid <cid>

مشاهده و فیلترکردن لاگ‌های SDNAS

nas_svc_log برای نمایش Logهای SDNAS استفاده می‌شود. علاوه بر مشاهده همه Logها، می‌توان محدوده زمانی یا Logهای ایجادشده از آخرین اجرای Command را نیز انتخاب کرد.

فرمت دستور
svc_nas run nas_svc_log -h [-f | --full] [-s | --short] [-l | --last <sec>] [-b | --before <sec>] [-n | --new]

Full، Short و بازه زمانی Log

گزینه‌های اصلی nas_svc_log
گزینهکاربرد
-f / --fullهمه Logهای SDNAS موجود را نمایش می‌دهد.
--shortLog فعال را نمایش می‌دهد.
-l / --lastLog مربوط به تعداد ثانیه مشخص‌شده اخیر را نمایش می‌دهد.
-b / --beforeLog قدیمی‌تر از تعداد ثانیه مشخص‌شده را نمایش می‌دهد.
--newLog را از آخرین اجرای nas_svc_log نمایش می‌دهد.

مشاهده Logهای جدید از آخرین اجرا

گزینه --new برای محدودکردن خروجی به Logهایی استفاده می‌شود که از آخرین اجرای nas_svc_log ایجاد یا به‌روزرسانی شده‌اند. این روش باعث می‌شود بدون مرور تمام Logهای SDNAS بتوان تغییرات جدید را مشاهده کرد.

بررسی آمار NDMP و PAX Backup Session

nas_svc_paxstats آمار پیشرفته NDMP و PAX Backup Sessionهای در حال اجرا روی NAS Serverها را نمایش می‌دهد. این Script در Service Mode و Scope سطح Node اجرا می‌شود.

فرمت دستور
svc_nas nas_svc_paxstats { SVDM_A | SVDM_B | ALL } -stats {-reset | -verbose}
انتخاب NAS Server برای PAX Statistics
مقدارمحدوده
SVDM_ANAS Server A
SVDM_BNAS Server B
ALLهر دو NAS Server

گزینه -stats Counterهای آماری NDMP و PAX Backupهای در حال اجرا را نمایش می‌دهد. گزینه -verbose Counterهای آماری پیشرفته‌تر را ارائه می‌کند و -reset Counterهای آماری را Reset می‌کند.

اجرای Linux tcpdump برای عیب‌یابی NAS

nas_svc_tcpdump برای اجرای Linux tcpdump روی System Interface استفاده می‌شود. خروجی Packet Capture در فایل‌های Rotating با اندازه ثابت ذخیره می‌شود و پس از رسیدن هر فایل به Maximum Size، خروجی به فایل بعدی انتقال می‌یابد.

فرمت دستور
svc_nas nas_svc_tcpdump [-h] [-i <interface>] [-w <file name>] [-W <rotations>] [-C <size>] [-s <number of bytes>] [-t {1,2,3,4}] [-v {1,2,3}] [-D] [-F <filter file>] [-e] [-n] [-q] [-T <timeout>] [-p <path>] [-y <data link type>] [-L] [-K <tcpdump session ID>]

Interface، فایل خروجی و Rotation

گزینه -i یا --interface Interface مورد استفاده برای Capture را مشخص می‌کند. Interface پیش‌فرض برای Host Namespace برابر mgmt0 و برای SDNAS برابر eth_mgmt است.

تنظیمات فایل و Rotation در tcpdump
گزینهتوضیح
-w / --filenameBase File Name را مشخص می‌کند. مقدار پیش‌فرض dump.out است.
-W / --rotationsتعداد فایل‌های خروجی را مشخص می‌کند؛ مقدار پیش‌فرض 5 و حداکثر 20 است.
-C / --sizeاندازه هر Output File را بر حسب MB تعیین می‌کند؛ مقدار پیش‌فرض 50 و حداکثر 200 است.

Snap Length، Timestamp و Verbosity

گزینه -s یا --snaplen تعداد Byteهای Captureشده از هر Packet را تعیین می‌کند. مقدار پیش‌فرض 65535 است و مقدار 0 به معنی استفاده از مقدار پیش‌فرض خواهد بود.

گزینه -t نحوه نمایش Timestamp را با مقادیر 1 تا 4 کنترل می‌کند؛ از حذف کامل Timestamp تا نمایش Date و Timestamp با Format پیش‌فرض. گزینه -v نیز سطح Verbosity را مشخص می‌کند و مقدار 3 بیشترین Verbosity را دارد.

Filter، Address Resolution و Timeout

گزینه‌های تشخیصی tcpdump
گزینهکاربرد
-DNetwork Interfaceهای قابل استفاده برای Packet Capture را فهرست می‌کند.
-Fیک فایل را به‌عنوان Filter Expression استفاده می‌کند.
-eLink-level Header را روی هر Dump Line چاپ می‌کند.
-nاز تبدیل Address و Port Number به Name جلوگیری می‌کند.
-qProtocol Information را خلاصه می‌کند تا Output Line کوتاه‌تر شود.
-TTimeout Trace را با قالب عدد و واحد زمان مشخص می‌کند.

نمونه‌های Timeout شامل 30s، 10m، 5h و 2d هستند. مقدار no باعث ادامه Trace بدون Timeout می‌شود و مقدار پیش‌فرض نیز no است.

مسیر پیش‌فرض Output File برابر /opt/sdnas/log/svc_output است. Path تعیین‌شده باید یک Directory موجود در زیر همین مسیر باشد.

مدیریت Sessionهای فعال tcpdump

گزینه -L یا --list Sessionهای فعال tcpdump را فهرست می‌کند. گزینه -K یا --kill نیز برای متوقف‌کردن همه Sessionها یا یک Session مشخص بر اساس ID استفاده می‌شود.

پشتیبان‌گیری از پیکربندی NAS Server با svc_nas_cbr

svc_nas_cbr امکان Backup گرفتن از همه پیکربندی‌های NAS Server در Cluster و مشاهده پیکربندی‌های Backupشده قبلی را فراهم می‌کند. هنگام اجرای Script، Backup Archive با فرمت .tar ایجاد می‌شود.

فرمت دستور
svc_nas_cbr [-h] [-b]

گزینه -b یا --backup برای ایجاد Backup از پیکربندی NAS Server استفاده می‌شود.

نمونه دستور
svc_nas_cbr --backup

در نمونه ارائه‌شده، Archive با نام SDNAS_cbr_data_20190502_102926UTC.tar روی Node مربوطه ایجاد می‌شود.

نکته

برای Restore کردن NAS Server با استفاده از Backup Archive باید با Service Provider تماس گرفته شود. این Service Script فرایند ایجاد Backup را پوشش می‌دهد.

نکات و محدودیت‌های عملیاتی مهم

  • IMT، SDNAS Log و tcpdump در Service Mode و Scope سطح Node قرار دارند و در مشخصات آن‌ها احتمال عدم دسترس‌پذیری داده بله اعلام شده است.
  • PAX Statistics در Service Mode و Node Scope اجرا می‌شود، اما برای آن احتمال عدم دسترس‌پذیری یا از دست رفتن داده اعلام نشده است.
  • svc_nas_cbr در سطح Appliance اجرا می‌شود و Service Password یا root Access نیاز ندارد.
  • Clear یا Drop کردن Failed Node در IMT می‌تواند موجب تفاوت میان Source و Target شود و این اختلاف باید بعد از تکمیل Import دستی برطرف شود.
  • Resync در صورت عدم تطابق Node با Source به شکل Asynchronous اجرا می‌شود.
  • Output مربوط به tcpdump به‌شکل Rotating File مدیریت می‌شود و تعداد و اندازه فایل‌ها با -W و -C کنترل می‌شوند.
  • Restore پیکربندی NAS Server از CBR Archive نیازمند Service Provider است.
محصولات مرتبط

جمع‌بندی مدیریت و عیب‌یابی NAS در این قسمت

قسمت دوازدهم Service Scripts پنج حوزه عملیاتی نزدیک به یکدیگر را پوشش می‌دهد. nas_svc_imt برای بررسی و اصلاح وضعیت Import، nas_svc_log برای تحلیل SDNAS Log، nas_svc_paxstats برای مشاهده آمار NDMP و PAX، nas_svc_tcpdump برای Packet Capture و svc_nas_cbr برای ایجاد Backup از پیکربندی NAS Server استفاده می‌شوند.

بخش حساس‌تر این مجموعه، عملیات Clear و Drop روی Failed Nodeهای IMT و همچنین Packet Capture سطح Service است. در مقابل، PAX Statistics و CBR بیشتر برای مشاهده وضعیت و ثبت اطلاعات موردنیاز عیب‌یابی یا بازیابی به‌کار می‌روند.

ادامه این مجموعه در قسمت سیزدهم به عیب‌یابی CIFS در Dell PowerStore اختصاص دارد.

سوالات متداول

تفاوت MIS_WAITING_FOR_RESYNC و MIS_SYNCING در IMT چیست؟

MIS_WAITING_FOR_RESYNC یعنی Import در حالت Idle است اما حداقل یک Node با Failure پایدار وجود دارد. MIS_SYNCING یعنی Import Idle است، Failure پایدار وجود ندارد و فرایند در انتظار تکمیل است.

Clear کردن Failed Node چه تفاوتی با Drop کردن آن دارد؟

Clear کردن Failure اجازه ادامه فرایند را می‌دهد اما ممکن است Source و Target یکسان نباشند. Drop کردن باعث می‌شود Import دیگر آن Node را پردازش یا روی آن Write نکند. در هر دو سناریو ممکن است اصلاح دستی اختلاف‌ها لازم باشد.

گزینه --new در SDNAS Log چه کاربردی دارد؟

Logهایی را نمایش می‌دهد که از آخرین اجرای nas_svc_log ایجاد یا به‌روزرسانی شده‌اند.

آمار PAX و NDMP را برای هر دو NAS Server چگونه می‌توان مشاهده کرد؟

در nas_svc_paxstats مقدار ALL هر دو NAS Server را پوشش می‌دهد و گزینه -stats Counterهای Sessionهای در حال اجرا را نمایش می‌دهد.

حداکثر تعداد و اندازه فایل‌های tcpdump چقدر است؟

مقدار پیش‌فرض Rotation برابر 5 فایل و حداکثر آن 20 فایل است. اندازه پیش‌فرض هر فایل 50 MB و حداکثر 200 MB است.

اگر برای tcpdump هیچ Timeout مشخص نشود چه اتفاقی می‌افتد؟

مقدار پیش‌فرض Timeout برابر no است؛ بنابراین Trace بدون Timeout تعیین‌شده ادامه پیدا می‌کند.

آیا svc_nas_cbr عملیات Restore را هم انجام می‌دهد؟

خیر. این Script برای ایجاد Backup Archive پیکربندی NAS Server استفاده می‌شود. برای Restore از Backup Archive باید با Service Provider تماس گرفته شود.

ادامه مسیر Service Scripts و بررسی زیرساخت NAS

برای ادامه این مجموعه، قسمت سیزدهم به عیب‌یابی CIFS در Dell PowerStore اختصاص دارد. برای بررسی معماری NAS، پیاده‌سازی Storage یا عیب‌یابی تخصصی محیط PowerStore می‌توانید از خدمات تخصصی ذخیره‌سازی آکو استفاده کنید.

خدمات ذخیره‌سازی سازمانی آکو