لابراتوار آنلاین مایکروسافت

با سلام در این سایت شما می توانید سناریو هایی که خود ماکروسافت در سایت قرار داده را به صورت انلاین انجام دهید.

https://technet.microsoft.com/en-us/virtuallabs/bb467605.aspx

آموزش مایکروسافت

با سلام در این سایت شما می توانید سناریو هایی که خود ماکروسافت در سایت قرار داده را به صورت انلاین انجام دهید.

http://links.itpro.ir/1207/microsoft-virtual-lab

ایمیل 10 دقیقه ای

برخی از وب‌سایت‌ها برای اینکه خدمات خود را دراختیار شما قرار دهند از شما درخوست ایمیل می کند که این برابر است با دریافت پیام‌های بی‌ربط و مزاحم در صندوق پستی ایمیل اصلی شما. با کمک ایمیل‌های موقت که سر موقع از بین می‌روند، می‌توانید از دست این پیام‌ها رهایی پیدا کنید.

https://10minutemail.com

چک کردن پورت ها بصورت آنلاین

با استفاده از این سایت میتوانید متوجه بشید کدام یک از پورت های شما باز یا بسته می باشد.
کافیه پورت مورد نظر را در باکس Port Number بنویسید بعد وضعیت پورت را مشاهده کنید.
یا اینکه اصلا بر روی Scan All Common Ports کلیک کنید .

 

ساخت تنظیمات روتر میکروتیک و اعمال سریع روی دستگاه

به کمک این لینک مفید میتوانید تنظیمات مشکل از قبیل Firewall-Load balancing-QOS رو با سناریوهای مختلف به صورت گرافیکی انجام داده سپس فایل مورد نظر را روی روتر اجرا کنید.به آسانی با آموزش کامل درون سایت راستی برای دیدن فیلم های آموزشی تو این سایت به دلیل اینکه از لینک youtube استفاده میشه متاسفانه فیلتر شکن میخواد.ولی کل سایت به تور کامل کار میکنه و آموزش مبتنی بر تصویر رو هم داره.

آموزش برنامه نویسی تحت وب آنلاین

یکی از مشکلاتی که میتونه مانع یادگیری برنامه نویسی بشه،نبود یک لابراتوار و یک منبع قوی و مهم تر از همه استاندارد باشه.در این جهت قصد دارم تا شما رو با یکی از بهترین وبسایتهای موجود در این زمینه آشنا کنم.
وبسایت THE WORLD'S LARGEST WEB DEVELOPER SITE
میتونید با وارد شدن به این سایت از کلیه امکانات اون مانند کار با زبانهای برنامه نویسی HTML CSS JAVASCRIPT SQL PHP به صورت سناریو محور و آنلاین استفاده کنید.

www.3school.com



همونطور که در تصویر بالا میبینید یک سری کدهای از پیش تعریف شده ای رو در اختیار کاربر میذاره که کاربر در نهایت به صورت آنی بتونه کدها رو تغییر بده و نتیجه تغییرات رو در سمت دیگر ببینه.

www.w3school.com



در سمت چپ صفحه source اصلی و در سمت راست صفحه نتایج حاصل از تغییرات رو میتونیم ببینیم.

Image



همینطور یک سری QUERY های خیلی جالبی رو داره که در اختیار کاربر میزاره که از نزدیک باهاشون کار کنه و در نهایت درک بهتری از برنامه نویسی در اختیار کاربر قرار میده.

امیدوارم این مطلب مفید بوده باشه

منبع : http://links.itpro.ir

کاربرد Affinity و Anti-Affinity در VMware VSphere چیست ؟

در مجموعه VSphere قابلیتی به نام Distributed Resource Scheduler وجود دارد که وظیفه مدیریت نحوه قرار گیری VM ها بر روی Host ها را بر عهده دارد و این فرآیند را بصورت خودکار انجام می دهد ، DRS وظیفه متعادل سازی نحوه استفاده از منابع را بر عهده دارد اما بسیاری از مواقع پیش می آید که DRS نمی تواند نیاز ما را برآورده کند ، برخی از فرآیند های کاری هستند که بایستی بصورت دستی انجام شوند و همچنین برخی اوقات برخی VM ها وجود دارند که یک سری وابستگی بین آنها و VM دیگر و یا Host دیگر وجود دارد و با استفاده کردن از DRS ممکن است این وابستگی ها دچار اختلال شوند. برای مثال ممکن است دو VM با هم تبادل اطلاعات بسیار زیادی داشته باشند و پیشنهاد می شود که این VM ها هر دو بر روی یک Host قرار بگیرند تا ترافیک شبکه ما دچار Load نشود ، در چنین مواردی است که ما می توانیم از مکانیزمی به نام Affinity در VSphere استفاده کنیم. در واقع Affinity یا Affinity Rule یک سری تنظیمات در VSphere است که رابطه بین دو یا چند VM را با سیستم Host که بر روی آن قرار گرفته است تعریف می کند. با ما تا انتهای مقاله در ITPRO باشید تا توضیحات بیشتری در این خصوص ارائه کنیم.

Affinity Rule و Anti-Affinity Rule ها در واقع قوانینی هستند که توسط VSphere Hypervisor تعریف می شوند تا موجودیت هایی مثل VM ها یا Host ها را به یکدیگر وصل کنیم یا از همدیگر جدا کنیم ، این قوانین بصورت Required یا الزامی و Preferred یا ترجیحی تعریف می شوند تا ترافیک شبکه شما را مدیریت کنند و از به وجود آمدن ترافیک زیاد در شبکه جلوگیری کنند و با اینکار یک تعادل بین ماشین های مجازی ایجاد می کنند ، برای مثال اگر دو ماشین مجازی با همدیگر ارتباط نزدیکی دارند و ترافیک زیادی بین انها رد و بدل می شود و بهتر است به جای اینکه در شبکه ترافیک را رد و بدل کنند ، آنها را با استفاده از یک Affinity Rule بصورت VM-VM بر روی یک Host همیشه نگهداری می کنیم و ترافیک بین این دو ماشین مجازی دیگر در شبکه رد و بدل نمی شود. برخلاف این ممکن است دو ماشین مجازی داشته باشیم که به شدت منابع CPU و RAM را استفاده می کنند و در اینجا می توانیم یک Anti-Affinity Rule ایجاد کنیم که این دو ماشین هیچگاه بر روی یک Host قرار نگیرند و همیشه از همدیگر جدا بر روی Host های مختلف باشند ، با این روش دیگر هیچ Host ای Overhead اضافه نخواهد داشت.

