PMFIND(1) General Commands Manual PMFIND(1)

pmfind - یافتن سرویس‌های PCP در شبکه

pmfind [-CqrSV?] [-D debug] [-m mechanism] [-s service] [-t timeout]

دستور pmfind به دنبال نمونه‌هایی از سرویس‌های مشخص‌شدهٔ PCP که در شبکه اعلان (advertise) شده‌اند می‌گردد و فهرستی از نشانی‌های وب (URL) متناظر با سرویس‌های کشف‌شده را چاپ می‌کند. این ابزار می‌تواند در ترکیب با pmfind_check(1) برای خودکارسازی پایش سامانه‌های گردآورندهٔ (collector) راه دور PCP به کار رود.

گزینه‌های خط فرمان موجود عبارتند از:

برای هر سرویس pmcd(1) کشف‌شده، فرایند کشف کانتینرها را نیز انجام می‌دهد.
این گزینه mechanism (سازوکار) مورد استفادهٔ pmfind را هنگام اجرای فرایند کشف سرویس تعیین می‌کند. به‌طور پیش‌فرض، یا در صورتی که کلیدواژهٔ all مشخص شود، تمام سازوکارهای موجود (به‌صورت تکرارشونده) استفاده خواهند شد. برای مشاهدهٔ توضیحات مربوط به هر یک از سازوکارهای کشف موجود، به بخش «سازوکارها (MECHANISMS)» مراجعه کنید.
این گزینه از نمایش تمام خروجی‌ها در جریان خروجی استاندارد جلوگیری می‌کند.
درخواست می‌کند که تفکیک نام DNS برای نشانی‌های هر یک از سرویس‌های کشف‌شده انجام شود. حالت پیش‌فرض، نمایش نشانی‌های شبکه برای سرویس‌های کشف‌شده است.
به‌طور پیش‌فرض pmfind تمام سرویس‌های پشتیبانی‌شدهٔ PCP را جستجو می‌کند، اما می‌توان با استفاده از گزینهٔ -s یک service خاص PCP را برای کشف مشخص کرد. سرویس‌های پشتیبانی‌شده عبارتند از pmcd(1) و pmproxy(1).
شناسه‌های منبع (source identifiers) را برای هر سرویس pmcd(1) کشف‌شده گزارش می‌دهد. این شناسه‌ها برای هر میزبان یکتا هستند و با استفاده از برچسب‌های زمینه (اجباری) موجود برای هر گردآورندهٔ PCP ساخته می‌شوند. از آنجا که فرایند کشف اغلب چندین مسیر را به یک میزبان گردآورنده شناسایی می‌کند، این گزینه بخش مهمی از فرایند استفاده از pmfind در ترکیب با pmfind_check(1) است تا اطمینان حاصل شود که به ازای هر میزبان گردآورندهٔ کشف‌شده تنها یک فرایند pmie(1) و/یا pmlogger(1) راه‌اندازی می‌شود. شناسه‌های منبع گزارش‌شده توسط pmfind همان شناسه‌های منبع گزارش‌شده توسط دستورهای pminfo(1) و pmseries(1) هستند.
حداکثر مدت زمان بر حسب ثانیه ( seconds) را تعیین می‌کند که pmfind پیش از متوقف کردن فرایند کشف سرویس صرف خواهد کرد. آرگومان time یک عدد ممیز شناور است که نشان‌دهندهٔ تعداد ثانیه‌ها پیش از اتمام مهلت زمانی (timeout) است. حالت پیش‌فرض، صرف هر مقدار زمانی است که برای تکمیل فرایند نیاز باشد.
نمایش شماره نسخه و خروج.
-?, --help
نمایش پیام راهنما و خروج.

سازوکارهای پشتیبانی‌شده برای کشف سرویس عبارتند از:

