مطالب فصل
VMware tools چیست و چرا برای دنیای مجازی سازی مهم است؟
VMware Tools چیست و چرا به آن نیاز داریم؟
در این قسمت قصد داریم در مورد یکی از محصولات شرکت VMware به نام VMware Tools صحبت نماییم.
VMware Tools یکی از مهم ترین ابزار در دنیای مجازی سازی میباشد. در دنیای Virtualization، یکی از مهم ترین بحث ها در این مورد است که VM به چه صورت و به چه هنگام به سخت افزار اطلاع دهد تا RAM و CPU را به صورت رزرو شده در اختیار VM قرار دهد، هرچند بحث Reservation مربوط به VMware Tools نیست اما از دید VM-1 ای که داخل سرور وجود دارد، VM-2 پنهان است چون این دو از یکدیگر ایزوله هستند و نسبت به هم بی اطلاع! ولی در واقعیت هر دوی این VM ها بر روی یک سرور فیزیکی قرار دارند و از یک فضای اشتراکی استفاده میکنند و ما بایستی بر روی RAM و CPU تنظیمات لازم را انجام دهیم. Hypervisor هیچ دیدی نسبت به OS داخل VM ندارد چه سیستم عامل ویندوزی باشد چه لینوکسی. VMware Tools نقش یک agent (عامل) را برای Hypervisor بازی میکند و اطلاعات لازم را در اختیار Hypervisor قرار میدهد، به این صورت که اگر RAM یکی از VM ها بلا استفاده بود در اختیار VM دوم قرار دهد.
از دیگر کاربردهای VMware Tools، بهبود بخشیدن به برخی از سخت افزارهای VM میباشد؛ مانند NIC Network، بالا بردن resolution ویدئو (در بحث استفاده از VDI)، مشاهده بهتر رنگ ها هنگام استفاده از نرم افزارهای فتوشاپی، ارتقاء ماوس و کیبورد. البته ممکن است در نرم افزار VMware Workstation این موضوع را به خوبی متوجه نشوید اما در ESXI کاملا قابل درک است چون در ESXI باید VMware Tools را نصب نمایید، البته این باید به این معنی نیست که اگر نصب نشود نمیتوانید از آن سرویس بگیرید اما نیاز است تا حتما improvement رخ دهد تا بتوانید یک سری اطلاعات مانند IP و FQDN سیستم، Hostname سیستم را دریافت نمایید. از همین اطلاعات میتوانید در بحث Network Virtualization نیز استفاده کنید و به فایروال دیتا سنتر اطلاع دهید که VM دارای چه شرایطی است. در واقع یک متد کنترلی هم در داخل VMware Tools وجود دارد؛ مثلا اگر OS به حالت freeze دربیاید، برای اینکه از این حالت خارج شود بایستی restart انجام گیرد و از نظر Hypervisor چون VM در حالت Power on قرار دارد هیچ دیدی نسبت به اینکه OS یا Application در حالت freeze قرار دارند، ندارد. به همین منظور VMware Tools برای ما اصطلاحا یک ضربان قلب ایجاد میکند و Hypervisor را مطلع میسازد که VM در چه وضعیتی قرار دارد، زمانی که نتواند حرکتی از جانب VMware Tools در خصوص VM ها دریافت نماید، VM را ریستارت کرده و بر روی یک سرور دیگر آن را روشن مینماید.
مورد دیگر صحیح بودن ساعت سیستم VM میباشد. زمانی که ساعت VM را تنظیم میکنید، VMware Tools این زمان را با ESXI، sync میکند و ساعت صحیح در داخل VM تنظیم میشود. البته بخاطر موقعیت جغرافیایی ممکن است این مسئله برایمان مشکل ساز شود که در آموزش های بعدی در مورد رفع این مشکل صحبت خواهیم کرد. ترجیح ما بیشتر بر این است که بحث زمان را DC یا سرور NTP برعهده بگیرد.
VMware Tools در بحث مربوط به snapshot نیز نقش مهمی دارد که در آموزش های آتی بیشتر در این مورد بحث خواهد شد. برای دید کلی در مورد snapshot در VMware و checkpoint در مایکروسافت باید بگویم که در سیستم های قدیمی ما ترس از update یا upgrade داشتیم یا مثلا ترس از این داشتیم که اگر خواستیم موارد جدیدی را در محیط واقعی پیاده سازی نماییم با مشکلی مواجه نشویم. در دنیای مجازی سازی این امکان برای ما وجود دارد که VM را در هر موقعیت و با هر config ای که بر روی آن تنظیم کرده ایم به حالت freeze درآوریم و تغییرات را انجام دهیم و اگر این تغییرات مشکلی به وجود آورد، بتوانیم به وضعیت قبلی بازگردانیم.
نکته ای که وجود دارد این است که شما نباید snapshot را با backup مقایسه کنید. در واقع snapshot به ما این امکان را میدهد که اگر ما در اقیانوسی گیر افتاده ایم و ماسک اکسیژنه ما رو به اتمام است با یک دکمه به ساحل بازگردیم ولی اگر از snapshot به درستی استفاده نشود، ممکن است به جای ساحل آرام شما را به جنگل های آمازون کنار آدم خوارها هدایت کند.
نصب VMware Tools بر روی ویندوز
1- نصب VMware Tools بر روی ویندوز
در ابتدا نکته مهمی که وجود دارد این است که هنگام استفاده از task manager داخل VMware Workstation از دکمه های ترکیبی Ctrl+Alt+Insert به جای Ctrl+Alt+delete استفاده کنید یا با توجه به شکل زیر از دکمه میانبر مشخص شده استفاده نمایید.
اگر دقت کنید صفحه نمایش در داخل VM کوچک است و به درستی نشان داده نمیشود. در مرحله اول برای نصب VMware Tools بر روی VM خود که در اینجا از ویندوز سرور 2019 استفاده کرده ایم، راست کلیک میکنیم و Install VMware Tools را انتخاب میکنیم.
سپس در قسمت My computer، بر روی ISO مربوط به VMware Tools راست کلیک کرده و گزینه اول Install or run … را انتخاب میکنیم.
خب با انتخاب گزینه next مراحل را به جلو پیش میبریم. در مورد feature هایی که VMware Tools نصب میکند در داخل ESXI بیشتر بحث خواهیم کرد در این بخش به طور کلی از آن رد میشویم. در نهایت با انتخاب گزینه Install نصب VMware Tools را شروع میکنیم.
پس از پایان نصب، بر روی yes کلیک میکنیم تا VM ریستارت شود تا صفحه نمایش را به صورت full screen در اختیار داشته باشیم.
برای اینکه verify انجام بشود که VMware Tools بر روی ویندوز شما نصب شده است باید مراحل زیر را انجام بدهید:
از قسمت Run وارد بخش services.msc میشویم. از تب standard، VMware Tools را انتخاب میکنیم که با کلیک راست بر روی آن میتوانیم در سه وضعیت Stop، Start و Pause تغییر دهیم.
نصب VMware Tools بر روی لینوکس
2- نصب VMware Tools بر روی لینوکس
در این بخش میخواهیم VMware Tools را بر روی سیستم عامل CentOS 8 نصب نماییم. (البته به صورت پیش فرض VMware Tools بر روی این سیستم عامل نصب شده است).
راه حل اول:
در این راه حل شما بایستی به اینترنت متصل باشید. پس از اجرای نرم افزار Terminal، command ها را با توجه به شکل زیر وارد میکنیم. در ابتدا این دستور sudo yum install open-vm-tools open-vm-tools-desktop را وارد میکنیم، package دوم را زمانی نصب میکنیم که لینوکس مان به صورت گرافیکی باشد. سپس پسورد مربوط به یوزر مورد نظر را وارد میکنیم.(قسمت اولیه دستور در واقع همان Run as admin میباشد.) سپس دستور su را وارد کرده و در ادامه همان دستور قبلی را بدون sudo وارد میکنیم.
در ادامه به دو سوالی که از ما پرسیده میشود، پاسخ yes میدهیم تا نصب انجام شود و برای اعمال تنظیمات reboot میکنیم.
پس از اتمام، در اولین نگاه متوجه میشویم که صفحه نمایش به حالت full screen تغییر کرده است.
(البته ما در این قسمت به عنوان یوزر root وارد نشده بودیم، اگر به عنوان یوزر root وارد شویم دیگر نیازی به بحث های su و sudo نخواهیم داشت.)
برای verify کردن اینکه VMware Tools قطعا نصب شده است یا نه، در نرم افزار terminal دستور زیر را وارد میکنیم.:
Systemctl status vmtoolsd
همانطور که مشاهده میکنید، در وضعیت active (running) قرار دارد.
راه حل دوم:
این حالت سخت را پیشنهاد نمیکنم البته نه بخاطر سختی آن بلکه ممکن است VMware Tools ای که در داخل ISO وجود دارد با سیستم عامل شما سازگار نباشد و شاید نسخه ای که در VMware Tools وجود دارد ورژن بالاتری است و یک سری Bug دارد که میتواند تاثیر بدی برای VM شما داشته باشد. (مزیتی که ISO دارد این است که فرض کنید open-vm-tools پکیجی که در داخل App Store برای CentOS میباشد قدیمی است و یک سری قابلیت ها را به شما ارائه نمیدهد و مجبور هستید از ISO استفاده نمایید. البته اینکه از لغت App Store استفاده میکنم برای کسانی است که با سیستم عامل لینوکس کار نکرده باشند و اطلاعی از نحوه نصب package یا App در داخل لینوکس نداشته باشند. فرض کنید در داخل لینوکس ها یک سری مخزن وجود دارد که لینوکس ها از مخزن ها App ها و package های مورد نظرشان را نصب میکنند مانند open-vm-tools ای کمی پیش نصب کردیم. اما ISO آن به حالت ویندوزی است ولی به صورت command ای.)
از دیگر راه های نصب VMware Tools، زمانی که گزینه Install VMware Tools به رنگ خاکستری باشد:
از قسمت Settings، DVD writer ای که برای لینوکس میباشد را در حالت connected قرار میدهیم و پس از انتخاب گزینه Use ISO image file، بر روی Browse کلیک میکنیم.
طبق تصویر زیر، وارد مسیر مشخص شده میشویم و با کلیک بر روی linux.iso، آن را mount میکنیم.
به دو روش میتوانیم وارد مسیری که ISO Linux در آن وجود دارد شویم:
1- طبق تصویر زیر، پس از این که mount شد این پیام برای شما نمایش داده میشود و میتوانید با کلیک بر روی Open with Files وارد آن مسیر شوید.
2- با استفاده از نرم افزار Terminal و وارد کردن دستوراتی که در ادامه به آن ها میپردازیم.
در ابتدا دستور زیر را وارد میکنیم:
/cd /run/media
(یعنی من میخواهم وارد دایرکتوری run شوم سپس وارد قسمت media)
پس از زدن enter، دستور LS را وارد میکنیم تا فایل ها و فولدرهایی که داخل media وجود دارد را ببینیم.
همانطور که مشاهده میکنید، فولدری به نام ali وجود دارد. با دستور /cd ali وارد فولدر ali میشویم. دوباره با دستور ls داخل فولدر ali را میبینیم. در داخل آن پوشه ای به نام VMware Tools وجود دارد. با دستور /cd VMware\ Tools وارد آن پوشه شده و دستور ls را میگیریم. همانطور که میبینید، یک فایل زیپ با فرمت .tar.gz داخل آن وجود دارد.
برای وارد شدن به این فایل زیپ باید به عنوان یوزر root وارد شده و پسوردی که هنگام نصب برای آن تعریف کرده اید را وارد نمایید. (که اگر طبق آموزش های ما نصب کرده باشید، و هیچ username/password ای نخواسته باشد برای user root پسوردی که در مراحل نصب معرفی کرده اید را وارد کنید.)
خب با این دستور میخواهیم فایل زیپ شده را به دایرکتوری به نام root که در واقع همان Home یوزر root میباشد، کپی کنیم:
cp <zip file name> /root/
سپس وارد همان مسیر میشویم:
cd /root/
و اگر ls را بگیریم فایل خود را در داخل آن میبینیم. حال دستور unzip کردن فایل زیپ شده را وارد میکنیم:
tar -xzf <نام فایل زیپ شده>
و به راحتی اجرا میشود. دوباره دستور ls را میگیریم و میبینیم فولدری به نام VMware-Tools-distribute ایجاد شده است، وارد فولدر میشویم:
cd VMware-Tools-distribute
ls را میگیریم. در داخل فولدر، فایلی با فرمت .pl وجود دارد که باید اجرا شود تا VMware Tools نصب شود:
برای اجرای این فایل، دستور:
./vmware-install.pl
را وارد میکنیم. در این قسمت از ما اجازه نصب میخواهد که yes را وارد میکنیم.
در ادامه با زدن دکمه enter مراحل به صورت پیش فرض ادامه مییابد.
پس از اتمام نصب، صفحه نمایش شما به حالت full screen تغییر مییابد. وارد نرم افزار Terminal میشویم و دستور زیر را وارد میکنیم:
systemctl status vmtools
همانطورکه مشاهده میکنید پیام Not Found برای ما نمایش داده شد.
VMware Tools ای که پکیج لینوکس نصب میکند با VMware Tools ای که VMware در ISO ارائه میدهد، متفاوت است. برای فهمیدن این موضوع، دستور زیر را وارد میکنیم:
systemctl -a | grep "VMware"
(یعنی تمام سرویس هایی که در داخل systemctl –a با نام VMware وجود دارند را به من نشان بده.)
همانطور که مشاهده میکنید، نام آن در این قسمت VMware-tools میباشد. خب حالا دستور زیر را وارد میکنیم:
systemctl status VMware-tools
متاسفانه در وضعیت Failed قرار دارد. حتی اگر دستور start را نیز بزنیم و username/password را وارد کنیم باز دوباره خطا میدهد:
systemctl start VMware-tools
راه حل این موضوع این است که دستور زیر را اجرا کنیم:
/usr/bin/VMware-config-tools.pl
اما مشکلی که وجود دارد در قسمت ?Do you want enable guest authentication است، بایستی پاسخ NO بدهیم تا درست اجرا شود. دلیل اینکه این سرویس برای ما مشکل ایجاد میکند این است که باینری ها یا kernel لینوکسی که در CentOS 8 قرار دارد با فایل ISO ای که ما داریم سازگار نیست.
اگر دوباره status را بگیریم:
systemctl status VMware-tools
سرویس را در حالت active (running) میبینیم.
فیلم آموزشی
فیلم آموزشی
برای ثبت نظر ابتدا وارد حساب کاربری خود شوید
ورود به حساب کاربریهیچ نظری ارسال نشده است! اولین نظر را شما ارسال کنید...