Affinity Rule و Anti-Affinity rule ها در سه لایه می توانند اعمال شوند ، در بین VM ها و Host ها ، در بین VM ها و VM ها و در نهایت بین VM ها و VM ها بصورت Anti-Affinity ، یکی از نکاتی که در هنگام طراحی Affinity و Anti-Affinity Rule ها بایستی به آن دقت کنید همپوشانی یا تداخل پیدا کردن بین Rule ها است ، برای مثال ممکن است شما یک Anti-Affinity Rule ممکن است برای دو VM ایجاد کنید در محیط VSphere و در همان لحظه ممکن است هر دوی این VM ها با یک VM دیگر Affinity Rule داشته باشند بر روی یک Host مشترک که در اینجا داخل یا همپوشانی ایجاد می شود. در چنین مواردی است که Alert ها و Alarm های رویدادهای VSphere مدیران را از بروز چنین مشکلاتی آگاه می کند. اما ممکن است برای ITPRO های عزیز کمی همچنان این موضوع مبهم باشد ، بهتر است هر کدام از این سه Rule را بصورت تفکیک شده برای شما تشریح کنیم ، به موارد زیر دقت کنید :

کاربرد Affinity Rule بصورت VM/VM


برخی اوقات ممکن است شما به عنوان یک ITPRO بخواهید که دو یا چند VM حتما بر روی یک Host میزبانی شوند و ترافیک آنها در شبکه ارسال نشود. در چنین مواردی که دو یا چند VM وابستگی های زیادی به هم دارند ، اگر بصورت اتفاقی یکی از آنها به یک Host دیگر vMotion شود بایستی VM دوم هم به همان Host ای که VM قبلی vMotion شده است vMotion شود تا کار به درستی انجام شود. این سناریو بسیار محتمل است ، فرض کنید که در یک سازمان شما یک سرور Database و یک سرور Application دارید که هر دوی آنها با هم ارتباط شدیدی دارند ، اگر آنها را بر روی یک Host نگهداری کنید طبیعتا باعث کاهش ترافیک شبکه خواهد شد و سرعت تبادل اطلاعات بین آنها نیز بسیار زیادتر از شبکه خواهد بود.در چنین مواقعی ما بین این دو VM یک Affinity Rule بصورت VM/VM ایجاد می کنیم که در صورت انتقال یکی از VM ها به Host دیگر ، VM دیگر هم به همان ترتیب منتقل شود.

کاربرد Affinity Rule بصورت Host/VM


برخی اوقات ارتباط بین چند VM اصلا مهم نیست اما شما باید مطمئن باشید که برخی از فرآیند های کاری و Workload ها حتما بر روی یک Host خاص انجام می شود . برخی از شرکت ها برایشان خیلی مهم است که بدانند سرور vCenter آنها بر روی کدام Host قرار دارد یا در سناریویی محتمل تر ممکن است شما Application هایی داشته باشید که دارای قفل های سخت افزاری باشند و در صورتیکه این سرور Application به سرور دیگری vMotion شود دیگر قادر به سرویس دهی نمی باشد. شما می توانید در چنین مواقعی Affinity Rule ای ایجاد کنید که VM یا VM های مربوطه همیشه بر روی یک Host مشخص قرار داشته باشند و هیچگاه به Host های دیگر شبکه Migrate نشوند. البته نقطه ضعف اینگونه موارد این است که در صورتیکه Host مربوطه دچار مشکل شود قطعا سرور مورد نظر شما نیز دچار مشکل خواهد شد و از مدار خارج می شود. دقت کنید که همیشه هم ممکن است قفل سخت افزاری در کار نباشد اما لایسنس نرم افزار بر اساس پارامترهای سخت افزاری Host تعریف شود.

کاربرد Anti-Affinity Rule بصورت VM/VM


برخی اوقات پیش می آید که ما نمی خواهیم به هیچ عنوان دو سرور VM بر روی یک Host در کنار هم قرار بگیرند. برای مثال شما در سازمان خودتان حداقل دو عدد Domain Controller نیاز دارید یا حداقل دو عدد DHCP سرور یا DNS سرور یا سرورهایی که با هم Replication دارند مثل SQL سرور ، در چنین مواردی شما برای ایجاد Redundancy این جداسازی را انجام داده اید و اگر بر روی یک Host قرار بگیرند با بروز مشکل برای این Host همه نقشه های شما بی فایده خواهد شد. یا از طرفی برخی اوقات سرورهایی وجود دارند که بار کاری و Load بسیار زیادی بر روی CPU ها دارند و قطعا در یک سازمان شما چند عدد از این سرورها را در اختیار خواهید داشت. در چنین مواردی با استفاده از یک Anti-Affinity Rule می توانید به vSphere بگویید که به هیچ عنوان این سرورها را بر روی یک Host قرار ندهد.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

Docker چیست و چگونه کار می کند ؟

 بصورت کلی Docker یک محصول Open Source است که فرایند ایجاد ، توسعه و اجرا کردن Application ها با استفاده از Container ها که در قسمت OS Level Virtualization در خصوص آنها توضیح دادیم را بسیار ساده می کند. Container ها به یک برنامه نویس این اجازه را می دهد که application خود را با تمامی اجزای مورد نیاز آن اعم از فایل های dll و کلیه library ها ، کلیه وابستگی ها در قالب یک بسته نرم افزاری بیرون بدهد به شکلی که از بیرون یک نرم افزار واحد به نظر برسد. با استفاده از این مکانیزم برنامه نویس می تواند مطمئن باشد که نرم افزاری که نوشته است فارق از نوع لینوکسی که بر روی آن اجرا می شود نیازی به نصب کردن هیچگونه اجزای جانبی برای اجرا شدن نخواهد داشت و حتی تنظیمات آن نیز بصورت از پیش تعریف شده انجام می شود.

