| slurmctld(8) | Slurm Daemon | slurmctld(8) |
نام (NAME)
slurmctld - دیمن مدیریت مرکزی Slurm.
خلاصه دستور (SYNOPSIS)
slurmctld [OPTIONS...]
توضیحات (DESCRIPTION)
slurmctld دیمن مدیریت مرکزی Slurm است. این دیمن تمام دیمنها و منابع دیگر Slurm را نظارت میکند، کارها (jobها) را میپذیرد و منابع را به آن کارها تخصیص میدهد. با توجه به اهمیت حیاتی عملکرد slurmctld، ممکن است یک سرور پشتیبان (backup) وجود داشته باشد تا در صورت بروز خرابی در سرور اصلی، این وظایف را بر عهده بگیرد.
گزینهها (OPTIONS)
- -c
- پاکسازی تمام وضعیتهای قبلی slurmctld از آخرین نقطه بازرسی (checkpoint). با استفاده از این گزینه، تمام کارها، اعم از در حال اجرا و در صف انتظار، و وضعیت تمام گرهها حذف خواهند شد. بدون این گزینه، کارهای در حال اجرای قبلی همراه با State گرههای DOWN، DRAINED و DRAINING و فیلد Reason مربوط به آن گرهها حفظ خواهند شد. توجه: به ندرت ممکن است مایل به استفاده از این گزینه در محیط عملیاتی باشید زیرا تمام کارها خاتمه داده خواهند شد.
- -D
- اجرای slurmctld در پیشزمینه با ارسال گزارشها به stderr. این امر تابآوری 'scontrol reconfigure' را محدود میکند و باید در محیط عملیاتی از آن اجتناب شود.
- -f <file>
- خواندن پیکربندی از فایل مشخصشده. به بخش نکات (NOTES) در زیر مراجعه کنید.
- -h
- راهنما؛ چاپ خلاصهای کوتاه از گزینههای دستور.
- -i
- نادیده گرفتن خطاهای یافتشده هنگام خواندن فایلهای وضعیت در زمان راهاندازی. هشدار: استفاده از این گزینه به معنای از دست رفتن دادههایی است که از فایلهای وضعیت بازیابی نشدهاند.
- -L <file>
- نوشتن پیامهای گزارش در فایل مشخصشده.
- -n <value>
- تنظیم مقدار nice دیمن به مقدار تعیینشده، که معمولاً عددی منفی است.
- -r
- بازیابی وضعیت جزئی از آخرین نقطه بازرسی: کارها و وضعیت DOWN/DRAIN گرهها و اطلاعات دلیل آنها. هیچ وضعیتی از پارتیشنها بازیابی نمیشود. این رفتار پیشفرض است.
- -R
- بازیابی وضعیت کامل از آخرین نقطه بازرسی: وضعیت کارها، گرهها، پارتیشنها و تنظیمات صرفهجویی در مصرف انرژی (power save). بدون این گزینه، کارهای در حال اجرای قبلی همراه با State گرههای DOWN، DRAINED و DRAINING و فیلد Reason مربوط به آن گرهها حفظ خواهند شد. هیچ وضعیت دیگری از گرهها یا پارتیشنها حفظ نخواهد شد.
- -s
- تغییر دایرکتوری کاری slurmctld به مسیر SlurmctldLogFile در صورت امکان، یا در غیر این صورت به StateSaveLocation در Slurm. اگر هر دو ناموفق باشند، به مسیر /var/tmp بازمیگردد.
- --systemd
- استفاده
هنگام
راهاندازی
دیمن با systemd.
این گزینه
به slurmctld اجازه
میدهد تا
هنگام
استفاده از
'scontrol reconfigure' مقدار PID
جدید را به systemd
اطلاع دهد.
توجه: گزینههای User و Group در فایل واحد systemd مربوط به slurmctld باید هر دو SlurmUser را مشخص کنند.
- -v
- عملیات پرحرف (verbose). میتوان چندین v تعیین کرد که هر 'v' پس از حرف اول، سطح جزئیات را افزایش میدهد، تا حداکثر ۶ بار (یعنی -vvvvvv).
- -V
- چاپ اطلاعات نسخه و خروج.
متغیرهای محیطی (ENVIRONMENT VARIABLES)
متغیرهای محیطی زیر میتوانند برای لغو تنظیمات کامپایلشده در slurmctld استفاده شوند.
- ABORT_ON_FATAL
- هنگامی که یک خطای مهلک تشخیص داده میشود، به جای exit() از abort() برای خاتمه دادن به فرآیند استفاده شود. این امر امکان دریافت backtraceها را بدون نیاز به کامپایل مجدد Slurm فراهم میکند.
- SLURM_CONF
- مسیر فایل پیکربندی Slurm. این مقدار با مشخص کردن صریح فایل پیکربندی در خط فرمان لغو میشود.
- SLURM_DEBUG_FLAGS
- تعیین فلگهای اشکالزدایی برای استفاده توسط زمانبند (scheduler). برای فهرست کامل فلگها، DebugFlags را در صفحه راهنمای slurm.conf(5) ببینید. مقدار متغیر محیطی بر تنظیم موجود در slurm.conf اولویت دارد.
کارگزار HTTP (HTTP server)
مگر اینکه از طریق CommunicationParameters=disable_http در slurm.conf غیرفعال شده باشد، slurmctld درخواستهای ورودی منطبق بر پروتکل HTTP/1.1 را روی هر سوکت گوشدهندهای که با SlurmctldPort در slurm.conf پیکربندی شده است میپذیرد. احراز هویت درخواستهای HTTP پشتیبانی نمیشود. پوشش TLS به صورت اختیاری و بدون نیاز به TLSType در slurm.conf پشتیبانی میشود. در حال حاضر نقاط پایانی (endpoints) زیر پشتیبانی میشوند:
- GET /
- دریافت فهرست نقاط پایانی.
- GET /healthz
- بررسی اینکه آیا slurmctld با موفقیت بارگذاری شده است یا خیر.
- GET /livez
- بررسی اینکه آیا slurmctld با موفقیت بارگذاری شده است یا خیر.
- GET /readyz[?verbose]
- بررسی اینکه آیا slurmctld آماده پذیرش RPCهای ورودی است یا خیر. افزودن پارامتر پرسمان verbose منجر به خروجی با جزئیات کامل برای هر کاوش در پاسخ خواهد شد.
- GET /metrics/jobs
- دریافت معیارهای کارها (jobs).
- GET /metrics/nodes
- دریافت معیارهای گرهها (nodes).
- GET /metrics/partitions
- دریافت معیارهای پارتیشنها (partitions).
- GET /metrics/scheduler
- بازگرداندن معیارهای زمانبند (scheduler).
- GET /metrics/jobs-users-accts
- بازگرداندن معیارهای کارها بر اساس کاربر و حساب کاربری.
هنگامی که چندین مدخل SlurmctldHost پیکربندی شده باشد، دیمنی که در حالت آمادهباش (standby) قرار دارد به GET /metrics* با کد وضعیت HTTP 303 "See Other" پاسخ میدهد و هدر Location آن به همان مسیر و پرسمان روی اولین کنترلکننده فهرستشده اشاره میکند. اگر چنین آدرسی در دسترس نباشد، پاسخ به جای تغییر مسیر، HTTP 503 "Service Unavailable" خواهد بود. به مدخل SlurmctldHost در slurm.conf(5) مراجعه کنید.
محل فایل هسته (CORE FILE LOCATION)
اگر slurmctld با گزینه -D راهاندازی شود، فایل core در دایرکتوری کاری فعلی نوشته خواهد شد. در غیر این صورت، اگر SlurmctldLogFile یک مسیر کامل باشد (که با اسلش شروع میشود)، در صورتی که SlurmUser مجوز نوشتن در آن دایرکتوری را داشته باشد، فایل core در همان دایرکتوری فایل لاگ نوشته خواهد شد. در غیر این صورت، فایل core در StateSaveLocation یا به عنوان آخرین راهکار در "/var/tmp/" نوشته میشود. اگر هیچیک از دایرکتوریهای فوق مجوز نوشتن برای SlurmUser نداشته باشند، هیچ فایل core تولید نخواهد شد.
سیگنالها (SIGNALS)
- SIGTERM SIGINT SIGQUIT
- slurmctld به طور تمیز متوقف میشود و وضعیت فعلی خود را در دایرکتوری ذخیره وضعیت ذخیره میکند.
- SIGABRT
- slurmctld به طور تمیز متوقف میشود، وضعیت فعلی خود را ذخیره میکند و یک core dump انجام میدهد.
- SIGHUP
- فایلهای پیکربندی slurm را مجدداً بارگذاری میکند، مشابه دستور 'scontrol reconfigure'.
- SIGTSTP
- متوقف کردن فرآیند از یک ترمینال. این کار همچنین slurmscriptd را متوقف میکند.
- SIGUSR2
- خواندن مجدد سطح گزارشگیری از پیکربندیها و سپس باز کردن مجدد فایل لاگ. این سیگنال باید هنگام راهاندازی logrotate(8) استفاده شود.
- SIGPROF
- ثبت وضعیت مدیر اتصال در لاگ هنگامی که سطح اشکالزدایی حداقل info باشد.
- SIGCHLD SIGUSR1 SIGXCPU SIGPIPE SIGALRM
- این سیگنالها صراحتاً نادیده گرفته میشوند.
نکات (NOTES)
آزمایش پارامترهای پیکربندی خاص slurmctld با استفاده از یک فایل پیکربندی مجزا (مانند زمانهای انتظار timeout) ممکن است مفید باشد. با این حال، این فایل پیکربندی ویژه توسط دیمن slurmd یا برنامههای Slurm استفاده نخواهد شد، مگر اینکه به طور صریح به هر یک از آنها اعلام کنید که از آن استفاده کنند. اگر تمایل دارید درگاههای ارتباطی، مکان فایلسیستم موقت یا سایر پارامترهای مورداستفاده سایر مؤلفههای Slurm را تغییر دهید، فایل پیکربندی مشترک یعنی slurm.conf را تغییر دهید.
کپیرایت (COPYING)
Copyright (C) 2002-2007 The Regents of the University of
California.
Copyright (C) 2008-2010 Lawrence Livermore National Security.
Copyright (C) 2010-2022 SchedMD LLC.
Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
CODE-OCEC-09-009. All rights reserved.
این فایل بخشی از Slurm است که یک برنامه مدیریت منابع میباشد. برای جزئیات بیشتر، به https://slurm.schedmd.com مراجعه کنید.
نرمافزار Slurm یک نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط «مجوز عمومی همگانی گنو» (GNU General Public License) همانطور که توسط «بنیاد نرمافزارهای آزاد» منتشر شده است، چه نسخه ۲ مجوز و چه (به انتخاب خودتان) هر نسخه بعدی، بازتوزیع کرده و/یا تغییر دهید.
توزیع Slurm به این امید انجام شده است که مفید واقع شود، اما بدون هرگونه ضمانت؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای یک هدف مشخص. برای جزئیات بیشتر به «مجوز عمومی همگانی گنو» مراجعه کنید.
همچنین ببینید (SEE ALSO)
| Slurm Daemon | Slurm 26.05 |