smartos اولین برخورد!

اینم یه تجربه پراکنده دیگه!

سر کار اخیرا نیاز شد که یه سیستم با قابلیت virtualization نصب کنیم. خوشبختانه همکارمون که مسئول این کار بود از من در این مورد مشورت گرفت. توی کارهای خیلی جدی شرکت معمولا از vmware ESXi استفاده میشه اما اینجا من و این دوستمون علاقه‌مند شدیم که از یه تکنولوژی دیگه استفاده کنیم. هر دومون با kvm و linux آشنایی داشتیم پس مطمئن بودیم که میتونیم در بدترین حالت با استفاده از لینوکس مشکل رو حل کنیم. پس من پیشنهاد دادم بریم سراغ smartos. یه شرکت به نام joyent از این سیستم عامل پشتیبانی میکنه که اسپانسر nodejs و چیزهای دیگه هم هست. همونطور که قبلا هم گفته بودم این سیستم عامل یه مدته «چشم من رو گرفته» دلایلش هم ایناست

  1. ریشه اش به سولاریس برمیگرده که سیستم عامل بسیار خوبیه!
  2. از zfs پشتیبانی میکنه که اون هم سیستم فایل محشریه!
  3. از kvm به عنوان مجازی ساز سخت افزار استفاده میکنه
  4. از zone های سولاریس به عنوان مجازی سازی سبک(مراجعه کنید به این و این) پشتیبانی میکنه

کاری که ما میخواستیم انجام بدیم این بود که میخواستیم علی الحساب یه ماشین مجازی pfsense توش نصب کنیم و یه کارهایی باهاش انجام بدیم در حین این کار نکات جالب و قابل توجهی برخوردیم که میخوام اینجا مستندشون کنم

نکات جالب در برخورد من با این سیستم عامل اینهاست

  1. کل سیستم نیاز به نصب نداره! و فقط کافیه که روی هارد بتونه سیستم فایل zfs رو تشخیص بده. پس بروز رسانی در حد خاموش و روشن کردن سیستم هزینه داره. از اون سمت با استفاده از pxe میشه سیستم رو بوت کرد که یعنی کل هاردهای سرور جهت ذخیره سازی اطلاعات بکار میره
  2. از json برای توصیف ماشین‌های مجازی و zone هاش استفاده میکنه. که این قضیه برنامه نویسی کردن برای اون رو به شدت ساده میکنه

نکات قابل توجهی که من در حین کار بهش برخوردم اینا بود

  1. کارت شبکه mainboard یکم مشکل داشت و smartos هم درست ازش استفاده نمیکرد
  2. مدت زمان لازم برای reboot شدن ماشین مجازی pfsense زیاد بود(حدود ۵ دقیقه)
  3. نمیشد از توی pfsense سیستم رو reboot کرد
  4. نصب واسط گرافیکی برای راحت‌تر کار کردن لینوکس و یونیکس نابلدها با سیستم به نظر پر دردسر میرسید!

علی الحساب همین تا باز هم بیشتر باهاش کار کنم و نتایج رو بهتون بگم!

کار با kvm بجای virtualbox

اینم یه تجربه پراکنده دیگه!

من سال‌هاست که به لینوکس مهاجرت کردم و روی سیستم اصلیم تنهای یک لینوکس دارم. اما بخاطر موارد متعددی همیشه مجبور بودم یه ماشین مجازی ویندوزی داشته باشم. مهمترین استفاده این ماشین مجازی اجرای office هست. امیدوارم بهم پیشنهاد نکنید که از wine یا play on linux و یا چیزای دیگه برای اجرای office استفاده کنم یا حتی بگید برم سراغ latex به این دلیل که از نظر من نگهداری windows emulator ها سخته و این سیستم ها معمولا یه باگ‌هایی دارن که کار به مشکل بر میخوره، همچنین استفاده از latex امکان collaboration یا همون همکاری روی مستندات رو از بین میبره. از liberoffice هم بخاطر به هم ریختگی متون در نسخه‌های مختلف نمیشه استفاده کرد و اگه تا بحال در دنیای واقعی با آدم‌های مختلف و متفاوت کار کرده باشید میدونید که حاضر نیستن office رو رها کنن.

همچنین واسه موارد خاص نیاز داشتم که، از مجازی سازی استفاده کنم که  امکان اتصال usb به ماشین مجازی رو داشته باشه. به همین خاطر اولین انتخاب من همیشه virtualBox بود. virtualBox مجازی ساز بسیار با کیفیت وخوبیه اما مشکل اساسیش اینه که ما رو تحریم کرده. یعنی نصب کردن و اجراش کار هر کس نیست و معمولا نیاز به جنگولک  بازی‌های بسیاری داره و این از نظر من یعنی سختی نگهداری. من از kvm هم برای حالت‌هایی که نیاز به اتصال سخت افزار خاصی ندارن استفاده می‌کردم اما به علت اینکه virtaulbox همه نیازهای من رو پوشش میداده کم کم دیگه از kvm استفاده نکردم.

تا اینکه چند شب قبل به ذهنم رسید که دوباره یه سری به  kvm بزنم اما این دفعه در کمال ناباوری دیدم که اوضاع خیلی بهتر شده. با تشکر از یه پروژه به اسم spice کلی از مشکلات من حل شده. اول اینکه کارت گرافیکی خاصی نصب میشه و اون کارت امکان تغییر اندازه اتوماتیک رزولوشن صفحه با سایز ویندوزی که اون رو نشون میده، رو فراهم میکنه. دوم اینکه یه چیزی به اسم usb redirector اضافه شده که همون حرکتی که من دوست داشتم یعنی اتصال یه usb رو هم انجام میده نکته قابل توجه هم اینه که virtualbox از usb3 پشتیبانی نمیکنه اما اینجا پشتیبانی انجام میشه. هنوز نتونستم اون ویژگی virtualbox که باهاش یک فولدر رو بین ماشین‌ها به اشتراک میگذاره راه بندازم اما به نظرم همین‌ها کافی که دردسر نصب virtualbox رو بیخیال بشم و برم کاملا سراغ kvm.

همین!