Docker چیست ؟



در واقع ما می توانیم از Docker به عنوان یک ماشین مجازی یاد کنیم زیرا تا حدود زیادی وقتی صحبت از Docker می شود اکثر دوستان تصورشان یک ماشین مجازی است. اما بر خلاف ماشین های مجازی که یک سیستم عامل کاملا مستقل ایجاد می کنند ، Docker هیچ سیستم عامل جدیدی ایجاد نمی کند بلکه این امکان را به بسته نرم افزاری ایجاد شده می دهد که از Kernel اصلی سیستم عامل لینوکسی که بر روی آن نصب شده است استفاده کند و در زمان انتقال نیز فقط Package نرم افزاری منتقل می شود نه ماشین مجازی ، در واقع Docker Engine یا موتور اصلی Docker جایگزین نرم افزار Hypervisor ما می شود و اینکار یعنی کارایی سیستم ما به شدت افزایش می یابد زیرا یک لایه واسط به نام Hypervisor حذف شده و نرم افزار بصورت مستقیم با هسته اصلی سیستم عامل کار میکند با این تفاوت که کاملا ایزوله شده است. یکی از مهمترین فاکتورهایی که Docker دارد Open Source بودن آن است. این یعنی هر کسی می تواند Docker را تهیه و سورس آن را تغییر بدهد و یک محصول جدید معرفی کند و یا اینکه قابلیت های جدیدی به آن اضافه کند که تا به حال بر روی آن وجود نداشته است. البته اگر چنین کاری در ایران انجام شود فکر می کنم به نام مجازی ساز بومی تمام ایرانی معرفی شود ( عادت داریم از این کارا بکنیم D: )

Docker چیست

 

Docker به درد چه کسانی می خورد ؟


Docker ابزاری است که هم به درد برنامه نویس ها می خورد و هم به درد مدیرهای شبکه و به همین خاطر هم برخی اوقات به نام DevOps از آن یاد می شود که ترکیبی از دو اسم Developer و Operations است. برای برنامه نویس ها Docker به این معنا است که فقط روی کد نویسی خودتان تمرکز کنید و دغدغه اینکه کد شما قرار است بر روی چه سیستم عاملی با چه نیازمندی هایی نصب شود را نداشته باشید اینکار را Docker برای شما انجام می دهد. از طرفی هزاران برنامه و نرم افزار متنوع وجود دارند که برای کار کردن در محیط Docker طراحی شده اند و شما به عنوان یک ITPRO می توانید به راحتی از آنها در مجموعه خودتان در قالب یک Docker Container استفاده کنید. از طرفی در محیط های عملیاتی Docker این امکان را به همه می دهد که چندین برنامه را همزمان بر روی یک سیستم فیزیکی نصب و اجرا کنند و اینها هیچکدام با یکدیگر کوچکترین ارتباطی نداشته باشند و بصورت کاملا ایزوله در مجموعه فعالیت کنند.

مکانیزم کاری Docker چگونه است ؟


Docker یک لایه واسط بین سیستم عامل اصلی شما و بسته نرم افزاری شما ایجاد می کند و در واقع با استفاده از این لایه واسط نرم افزارها را از همدیگر ایزوله می کند ، هیچکدام از نرم افزارها از وجود نرم افزار دیگر بر روی سیستم خبری ندارند . این مکانیزم یک چیز عجیب و غریب برای لینوکس نیست ، در سیستم عامل لینوکس قابلیت هایی برای ایزوله سازی منابع وجود داشته و دارند که هم هسته سیستم عامل و هم گروه ها و منابع سخت افزاری و نرم افزاری سیستم عامل را بصورت ایزوله شده در اختیار نرم افزارها قرار می دهند که Docker نیز از آنها استفاده می کند ، برای مثال قابلیت های cgroups و kernel namespaces از جمله مواردی هستند که Docker از انها برای کار خودش استفاده می کند. قابلیتی مثل kernel namespace باعث می شود که application ها هیچ دیدی از محیطی که در آن اجرا می شوند نداشته باشند که این موارد شامل process tree ها ، شبکه ، ID های کاربران و حتی فایل سیستم های mount شده نیز می شود ، از طرفی قابلیتی مثل cgroups محدودیت های دسترسی به منابع CPU و RAM و I/O و شبکه را ایجاد می کند . Docker در محیط های اشتراکی یا Shared Environment امنیت را نیز برای نرم افزارها ما به ارمغان می آورد. اما به عنوان یک مکانیزم امنیتی شناخته نمی شود.شما به عنوان یک برنامه نویس یا شبکه کار بایستی سیستم عامل Docker را بصورت جداگانه امن کنید. در مطالب دیگر بصورت ریزتری در خصوص Docker صحبت خواهیم کرد. امیدوارم مورد توجه شما قرار گرفته باشد.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

Virtuozzo چیست و چه کاربردی در مجازی سازی دارد ؟

 نرم افزار Virtuozzo یک نرم افزار شرکتی یا به زبانی بهتر یک راهکار برای میزبانی سرویس های سرور مجازی یا VPS ها می باشد. اگر با کنترل پنل هایی مثل cPanel یا WHM کار کرده باشید باید بدانید که این دو مورد برای هاستینگ های اشتراکی و هاست های Reseller ای مورد استفاده قرار می گیرند و اما Virtuozzo زمانی به کمک شما می آید که شما می خواهید هاستینگ سرورهای مجازی را مدیریت و خدماتی از این قبیل را ارائه دهید. Virtuozzo یک سرویس نرم افزاری است که مالک آن شرکت Parallels می باشد ، شرکتی که شما آن را با محصولات دیگری مثل Plesk می شناسید و در حوزه مدیریت VPS ها و هاستینگ در دنیا معرفو است. Virtuozzo به شما خدمات مجازی سازی بر پایه و اساس سخت افزار را می دهد ، شما این نرم افزار را بر روی سیستم عامل خودتان نصب می کنید و از آن به بعد می توانید از سیستم عاملی که وجود دارد N سیستم عامل ایزوله ارائه دهید. در واقع Virtuozzo یک مکانیزم مجازی سازی با استفاده از Container است و برای سرویس دهندگان هاستینگ بسیار می تواند مقرون به صرفه باشد زیرا نیازی به داشتن چندین سرور برای ارائه خدمات نخواهند داشت و با یک سرور مجازی می توانند چند VPS در اختیار مشتریان قرار بدهند.

