برای مطالعه قسمت قبل آموزش رایگان ویندوز سرور 2019 اینجا کلیک کنید.
docker run
این فرمان برای شروع یک کانتینتر جدید بر مبنای یک ایمیج استفاده میشود. همانگونه که در شمارههای آینده به آن اشاره خواهیم کرد، شما میتوانید چند ایمیج کانتیر را در مخزن محلی خود و بر مبنای یک ایمیج کانتینر یکسان داشته باشید. بهطور مثال، هنگامی که اشیا جدیدی به کانتینرهای خود اضافه میکنید یا برنامههای درون کانتینر را بهروزرسانی میکنید، ممکن است ایمیج کانتینترهایی بسازید که که زیرمجموعهای از کانتینر موجود باشند. بهطور مثال، ممکن است ایمیج کانتینترهایی داشته باشید که همگی نام windowsservercore را دارند. در این حالت، برچسبهای کانتینرها مهم میشوند، زیرا برچسبها کمک میکنند تفاوت میان نسخههای مختلف کانتینرها را به خوبی درک کنید. بهطور مثال، در زیر دستوری را مشاهده میکنید که یک کانیتر را بر بمای ایمیج windowsservercore اجرا میکند که برچسب ltsc2019 را دارد. دستور زیر به خوبی نشان میدهد که چگونه یک ایمیج کانتینر مبتنی بر برچسب را به راحتی اجرا کنید.
docker run -it --rm Microsoft\windowsservercore:ltsc2019
در دستور قبلی، سوئیچ -it پوستی ایجاد میکند که اجازه تعامل با یک کانتینر را میدهد. سوییچی که برای ساخت و آزمایش کانتینرها مفید است. دقت کنید برای اجرای کانتینرهایی که خود ایجاد کردهاید و صددرصد آماده استفاده هستند نیازی به سوییچ فوق ندارید. –rm در فرمان بالا یک سوئیچ پاکسازی است، به این معنی که به محض خروج از کانتینتر خاص، کانتینتر و سیستم فایلی آن بهطور خودکار پاک میشوند.
docker ps -a
شما میتوانید از فرمان docker ps برای مشاهده کانتینرهای در حال اجرا روی سیستم استفاده میکنید.
Docker info
فرمان فوق خلاصه اطلاعاتی در ارتباط با محیط داکر ارائه میکند که شامل تعداد کانتینرهای در حال اجرای روی سیستم همراه با اطلاعت اضافی در ارتباط با پلتفرمی است که از آنها میزبانی میکند.
دانلود یک ایمیج کانتینر
Docker images یکی از دستورات کاربردی داکر است که برای تعامل با کانتینترها از آن استفاده میکنیم. docker images تمامی ایمیجهای کانتینر که به تازگی در سیستم وجود دارند را نشان میدهد، اگر هیچ ایمیجی وجود نداشته باشد خروجی فرمان فوق همانند تصویر زیر خالی است.
طبیعی است فرمان فوق چنین خروجی را نشان دهد، زیرا هنوز هیچ کانتیری را دانلود نکردهایم. پس برای شروع کار باید کانتینری را دانلود کنیم. در اینجا یک ایمیج کانتینری توسط تیم داتنت تهیه شده که برای اجرای یک برنامه داتنت درون یک کانتینر نانو سرور استفاده میشود. در اولین گام میتوانیم از docker search برای بررسی وضعیت ایمیجهای کانتینری که درون مخزن Microsoft Docker Hub قرار دارند استفاده کنیم. هنگامی که ایمیج موردنظر خود را پیدا و دانلود کردیم، از فرمان docker pull برای دانلود ایمیج و انتقال آن به سرور استفاده میکنیم:
docker search microsoft
docker image pull microsoft/nanoserver
در فرمان قبلی ما یک کپی از ایمیج پایه نانو سرور دانلود کردیم، اما دوست داریم کانتینر ما کاری بیشتری انجام دهد، در اینجا فرمان زیر یک ایمیج ساده داتنت را دانلود میکند.
docker image pull microsoft/dotnet-samples:dotnetapp-nanoserver-1809
پس از اتمام دانلود، فرمان docker images را یکبار دیگر اجرا میکنیم. در این مرحله خروجی فرمان فوق متفاوت است و کانتینرهایی که دانلود شدهاند را نشان میدهد.
اکنون آماده هستیم از میان یک کانتینر واقعی را اجرا کنیم.
اجرای یک کانتینر
تقریبا آماده هستیم تا یک کانتینر روی میزبان خود اجرا کنیم. اکنون که سرویس موردنیاز را نصب کردیم، داکر را ریاده سازی کردیم، ماژول Docker را در محیط پاورشل وارد کردیم و ایمیج کانتینر موردنظر را دانلود کردیم، آماده هستیم تا دستور نهایی که کانتینر را راهاندازی میکند اجرا کنیم. اجازه دهید کانتینر داتنت که دانلود کردیم را اجرا کنیم:
docker run microsoft/dotnet-samples:dotnetapp-nanoserver-1809
کانتینر فوق با استفاده از فرمان بالا اجرا شده و خروجی جالب زیر را نشان میدهد.
کانتینر فوق تمامی مولفههای موردنیاز یک برنامه داتنت که درون کانتینر اجرا میشود را دارد. همچنین، لازم به توضیح است که کانتینر فوق بر مبنای نانو سرور است. گر به چند صفحه قبل باز گردید و اطلاعاتی که در ارتباط با ایمیجهای داکر ارائه شد را مرور کنید، مشاهده میکنید که این ایمیج کانتینر تنها 417 مگابایت حجم دارد!
مجازیسازی مرکز داده با Hyper-V
شهرها به مکانهای بیشتر و بیشتری برای مردم و مشاغل آنها نیاز دارند. به عبارت دقیقتر هر ساله باید سرورهای بیشتر و بیشتری را به خدمت بگیریم. افزایش سرورهای فیزیکی دردسرهای خاص خود را دارد. اما به جای آنکه هر ساله اتاقهای بیشتری را صرف پیادهسازی یک اتاق سرور یا همان مرکز داده کنیم، این شانس را داریم تا راهکار دیگری بهنام مجازیسازی در اختیار داریم. راهکاری که اجازه میدهد همه چیز را مجازیسازی کنیم و دهها یا شایدم صدها سرور مجازی در اختیار داشته باشیم. فناوری که این لایه هایپرویزور را ارائه میکند، این توانایی را دارد تا ماشینهای مجازی (VMs) مبتنی بر فناوریهای مایکروسافت را بر مبنای نقش Hyper-V در ویندوز سرور اجرا کند. به عنوان سرپرست یک شبکه، آشنایی با نقش Hyper-V و مجازیسازی برای شما یک ضرورت است. آمارها نشان میدهند مجازیسازی به یکی از فناوریهای مهم دنیای شبکه تبدیل شده و شاید از یک یا دو سال آینده با حجم عظیمی از آگهیهای شغلی مرتبط با مجازیسازی سرور و مرکز داده روبرو شوید. به عبارت دقیقتر، مجازیسازی دروازه ورود به آینده است.
طراحی و پیادهسازی سرور Hyper-V
ساخت سرور Hyper-V تا حد زیادی ساده است. کاری که باید انجام دهید این است که یک سرور بسازید، نقش Hyper-V را روی آن نصب کنید و در نهایت از آن استفاده کنید. جالب آنکه شما میتوانید نقش Hyper-V را روی کامپیوتر مجهز به Windows 10 Pro یا Enterprise نصب کنید و ماشینهای مجازی را روی کامپیوتر دسکتاپ اجرا کنید. در حالی که بیشتر سختافزارهایی که این روزها ساخته میشوند از مفهوم هایپرویزور پشتیبانی میکنند، اما برخی موارد ممکن است سعی کنید نقش Hyper-V را روی سامانهای نصب کنید و پیغام خطای زیر را مشاهده کنید.
پیغام فوق بیانگر دو موضوع است. اول آنکه پردازنده مرکزی واقعا از مجازیسازی پشتیبانی نمیکند یا ممکن است برخی از تنظیمات مربوطه به مجازیسازی در بایوس سرور غیر فعال شده باشند. قبل از ورود به مبحث مجازیسازی، باید روی سرور خود سه نکته مهم را بررسی کنید و پس از آن به سراغ اجرای Hyper-V بروید. دقت کنید که شما به یک پردازنده مبتنی بر x64 نیاز دارید که قاعدتا مشکل خاصی در این زمینه وجود ندارد، زیرا ویندوز سرور 2019 تنها روی معماری 64 بیتی اجرا میشود. اگر پردازنده x64 وجود ندارد، شما حتا قادر به نصب سیستمعامل نیستید. نکته دومی که باید به آن دقتی کنید پشیتبانی پردازنده مرکزی از فناوری مجازیسازی است. فناوری فوق در پردازندههای مبتنی بر معماری اینتل با نام Intel Virtualization Technology (Intel VT) و در پردازندههای ایامدی با نام ADM Virtualization (AMD-V) شناخته میشود. سومین نکتهای که باید به آن دقت کنید اطمینان از این موضوع است که فناوری پیشگیری از اجرای داده (DEP) سرنام Data Execution Prevention روی سامانه در دسترس و فعال باشد. اگر پردازنده مرکزی را بررسی کرده و مطمئن هستید که از قابلیت مجازیسازی پشتیبانی میکند، اما فناوری فوق در دسترس نیست، به احتمال زیاد DEP از طریق بایوس غیر فعال شده است. وارد تنظیمات بایوس شوید و DEP را فعال کنید. زمانی که پردازنده مرکزی قابلیت اجرای ماشینهای مجازی را داشته باشد، محدودیتی در ارتباط با نصب نقش Hyper-V و نصب ماشینهای مجازی روی Hyper-V نخواهید داشت. دقت کنید هرچه هستههای پردازنده مرکزی و حافظه اصلی و همچنین فضای هارد دیسک بیشتری در اختیار داشته باشید، قادر به اجرای ماشینهای مجازی بیشتری هستید. حتا در کسبوکارهای کوچکی که از سرورهای نه چندان گرانقیمت استفاده میکنند، سختافزارهایی همچون پردازندههای دوگانه زنون، 96 گیگابایت حافظه اصلی و چند ترابایت فضای ذخیرهسازی در دسترس قرار دارد. در حالی که ممکن است حافظه اصلی 96 گیگابایتی برای یک سیستم واحد زیاد به نظر برسد، اما زمانی که قصد پیادهسازی مجازیسازی را دارید این حجم به سرعت مصرف میشود. برای محاسبه حجم مورد نیاز فرمول سادهای وجود دارد. اگر به 12 سرور مجازی برای انجام کارهای خود نیازی دارید و قرار است به هر کدام 8 گیگابایت حافظه اصلی اختصاص دهید، در این حالت به 96 گیگابایت حافظه اصلی نیاز دارید. بنابراین هرچه حافظه اصلی بیشتر باشد، قدرت مانور شما بیشتر خواهد بود.
نصب نقش Hyper-V
Hyper-V یکی دیگر از نقشهای ویندوز سرور 2019 است. زمانی که تصمیم میگیرید نقش فوق را نصب کنید، ویندوز از شما چند سوال میکند که مهم است با مفهوم سوالات فوق آشنا باشید تا بتوانید یک سرور Hyper-V را به درستی ایجاد کیند. برای نصب نقش فوق ابزار Server Manager را باز کنید و گزینه Add roles and features را کلیک کنید و در صفحه موجود نقش Hyper-V برای نصب را انتخاب کنید.
با انتخاب گزینه فوق و کلیک دکمه Next مشاهده میکنید که پنجره دیگری در ارتباط با ساخت سوییچهای مجازی (Create Virtual Switches) ظاهر میشود. در شماره آینده در ارتباط با شبکهای سازی با Hyper-V مطالبی به شما ارائه خواهیم کرد، اما آنچه در اینجا مهم است این است که شما باید تعریف کنید که کدامیک از کارتهای شبکه فیزیکی سرور باید در تعامل با Hyper-V باشد و برای مجازیسازی استفاده شود. ایده خوبی است که برای هر سرور Hyper-V چند کارت شبکه داشته باشید. بهتر در کنار کارت شبکه حداقل به یک شبکه که قرار است نقش پل میان ماشینهای مجازی را در یک شبکه سازمانی بازی کند نیاز دارید. اگر ماشینهای مجازی مختلفی را روی این سرور میزبانی میکنید و این ماشینها قرار است با شبکههای فیزیکی مختلفی در ارتباط باشند، شما باید کارتهای شبکه مختلفی روی سرور Hyper-V نصب کنید.
پس از تعریف کارتهای شبکه، در مرحله بعد باید مشخص کنید که آیا این سرور Hyper-V قرار است از وضعیت مهاجرت زنده ماشینهای مجازی پشتیبانی کند یا خیر. مهاجرت زنده ماشین مجازی به معنای توانایی انتقال یک ماشین مجازی از یک میزبان Hyper-V به میزان دیگری است، بدون آنکه هیچگونه وقفهای در عملکرد سرویسهای ماشین مجازی به وجود آید. همانگونه که در تصویر زیر مشاهده میکنید، چند روش مختلف وجود دارد که میتوانید سرور را برای یک طرح مهاجرت پیکربندی کنید. بهتر است در اینجا تغییری در تنظیمات به وجود نیاورید. در پایین صفحه پیغامی ظاهر میشود که اعلام میدارد اگر قرار است این سرور Hyper-V بخشی از یک خوشه باشد، بهتر است تغییری در تنظیمات به وجود نیاورید. در محیطهای خوشهای، این تنظیمات در یک لایه متفاوت مدیریت میشوند.
در آخرین صفحهای که قصد دارم به آن اشاره کنم باید مکان ذخیرهسازی که قرار است دادههای ماشین مجازی در آن ذخیره شوند را مشخص کنید. بعد از ایجاد ماشینهای مجازی و اجرای آنها مشاهده میکنید که در سطح هارددیسک (فایلهای واقعی که برای هر ماشین مجازی ایجاد شدهاند) دو نوع مختلف از فایلها برای یک ماشین مجازی وجود دارند. فایل هارددیسک مجازی (VHD) سرنام Virtual Hard Disk یا VHDX و پوشهای که حاوی فایلهای متعلق به ماشین مجازی است.
همانگونه که در تصویر زیر مشاهده میکنید، مکانهای پیشفرض برای ذخیرهسازی این فایلها منطقی هستند، اما دقت کنید فایلهای مربوط به ماشینهای مجازی در بیشتر موارد حجیم هستند. فایلهای اصلی در پوشهای در Document اشتراکی قرار میگیرند. تصور میکنم از آنجایی که مایکروسافت پیکربندی سرور شما را نمیداند، نمیتواند حدس بزند که دادهها قرار است در چه مکانی ذخیره شوند و بنابراین پوشه فوق را به عنوان مکان پیشفرض انتخاب میکند.
بهکارگیری سوییچهای مجازی
پس از آنکه نصب نقش Hyper-V به اتمام رسید، ممکن است تصمیم بگیرید که ماشینهای مجازی خود را ایجاد کنید، اما پیش از انجام اینکار مطمئن شوید که ویژگیهای شبکه سرور Hyper-V به درستی به نیازهای شما پاسخ میدهند. در طی مراحل نصب ، ما کارتهای فیزیکی که قرار است با Hyper-V در تعامل باشند را انتخاب کردیم. اگر به یاد داشته باشید ویزاد به ما اعلام داشت که یک سوییچ مجازی برای هر کدام از کارتهای شبکه ایجاد کنیم. آیا مورد آشنایی در این کنسول مشاهده میکنید؟ چه گزینههایی برای انتشار شبکه میان ماشینهای مجازی در اختیار داریم؟
برای پاسخ به این سؤالات، باید رابط مدیریتی Hyper-V را باز کنیم. شبیه به هر ابزار مدیریتی مرتبط با نقشی در ویندوز در منوی Tools از پنجره Server Manager پس از نصب نقش Hyper-V یک ابزار مدیریت بهنام Hyper-V Manager اضافه شده است. ابزار فوق را اجرا کنید تا بتوانید تغییرات لازم در محیط Hyper-V را اعمال کنید.
در حال حاضر فضای خالی زیادی در این کنسول داریم، زیرا هنوز هیچ نوع ماشین مجازی را اجرا نکردهایم. در سمت راست Hyper-V Manager، پیوندی با عنوان Virtual Switch Manager قرار دارد. با کلیک روی گزینه فوق تنظیمات مربوط به سوییچهای مجازی و شبهسازی را مشاهده میکنید.
در سمت چپ، فهرستی از سوییچهای مجازی قرار دارد. در سرور من، فقط یک سوئیچ وجود دارد که مربتط با کارت شبکه فیزیکی است. این سوئیچ مجازی است که در زمان نصب نقش و زمانی که کارت شبکه را برای هایپر-وی انتخاب کردیم ساخته شد. اگر کارتهای شبکه مختلفی را برای این نقش انتخاب کرده باشید، در اینجا سوییچهای مجازی مختلفی در دسترس قرار دارند که هر یک به یک کارت شبکه فیزیکی اشاره دارند. هر ماشین مجازی که ساختهاید یک یا چند کارت شبکه مجازی دارد که امکان انتخاب آنها وجود دارد. اگر پنج شبکه فیزیکی مختلف وجود دارد که ماشین مجازی ممکن است با آنها ارتباط برقرار کنند، میتوانید از پنج کارت شبکه در سرور هایپر-وی استفاده کنید و هرکدام را که مناسب میدانید به یک شبکه متفاوت وصل کنید.
همانگونه که در تصویر قبلی مشاهده میکنید دکمهای به نام Create Virtual Switch وجود دارد که اجازه ساخت سوییچهای جدید را میدهد. در اینجا سه نوع مختلف سوئیچ در دسترس قرار دارد.
در شماره آینده مبحث کانتینرها در ویندوز سرور 2019 را ادامه خواهیم داد.
برای مطالعه تمام بخشهای آموزش ویندوز سرور 2019 روی لینک زیر کلیک کنید:
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