زیرشبکهٔ (subnet) داده‌شده را به‌طور فعال برای سرویس(های) درخواستی PCP کاوش (probe) می‌کند. <net-address> یک نشانی شبکه از نوع Inet یا IPv6 است و <mask-bits> تعداد بیت‌های استفاده‌شده برای تعریف زیرشبکه است. به‌عنوان مثال، 192.168.1.0/24 یک زیرشبکهٔ ۸ بیتی شامل نشانی‌های 192.168.1.0 تا 192.168.1.255 را تعریف می‌کند. یک پسوند اختیاری ",maxThreads=N" می‌تواند برای محدود کردن تعداد نخ‌های (threads) استفاده‌شده هنگام کاوش اضافه شود. مقدار پیش‌فرض، مقدار FD_SETSIZE (که معمولاً 1024 است) یا تعداد نشانی‌های موجود در زیرشبکه است، هر کدام که کمتر باشد. یک پسوند اختیاری ",timeout=N" می‌تواند برای محدود کردن مدت زمان انتظار برای هر تلاش اتصال اضافه شود. N یک عدد ممیز شناور است که تعداد ثانیه‌ها برای انتظار را مشخص می‌کند. مقدار پیش‌فرض 0.02 ثانیه (20 میلی‌ثانیه) است.
فهرست نشانی‌های ارائه‌شده توسط اسکریپت‌ها را برای سرویس(های) درخواستی PCP کاوش می‌کند. همچنین چندین پارامتر اختیاری که با کاما از هم جدا می‌شوند را می‌توان مشخص کرد. گزینهٔ "path=DIR" دایرکتوری‌ای را که دستورهایی مانند pcp-kube-pods(1) در آن قرار دارند مشخص می‌کند (پیش‌فرض به $PCP_BINADM_DIR/discover/ است). این تنظیم را می‌توان با استفاده از گزینهٔ command=CMD به یک دستور مشخص نیز محدود کرد، اما حالت پیش‌فرض استفاده از تمام دستورهای موجود در path است. گزینهٔ "maxThreads=N" تعداد نخ‌های استفاده‌شده هنگام کاوش را محدود می‌کند. مقدار پیش‌فرض، مقدار FD_SETSIZE (که معمولاً 1024 است) یا تعداد نشانی‌های بازگردانده‌شده توسط اسکریپت‌ها است، هر کدام که کمتر باشد. گزینهٔ "timeout=N" می‌تواند برای محدود کردن مدت زمان انتظار برای هر تلاش اتصال اضافه شود. N یک عدد ممیز شناور است که تعداد ثانیه‌ها برای انتظار را مشخص می‌کند. مقدار پیش‌فرض 0.02 ثانیه (20 میلی‌ثانیه) است.

دستور pmfind هنگام دریافت یکی از سیگنال‌های زیر، فرایند کشف سرویس را متوقف خواهد کرد: SIGHUP، SIGPIPE، SIGINT، SIGTERM، SIGXFSZ، SIGXCPU. ابزار pmfind هرگونه نتیجه‌ای را که تا زمان توقف کشف شده باشد گزارش خواهد کرد.

مقدار وضعیت خروج این دستور در صورتی که سرویس‌ها با موفقیت پیدا شوند صفر، اگر هیچ سرویسی یافت نشود یک، و در صورت بروز خطا دو است.

در صورت بروز خطا، پیامی در خروجی خطای استاندارد (standard error) تولید می‌شود که خودتوضیح خواهد بود.

$PCP_BINADM_DIR/discover
مسیر پیش‌فرض برای اسکریپت‌های کشف نشانی

متغیرهای محیطی با پیشوند PCP_ برای پارامتریک کردن نام فایل‌ها و دایرکتوری‌های مورد استفادهٔ PCP به کار می‌روند. در هر نصب، فایل /etc/pcp.conf حاوی مقادیر محلی برای این متغیرها است. متغیر $PCP_CONF می‌تواند برای مشخص کردن یک فایل پیکربندی جایگزین استفاده شود، همان‌طور که در pcp.conf(5) توضیح داده شده است.

گزینهٔ -D یا --debug خروجی عیب‌یابی‌های اضافی را در stderr فعال می‌کند تا به تفکیک و بررسی مشکلات کمک کند، اگرچه اطلاعات خروجی گاهی مبهم است و در وهله اول برای راهنمایی توسعه‌دهندگان در نظر گرفته شده است تا کاربران نهایی. debug فهرستی از گزینه‌های اشکال‌زدایی است که با کاما از هم جدا شده‌اند؛ از دستور pmdbg(1) به همراه گزینهٔ -l برای دریافت فهرستی از گزینه‌های اشکال‌زدایی موجود و معانی آن‌ها استفاده کنید.

PCPIntro(1)، pmcd(1)، pmfind_check(1)، pmie(1)، pminfo(1)، pmlogger(1)، pmproxy(1)، pmseries(1)، pcp-kube-pods(1)، PMAPI(3)، PMWEBAPI(3)، pmDiscoverServices(3)، pcp.conf(5) و pcp.env(5).

PCP Performance Co-Pilot