معرفی Virtuozzo



در مکانیزم Container-Based به جای اینکه برای هر کدام از VPS هایی که کاربران برای سرویس های هاستینگ نیاز دارند یک سیستم عامل جداگانه نصب و راه اندازی شود ، لایه هایپروایزور حذف می شود و نرم افزار Container Engine مدیریت منابع را بر عهده می گیرد ، در چنین مواقعی این Engine سیستم عامل اصلی را بصورت پارتیشن هایی جداگانه در نظر می گیرد و همه مواردی که شما به عنوان یک کاربر VPS نیاز دارید را بصورت ایزوله شده در قالب مفهومی به نام Container به کاربر ارائه می دهد ، در واقع Container برای کاربر نماد همان VPS را دارد و کاربر تفاوت را درک نمی کند در صورتیکه سیستم عامل اصلی همه این موارد را مدیریت می کند. VPS ای که با استفاده از Container Engine ایجاد می شود با هسته سیستم عامل اصلی که بر روی آن نصب شده است کار می کند و دستورات را از VPS دریافت و به سمت سخت افزار هدایت می کند. از مهمترین مزایای اینگونه مجازی سازی کاهش شدید هزینه های هاستینگ است ، زیرا در حالتی که شما از هایپروایزورهای معمولی مثل Hyper-V یا VMware استفاده می کنید بایستی برای همه افراد یک سیستم عامل جداگانه نصب کنید و همچنین خود نرم افزار Hypervisor نیز بر روی سیستم اصلی Load ایجاد می کند اما با وجود Virtuozzo شما دیگر لایه Hypervisor را حذف کرده اید و حتی روی یک ماشین مجازی که توسط Hypervisor های دیگر نصب شده است نیز می توانید مجددا VPS ایجاد کنید و این برای سرویس دهندگان هاستینگ بسیار مقرون به صرفه است.

نرم افزار Virtuozzo اعلام کرده است که می تواند تا سه برابر بیشتر از Hypervisor های دیگر بر روی سیستم های فیزیکی ماشین مجازی ایجاد کند ، با توجه به اینکه با استفاده از Virtuozzo تعداد سرورهای فیزیکی مورد استفاده در مرکز داده شما نیز کاهش پیدا می کند ، طبیعتا شرکت Parallels و محصول Virtuozzo باعث کاهش هزینه های سخت افزاری ، کاهش نیازهای نگهداری و همچنین کاهش انرزی بیشتر برای دردسرهای مجازی سازی خواهد شد. همچنین شرکت Parallels از Virtuozzo به عنوان یک محصول بسیار عالی برای استفاده در محیط های Cloud Computing نام برده است و مدعی است که حداکثراستفاده از ظرفیت ها ، حداکثر استفاده از هزینه های انجام شده و کاهش هزینه های اضافه و در نهایت بالا بردن کارایی را به مشتریان خود ارائه می دهد.شما به راحتی می توانید با استفاده از Virtuozzo سرورهای مجازی خودتان را مدیریت کنید ، کنترل پنل مدیریتی و گرافیکی قوی ای که این نرم افزار دارد ، این امکان را به شما می دهد که برای هر کسی که دوست داشته باشید کاربر مجزا تعریف کنید و سطوح دسترسی وی به VPS خودش را تعیین کنید. کاربران براحتی می توانند از طریق این کنترل پنل مدیریتی سرورهای خودشان را مدیریت کنند از جمله اینکه سرور خودشان را start ، stop ، reboot و .. کنند و اینکار هیچوقت سایر Container ها را تحت تاثیر قرار نمی دهد. به این کنترل پنل قوی در اصطلاح فنی Power Panel گفته می شود و Virtuozzo از آن برای مدیریت کردن VPS ها استفاده می کند ، حتی نصب کردن و حذف کردن نرم افزارها بر روی VPS نیز می تواند از همین روش انجام شود.

برخی از دوستان تصور می کنند که در صورتیکه از Virtuozzo استفاده کنند دیگر نیازی به استفاده از سایر پنل های مدیریتی مثل cPanel یا WHM برای مدیریت کردن سرویس های هاستینگ خودشان نیست !! این برداشت نادرست است زیرا دو نرم افزار ذکر شده برای مدیریت کردن حسابهای کاربری برای استفاده از دامین های جدیدی و فضاهای موجود و دیتابیس ها مورد استفاده قرار می گیرند در حالیکه Virtuozzo فقط برای مدیریت کردن خود Container یا VPS استفاده می شود ، در واقع مدیریت سیستم عامل با Virtuozzo است و مدیریت هاستینگ و خدمات هاستینگ با کنترل پنل هایی که ذکر کردیم انجام می شود. Virtuozzo یک Application یا نرم افزار مجازی سازی در لایه کلان برای سرورها است که به مدیران این امکان را می دهد که مجازی سازی در لایه سیستم عامل را در مرکز داده خودشان داشته باشند.

