ipmi_sim(1) IPMI LAN BMC Simulator ipmi_sim(1)

ipmi_sim - شبیه‌ساز BMC پروتکل IPMI بر بستر LAN

ipmi_sim [-c config-file] [-f command-file] [-x command] [-s state-dir] [-d] [-n]

دیمن ipmi_sim یک شبیه‌ساز IPMI BMC را شبیه‌سازی می‌کند که می‌تواند با استفاده از پروتکل‌های IPMI 1.5 یا 2.0 LAN یا از طریق پروتکل‌های مختلف سریال در دسترس قرار گیرد. این برنامه به‌صورت مستقل برای نمونه‌سازی اولیه مفید است، می‌تواند همراه با یک ماشین مجازی مانند QEMU برای ارائه شبیه‌ساز IPMI BMC به کار رود و همچنین می‌تواند برای پیاده‌سازی یک BMC واقعی (جایی که دیگر صرفاً یک شبیه‌ساز نیست) استفاده شود.

ipmi_sim از تمامی قابلیت‌های احراز هویت پروتکل IPMI LAN پشتیبانی می‌کند.

ipmi_sim از چندین آدرس IP برای تحمل خطا (fault-tolerance) پشتیبانی می‌کند. توجه داشته باشید که پیام‌های دریافتی از یک آدرس همیشه از همان آدرس بازگردانده می‌شوند.

فایل پیکربندی را به فایلی غیر از مقدار پیش‌فرض /etc/ipmi/lan.conf تنظیم می‌کند. برای جزئیات به ipmi_lan(5) مراجعه کنید.
فایل دستوراتی را برای اجرا در هنگام راه‌اندازی ipmi_sim مشخص می‌کند. این گزینه معمولاً برای راه‌اندازی محیط IPMI استفاده می‌شود. برای جزئیات به ipmi_sim_cmd(5) مراجعه کنید.
یک دستور منفرد را اجرا می‌کند.
یک دایرکتوری وضعیت برای استفاده ipmi_sim به جای دایرکتوری پیش‌فرض مشخص می‌کند. دایرکتوری وضعیت باید وجود داشته باشد، و ipmi_sim اطلاعات مورد نیاز برای راه‌اندازی مجدد را در آنجا ذخیره خواهد کرد. به عنوان مثال، اگر کسی اطلاعات کاربری را تغییر دهد، اطلاعات کاربری جدید در آنجا ذخیره می‌شود و موارد موجود در فایل پیکربندی دیگر استفاده نخواهند شد.
اشکال‌زدایی را به خروجی استاندارد (اگر -n مشخص نشده باشد) و خروجی اشکال‌زدایی syslog ارسال می‌کند.
کنسول و ورودی/خروجی را در ورودی استاندارد و خروجی استاندارد غیرفعال می‌کند.

پیکربندی از طریق فایل /etc/ipmi/lan.conf انجام می‌شود. فایلی با نام یا مسیر دیگر را می‌توان با استفاده از گزینه -c تعیین کرد. برای جزئیات بیشتر به صفحه راهنمای فایل پیکربندی ipmi_lan(5) مراجعه کنید.

هنگامی که ipmi_sim راه‌اندازی می‌شود، دارای یک محیط خالی بدون BMC یا کنترل‌کننده‌های مدیریت است. برای راه‌اندازی موارد باید دستوراتی را اجرا کنید. این دستورات همچنین می‌توانند برای تنظیم وضعیت سنسورها، تزریق رویدادها و سایر کارهایی که ممکن است هنگام شبیه‌سازی BMC بخواهید انجام دهید، استفاده شوند. برای جزئیات به صفحه راهنمای ipmi_sim_cmd(5) مراجعه کنید.

ipmi_sim امنیت معمول IPMI را پیاده‌سازی می‌کند. حالت پیش‌فرض عدم دسترسی برای همگان است، بنابراین حالت پیش‌فرض بسیار امن است، اما در مورد آنچه اضافه می‌کنید مراقب باشید، زیرا این دسترسی برای کنترل سیستم شما است. مجوزهای straight و none توصیه نمی‌شوند؛ اگر از RMCP+ استفاده نمی‌کنید، بهتر است از md2 یا md5 استفاده کنید.

مواردی که قرار است در یک BMC ماندگار باشند، در فایل‌هایی نگهداری می‌شوند؛ معمولاً در /var/ipmi_sim/<name> که در آن <name> نام BMC مشخص‌شده در فایل پیکربندی است. موارد زیر ماندگار هستند:

- این با نام sdr.<mcnum>.main شناخته می‌شود و مخزن اصلی SDR است.
- این با نام sel.<mcnum> شناخته می‌شود.
- این با نام users.mc<mcnum> شناخته می‌شود.
- این با نام lanparm.mc<mcnum>.<channel> شناخته می‌شود.
- این با نام sol.mc<mcnum> شناخته می‌شود.

مقدار <mcnum> عدد هگزادسیمال مربوط به MC است.

ipmi_sim قابلیت Serial Over LAN را برای اتصال ارتباط RMCP+ به یک پورت سریال استاندارد یونیکس پیاده‌سازی می‌کند. این قابلیت در فایل پیکربندی ipmi_lan(5) تنظیم می‌شود.

یک رابط SOL به‌ازای هر MC ایجاد می‌شود. بنابراین اگر MC بر روی یک مورد غیر BMC تنظیم شده باشد، می‌توانید یک رابط SOL بر روی آن تعریف کنید و در صورتی که دستورات را به آن MC هدایت کنید کار خواهد کرد. این روش کمی غیرمعمول است، اما کار می‌کند. در حال حاضر فقط رابط 1 پشتیبانی می‌شود.

یک رابط SOL همچنین می‌تواند تاریخچه‌ای را نگه دارد که حتی اگر هیچ اتصالی از طریق LAN به رابط SOL برقرار نباشد، حفظ شود. بنابراین اگر می‌خواهید ببینید چه اتفاقی در پورت سریال افتاده است، می‌توانید به رابط 2 متصل شوید و تاریخچه را تخلیه (dump) خواهد کرد. تاریخچه به‌صورت اختیاری پایدار است؛ اگر برنامه به‌صورت عادی خاتمه یابد و مجدداً راه‌اندازی شود، در صورتی که برای انجام این کار پیکربندی شده باشد، تاریخچه بازیابی می‌شود.

یک رابط SOL می‌تواند یک FRU بر روی MC ایجاد کند تا بتوانید تاریخچه را از طریق رابط FRU دریافت کنید.

ipmi_sim باید SIGHUP را مدیریت کرده و فایل‌های پیکربندی خود را دوباره بخواند. با این حال، در حال حاضر این کار را انجام نمی‌دهد. ممکن است در آینده چنین شود، اما فعلاً باید آن را kill کرده و دوباره راه‌اندازی کنید. کلاینت‌ها در این وضعیت باید اتصال مجدد را مدیریت کنند؛ در غیر این صورت دچار نقص هستند.

در زمان راه‌اندازی، تمام خروجی‌های خطا به stderr ارسال می‌شوند. پس از آن، تمام خروجی‌های خطا به syslog فرستاده می‌شوند.

/etc/ipmi_lan.conf

ipmi_lan(5),ipmi_sim_cmd(5),ipmi_ui(1),openipmish(1)

Corey Minyard <cminyard@mvista.com>

06/26/12 OpenIPMI