شما به جای اینکه بر روی ماشین فیزیکی خودتان چندین سیستم عامل را بصورت مجازی نصب کنید بصورت همزمان یا در واقع همان کاری که شرکت های VMware و Xen انجام می دهند ، می توانید یک سیستم عامل بر روی سرور با استفاده از Virtuozzo نصب کنید و با استفاده از Kernel همین سیستم عامل و ایجاد container های مختلف واقعا هزینه های خودتان را کاهش دهید. جالب اینجاست بدانید که Virtuozzo یک کرنل اختصاصی به نام Kernel Service Abstraction Layer یا KSAL در خودش دارد که می تواند دسترسی به کرنل سیستم عامل ها را مدیریت کند و از هر گونه دسترسی غیرمجاز به هسته سیستم عامل اصلی جلوگیری کند تا حملات احتمالی نتوانند سیستم فیزیکی اصلی را مختلف کنند. Virtuozzo برای خودش یک فایل سیستم اختصاصی نیز دارد که برای ایزوله کردن پارتیشن ها مورد استفاده قرار می گیرد ، این فایل سیستم باعث می شود هرگونه خطای نرم افزاری بلافاصله مدیریت شده و در فضای ایزوله ای که در پارتیشن وجود دارد باقی بماند و سایر سیستم را درگیر نکند.

معرفی نرم افزار Virtuozzo



هر سیستم عامل در Virtuozzo دارای آدرس IP اختصاصی ، نام کاربری و رمز عبور اختصاصی ، پردازش های CPU اختصاصی و حتی سرویس های اختصاصی بر روی سخت افزار است. با توجه به اینکه سیستم عامل اصلی لایه پایین همیشه در حال اجرا است ، هر کدام از VPS ها را می توان بصورت مجزا مدیریت و Reboot کرد و جالب اینجاست که می توانید بصورت Live این VPS ها را به سیستم دیگری منتقل کنید. مدیرانی که در مجموعه خودشان از Virtuozzo استفاده می کنند ، برای مدیریت کردن آن گزینه های مختلفی دارند که از آن جمله می توان به استفاده از Command Line برای مدیریت ، استفاده از رابط کاربری گرافیکی که به Visual Management Center معروف است و همچنین از طریق Virtual Control Center که یک رابط گرافیکی تحت وب است اشاره کرد. Virtuozzo ابتدا توسط شرکتی SWSoft طراحی و معرفی شد و تحت لیسانس GNU GPL با برداشتی از پروژه ای مشابه به نام OpenVZ شروع به کار کرد. آنها OpenVZ را با اضافه کردن قابلیت های بسیار زیاد از یک محصول رایگان تبدیل به یک محصول تجاری بسیار با کیفیت کردند اما همچنان هسته اصلی آن بر پایه OpenVZ بنا نهاده شده است. امیدوارم مورد توجه شما قرار گرفته باشد.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

VMware vShield چیست ؟

همانطور که از نامش هم پیداست این نرم افزار محصول شرکت VMware است و کاربرد اصلی آن در حوزه برقراری امنیت در تکنولوژی های مجازی سازی است. در ابتدا تصور می کردم که vShield یک محصول نرم افزاری است اما بعد از اینکه با این محصول آشنا شدم و کار کردم متوجه شدم که در واقع vShield یک بسته نرم افزاری امنیتی است که مجموعه ای از Virtual Appliance ها هستند که برای برقراری امنیت تکنولوژی های مختلف مجازی سازی شرکت VMware ارائه شده اند. این بسته نرم افزاری امنیت را در لایه هایی مثل خود Virtual Machine های موجود در VSPhere ، در لایه Edge شبکه در نقش فایروال و حتی در لایه سیستم عامل های مجازی ساز به عنوان یک ضد بدافزار یا Antimalware برقرار می کند. همچنین مجموعه vShield امکانات امنیتی که در لایه Edge شبکه یا تکنولوژی مجازی سازی شما نیاز می باشد مثل سرویس های DHCP ، NAT ، VPN ، Port Translation و در نهایت Load Balancing را نیز می توانند ایجاد کنند و شما را بعضا از استفاده کردن از محصولات متنوع امنیتی و پیچیده تر کردن ساختار شبکه باز دارند. بسته به نوع لایسنسی که شما از محصولات vShield خریداری می کنید این محصول دارای پنج بسته نرم افزاری امنیتی می باشد که هر کدام به تفکیک توضیح داده شده اند :

  • VShield Zones : این محصول یک فایروال ساده برای ساختارهای مجازی سازی برای VSPhere ایجاد می کند
  • VShield App : این محصول یا فایروال لایه هفتم ساده برای محافظت از Application ها در Virtual Data Center ها ایجاد می کند.
  • VShield Edge : این محصول در Edge شبکه نصب می شود و برای برقراری امنیت VM ها و VNetwork ها و ارائه خدمات Gateway به آنها استفاده می شود.
  • VShield Data Security : از داده های حساس در محیط های مجازی و به ویژه زیرساختار های Cloud محافظت می کند و از بروز هرگونه اختلال و تخطی از قوانین تعیین شده جلوگیری می کند.
  • VShield Endpoint : این محصول یک آنتی ویروس Agentless یا بدون Agent می باشد که از سیستم عامل های Guest موجود در محیط مجازی در برابر بدافزارها محافظت می کند


البته یک بسته ششمی هم وجود دارد که به عنوان VShield Manager معروف است اما این بسته فقط به عنوان یک بسته مدیریتی است که کنسول مدیریتی سایر نرم افزارهای موجود در این بسته را به شما ارائه می دهد و شما هر پنج بسته دیگر را با استفاده از این محیط مدیریت می کنید . امیدوارم مورد توجه شما قرار گرفته باشد. ITPRO باشید

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

 

مجازی سازی در سطح سیستم عامل یا OS Level Virtualization چیست ؟

مجازی سازی سرور ، مجازی سازی دسکتاپ ، مجازی سازی Application ها و مجازی سازی نرم افزارها از جمله این تنوع های مجازی سازی هستند. امروز می خواهیم در خصوص یک مفهوم جالب در مجازی سازی یا در واقع یک لایه جدید در مجازی سازی به نام OS Level Virtualization یا مجازی سازی در سطح سیستم عامل صحبت کنیم. زمانیکه صحبت از مجازی سازی می شود بلافاصله ما یک نرم افزار Hypervisor و سیستم عامل های مجازی که داخل این Hypervisor ایجاد می شوند را در ذهن تصور می کنیم اما به عنوان یک ITPRO جالب است بدانید که ما می توانیم بدون ایجاد کردن یک سیستم عامل جدید و مجزا هم یک سرور مجازی ایجاد کنیم !!! این در واقع همان تکنولوژی است که ما آن را به عنوان مجازی سازی در لایه سیستم عامل می شناسیم.

مجازی سازی در لایه سیستم عامل چیست ؟



مجازی سازی در لایه سیستم عامل یا Operating System Level Virtualization یک روش مجازی سازی سرور است که هسته یا کرنل سیستم عامل این اجازه را به شما می دهد که چندین سیستم عامل مجازی از درون یک سیستم عامل بصورت کاملا ایزوله بیرون بکشید در واقع شما یک سیستم عامل اصلی دارید که همه چیز بر هسته همین سیستم عامل بنا نهاده شده است و سیستم عامل جدیدی که به شما داده می شود بر پایه و هسته این سیستم عامل اولیه است. به این ماشین مجازی یا در اصطلاح فنی تر instance ای که توسط مجازی سازی در لایه سیستم عامل خروجی داده می شود در اصطلاح فنی Container یا Software Container ، Virtualization Engine یا VE ، Virtual Private Server یا VPS و برخی اوقات Jail هم گفته می شود. این سیستم مجازی که در اختیار کاربر قرار می گیرد این احساس را به کاربر می دهد که در حال کار کردن با یک سیستم کاملا واقعی است اما در باطن این سیستم کاملا مجازی و وابسته به هسته سیستم عامل اصلی است. در سیستم عامل های خانواده لینوکس و یونیکس با استفاده از مکانیزمی به نام chroot شما می توانید تکنولوژی مجازی سازی در لایه سیستم عامل را پیاده سازی کنید. علاوه بر مکانیزم ایزوله کردن هسته یا کرنل اصلی سیستم عامل می توانید قابلیت مدیریت منابع بر اساس نیاز هر Container را نیز فراهم کند.

Operating system Virtualization چیست ؟

 

از مجازی سازی در لایه سیستم عامل در کجا استفاده می شود ؟


از تکنولوژی های مجازی سازی در لایه سیستم عامل بیشتر در محیط های هاستینگ مجازی استفاده می شود ، در اینگونه محیط ها مدیران هاستینگ نیاز به راه اندازی و تخصیص منابع سخت افزاری به تعداد زیادی کاربر دارند و سرعت عمل و امنیت و همچنین مدیریت ساده از اولویت ها به حساب می آید. البته ITPRO ها در سازمان های مختلف نیز ممکن است از تکنولوژی مجازی سازی در لایه سیستم عامل استفاده کنند برای مثال ممکن است یک ITPRO بخواهد سرورهای خودش را جمع آوری و آنها را در قالب Container ها برای استفاده بهینه از منابع و کاهش تعداد سرورهای فیزیکی و حتی مجازی استفاده کند. یکی دیگر از مواردی که مجازی سازی لایه سیستم عامل بسیار می تواند کاربردی باشد ایزوله کردن منابع سخت افزاری و نرم افزاری Application ها برای بالا بردن امنیت و تخصیص درست منابع است ، برای مثال شما می خواهید بر روی یک سرور چندین نرم افزار تخصصی و کاربردی را بدون تداخل با سایر نرم افزارها داشته باشید و نمی خواهید دغدغه ها و درگیری های سیستم عامل های جانبی را داشته باشید و منابع را نیز می خواهید بصورت اختصاصی در اختیار هر Application قرار بدهید. یکی از قابلیت های بسیار جذابی که در OS Level Virtualization وجود دارد امکان استفاده از Live Migration یا همان vMotion است که شما می توانید در یک Cluster از Container ها Load کاری بین سیستم عامل ها را تقسیم کنید و ماشین های مجازی را نیز براحتی جابجا کنید.

مجازی سازی در لایه سیستم عامل چه مقدار Overhead بر روی OS دارد ؟


مجازی سازی در لایه سیستم عامل در واقع به خاطر کاهش بسیار زیاد Overhead تا حد صفر بسیار معروف شده است ، دلیل آن هم کاملا مشخص است ، برنامه ها در چنین محیطی منابع را در قالب پارتیشن های مجازی دریافت می کنند که همه آنها بر روی سیستم عامل اصلی یا مادر قرار گرفته است ، در واقع هر چقدر ما System Call داشته باشیم بر روی این Container ها ، بصورت مستقیم بر روی سخت افزارها و منابع سخت افزاری اجرا می شود و این میان لایه واسط Hypervisor وجود ندارد ، در اینگونه مجازی سازی در واقع ما هیچگونه Emulation ای در واسطه نداریم و در واقع همه سیستم مجازی سازی می شود نه فقط ماشین های مجازی ، بر خلاف آن در Hypervisor هایی مثل ESXi ، یا QEMU یا Hyper-V این لایه واسط خودش باعث ایجاد شدن ناخودآگاه Overhead بر روی سیستم عامل می شود ، حتی سیستم عامل هایی که فرآیند Paravirtualization نیز انجام می دهند مثل Xen یا UML هم نمی توانند به این اندازه Overhead را بر روی سیستم عامل کاهش بدهند. جالب اینجاست بدانید که در این نوع مجازی سازی بسیاری از وابستگی های سخت افزاری Hypervisor ها وجود ندارد و بر روی سخت افزارهای بسیار زیادی بدون محدودیت قابل پیاده سازی است.

مجازی سازی در لایه سیستم عامل چه مقدار انعطاف پذیری دارد ؟


یکی از نقاط ضعفی که در مجازی سازی لایه سیستم عامل وجود دارد همین بحث انعطاف پذیری است. هیچوقت نمی توانید شما در این سطح از مجازی سازی انتظار انعطاف پذیری را داشته باشید که در سایر راهکارهای مجازی سازی سرور استفاده می کنید ، دلیل آن هم کاملا مشخص است ، شما در این سرویس هیچگونه بحثی به نام Host OS و Guest OS دیگر ندارید و در واقع تنها یک Host وجود دارد و یک هسته یا کرنل سیستم عامل وجود دارد. برای مثال شما با استفاده از این نوع مجازی سازی می توانید بر روی سیستم عامل لینوکس بسیاری از توزیع های مختلف سیستم عامل لینوکس را نصب کنید با توجه به اینکه کرنل آنها یکی است مشکلی پیش نمی آید اما طبیعتا شما نمی توانید بر روی سیستم عامل لینوکس ، سیستم عامل ویندوز را به عنوان Container داشته باشید. البته شما بر روی سیستم عامل ویندوز هم همین محدودیت ها را دارید ، شما در این سیستم عامل در صورت مجازی سازی لایه سیستم عامل فقط می توانید ویندوز داشته باشید.

ذخیره سازی اطلاعات در مجازی سازی لایه سیستم عامل چگونه است ؟


برخی از مکانیزمهای ذخیره سازی در مجازی سازی لایه سیستم عامل در قالب File Level Copy On Write یا CoW عمل می کنند که شما آن را به اسم فایل سیستم می شناسید ، در واقع یک فایل سیستم بین چندین پارتیشن به اشتراک گذاشته می شود و Constrainer نیز به همین شکل به اشتراک گذاشته می شود ، به محض اینکه تغییری در این پارتیشن ها ایجاد شود Container ها تغییرات خودشان را بصورت خودکار کپی می کنند. این روش برای بکاپ گیری بسیار ساده است و هم فضای کمی اشغال می شود و هم از نظر سادگی بهتر است ، به نوعی یک ساختار ذخیره سازی Cache وجود دارد و از مکانیزم Block Level تا حد زیاد بهتر عمل می کند ( البته در این لایه ) ، برخی دیگر از مکانیزم Whole System Virtualizer یا مجازی سازی کلی سیستم برای ذخیره سازی استفاده می کنند که برای فایل سیستم های غیر بومی سیستم عامل کارایی بهتری دارد و امکان Roll Back و Snapshot را نیز فراهم می کند.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

کارکردن با میکروتیک بصورت آنلاین بدون نیاز به نصب

شاید برای شما هم پیش آمده باشد که بخواهید از سیستم عامل یا محصولات میکروتیک استفاده کنید اما فرصت خرید تجهیزات یا حوصله نصب کردن سیستم عامل آن را نداشته باشید ، شما می تونید برای استفاده از این محصول به صورت آنلاین با استفاده از لینک زیر اقدام کنید ، لینک زیر تنظیمات یک روتر میکروتیک در قالب webfig یا پیکربندی از طریق وب رو به شما نمایش میده ، حداقل می تونید با استفاده از این لینک با محیط این تجهیزات آشنا بشید و کمی هم دید نسبت به محصولات میکروتیک پیدا کنید ، این لینک معمولا با به روز رسانی نسخه های مختلف Router OS به روز رسانی هم می شود. امیدورام از مشاهده این لینک استفاده کنید.
لینک

تفاوت بین AMD-V و Intel VT و Intel VT-d در چیست ؟

امروزه واژه های مخفف آنقدر زیاد شده اند که حتی حرفه ای های اینکار هم در حفظ کردن و متوجه شدن تفاوت های بین تکنولوژی های موجود دچار مشکل می شوند. تا همین چند وقت پیش هر کس از من می پرسید AMD-V یا Intel-VT چیست براحتی می گفتم قابلیت مجازی سازی است که در CPU های این شرکت ها پیاده سازی شده است اما هر روز به این قابلیت ها اضافه می شود و باید دقیقا بدانید که مثلا فلان مخفف چه قابلیت اضافه تری به شما ارائه داده است. زمانیکه صحبت از خریداری کردن یک سرور Host جدید می شود شما به عنوان یک خریدار و یا نماینده یک سازمان باید بدانید که قابلیت های جدیدی که در خصوص مجازی سازی به داخل ای CPU ها اضافه شده است چه چیزهایی است تا بر حسب نیاز سرور مناسب خودتان را اخریداری کنید.

AMD-V چیست



امروزه یکی از مهمترین نکات در خریداری CPU ها پشتیبانی کردن از قابلیت های مجازی سازی است. اگر ندانید که چه قابلیتی از CPU های جدید در خصوص مجازی سازی نیاز دارید و با آنها آشنا نباشید نمی توانید CPU مناسبی تهیه کنید که Workload کاری شما را به خوبی پشتیبانی کند. در این میان دو قابلیت بسیار مهم در خصوص مجازی سازی در CPU های شرکت های Intel و AMD وجود دارد که با توجه به اینکه نامگذاری آنها بسیار شبیه است بیشترین ابهام را برای ما ایجاد می کنند. هر دو نوع CPU های شرکت Intel و AMD قابلیت های مجازی سازی را ارائه می کنند که در ادامه در خصوص آنها صحبت کرده ایم. این دو قابلیت را بصورت کلی به نامهای AMD-V و Intel-VT می شناسیم. امروزه وجود این دو قابلیت برای مجازی سازی در سازمان ها الزامی است.

Intel-VT چیست



راهکارهای مجازی سازی اولیه ای که در دنیا معرفی شد ، بر پایه و اساس Software Emulation یا شبیه سازی نرم افزار کار می کردند تا بتوانند جایگزین قابلیت های سخت افزار بشوند. در واقع می توان اینطور گفت که در سخت افزارها چیزی به عنوان ویژگی یا امکان مجازی سازی وجود نداشت و این لایه نرم افزار بود که همه چیز را کنترل می کرد. دسترسی به منابعی مثل CPU و RAM و ... همه و همه در لایه نرم افزار انجام می شد و نرم افزار سخت افزار را مدیریت می کرد.طبیعی بود که نرم افزار به تنهایی باعث کند شدن و کاهش کارایی سیستم مجازی سازی می شد و این به خاطر مدیریت شدن تقریبا همه فرآیند های مجازی سازی توسط نرم افزار بود.مدیریت منابع و رفتارهای ماشین های مجازی نیز طبیعتا به دلیل کاهش کارایی سرور به سختی انجام می شد. در نهایت تولید کننده های CPU در دنیا با توجه به گسترش روز افزون مجازی سازی تصمیم گرفتند که قابلیت های مجازی سازی را در لایه سخت افزار در پردازنده های خود قرار بدهند.

AMD Virtualization چیست



هر دو شرکت AMD و Intel شروع به ساختن پردازنده هایی کردند که در داخل خودشان Extension ها یا ویژگی های سخت افزاری تعبیه شده بود که می توانستند کارهای تکراری و بیخودی لایه نرم افزار را مدیریت کنند و دیگر لایه نرم افزار در این جریان درگیر نمی شد ، در اصطلاح فنی کارهای اضافی لایه نرم افزار در لایه سخت افزار Offload می شد. با قرار گرفتن این قابلیت در پردازنده های این شرکت ها تقریبا وظیفه سیستم عامل در مدیریت منابع سخت افزاری در لایه های پایین به صفر کاهش پیدا کرد و باعث شد کارایی ماشین های مجازی بر روی سرور فیزیکی به شدت افزایش پیدا کند. مدیریت سخت افزارهایی مثل RAM و CPU قبلا بر عهده نرم افزار Hypervisor بود اما با معرفی این Extension های CPU مدیریت RAM و CPU و دسترسی به منابع سخت افزاری بر عهده خود CPU قرار گرفت. این تکنیک به عنوان Hardware Assist Virtualization یا مجازی سازی در لایه سخت افزار نیز عنوان می شود. مدیریت ورودی و خروجی اطلاعات یا I/O برای سخت افزارها از VM ها بصورت کامل توسط CPU مدیریت می شد. این تکنولوژی ها به عنوان تکنولوژی های Intel-VT برای شرکت Intel و AMD-V برای شرکت AMD معرفی شدند.

قابلیت های Intel-VT و AMD-V هر کدام بعضا دارای یک سری پردازنده های زیرمجموعه بودند که در مدیریت کردن سخت افزارها و منابع سیستم تفاوت های داشتند که همین موضوع باعث شد تکنولوژی های AMD-V و Intel-VT دارای سری سخت افزاری شوند. برای مثال Intel VT-d یا AMD-Vi از این جمله زیرمجموعه ها هستند. در صورت نداشتن قابلیت های AMD-V یا Intel-VT بر روی یک CPU ممکن است شما نتوانید یک سیستم عامل 64 بیتی guest را بر روی نرم افزار ESXi خودتان نصب و اجرا کنید و یا اصلا نتوانید نرم افزار Hyper-V را نصب کنید. قابلیت های AMD-V و Intel-VT به ماشین مجازی یا Guest Machine این اجازه را می دهند که بتوانند در یک سطح دسترسی بالاتر از منابع CPU استفاده کند.

قابلیت Intel VT-d یک نوع مجازی سازی سخت افزاری است که می توانید Input Output یا همان I/O را در سیستم کنترل کند ، همین تکنولوژی در CPU های شرکت AMD به عنوان Directed I/O شناخته می شود. تکنولوژی AMD-Virtualization برای اولین بار توسط شرکت AMD در سال 2004 با سری پردازنده های AMD Athlon 64 X2 و Athlon 64 FX معرفی شد و امروزه در اکثر سری های پردازنده این شرکت این تکنولوژی وجود دارد. در این میان Intel VT-d همانطور که گفتیم یک extension برای پشتیبانی از اختصاص منابع خاص سیستم به ماشین های مجازی است در حالیکه Intel VT-c برای ارائه پشتیبانی بهتر I/O در سویچ های شبکه در راهکارهای مجازی سازی استفاده می شود. امیدوارم مورد توجه شما قرار گرفته باشد. 

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

وب سایتی با بیش از یک هزار طرح و ایده و 6 هزار برنامه نویس و حامی

یکی از مواردی که معمولا ما ITPRO ها به دنبال آن هستیم شناسایی ایده های جدید است ، اگر مهندس احمدی در مقاله خود در خصوص کهنه بودن یا تکراری بودن برخی ایده هایی که در استارت آپ های ایران مطرح می شود صحبت می کند دلیلش کاملا مشخص است ، ایده قبلا وجود داشته اشت و پیاده سازی شده است ، یا نمونه خارجی یا نمونه داخلی موفقی داشته اشت. اما از کجا می توانیم نسبت به ایده های افراد دید پیدا کنیم؟ امروز می خواهیم به شما وب سایتی که بیش از 6 هزار سرمایه گذار و برنامه نویس را در خودش جا داده است که ایده های بسیار زیادی را به اشتراک گذاشته اند را به شما معرفی کنیم. وب سایت www.ideaswatch.com را می توان به عنوان بزرگترین مرجع معرفی ایده های استارت آپی در دنیا معرفی کرد ، بیش از 1000 عدد ایده که به صورت رایگان در معرض دید همگان قرار گرفته اند و شما می توانید با مشاهده آنها و توضیحات خلاصه ای که در خصوص آنها داده شده است ذهن خودتان را خلاق تر کنید.

استفاده راحت تر از nslookup

همان طور که میدانید nslookup یکی از ابزارهای اساسی در ضمینه dns میباشد که به وسیله ی آن اطلاعات مربوط به رکورد های (dns ( a record ،aaaa record ،cname ،mx record و ....) به دست می آوریم .
لینکی که خدمتتان آورده شده همین کار را راحت تر کرده و به صورت ویزاردی و تحت وب انجام میدهد

Image


همانطور که مشاهده میکنید در قسمت query type نوع رکورد خود را مشخص میکنیم (اخرین گزینه any typeکه تمام این ویژگی ها را برای نمایش فعال میکند ) در قسمت server خود سایت یک dns server را بصورت پیش فرض انتخاب کرده و از آن استفاده میکند
لینک
امیدوارم مورد توجهتان قرار گیرد