একটি ভার্চুয়াল মেশিন (VM) অনেক virtualisation প্রযুক্তির জন্য বেশ একটি জেনেরিক শব্দ।
ভার্চুয়ালাইজেশন প্রযুক্তিগুলিতে অনেকগুলি প্রকরণ রয়েছে তবে মূলগুলি হ'ল:
- হার্ডওয়্যার স্তর ভার্চুয়ালাইজেশন
- অপারেটিং সিস্টেমের স্তরের ভার্চুয়ালাইজেশন
qemu-kvmএবং VMWareপ্রথম উদাহরণ। ভার্চুয়াল পরিবেশগুলি যেখানে একটি সম্পূর্ণ অপারেটিং সিস্টেম চলমান পরিচালনা করতে তারা হাইপারভাইজার নিয়োগ করে। উদাহরণস্বরূপ, একটি qemu-kvmসিস্টেমে আপনার কাছে একটি ভিএম চলমান ফ্রিবিএসডি, অন্য চলমান উইন্ডোজ এবং অন্য একটি চলমান লিনাক্স থাকতে পারে।
এই প্রযুক্তিগুলির দ্বারা তৈরি ভার্চুয়াল মেশিনগুলি অতিথির কাছে বিচ্ছিন্ন পৃথক কম্পিউটারের মতো আচরণ করে। এগুলির একটি ভার্চুয়াল সিপিইউ, র্যাম, এনআইসি, গ্রাফিক্স ইত্যাদি রয়েছে যা অতিথির বিশ্বাস জেনুইন নিবন্ধ। এ কারণে, ভিএমগুলিতে অনেকগুলি বিভিন্ন অপারেটিং সিস্টেম ইনস্টল করা যেতে পারে এবং তারা কোনও পরিবর্তন ছাড়াই "বাক্সের বাইরে" কাজ করে।
এটি খুব সুবিধাজনক হলেও, অনেকগুলি ওএস অনেক প্রচেষ্টা ছাড়াই ইনস্টল করবে, হাইপারভাইসরকে সমস্ত হার্ডওয়্যার অনুকরণ করতে হবে, যা জিনিসকে ধীর করতে পারে। একটি বিকল্প হ'ল প্যারা-ভার্চুয়ালাইজড হার্ডওয়্যার, যাতে ভার্চুয়াল পরিবেশে পারফরম্যান্সের জন্য ডিজাইন করা অতিথির জন্য একটি নতুন ভার্চুয়াল ডিভাইস এবং ড্রাইভার তৈরি করা হয়েছে। qemu-kvmএর virtioজন্য ডিভাইস এবং ড্রাইভারের পরিসর সরবরাহ করুন। এর একটি খারাপ দিক হ'ল অতিথি ওএসকে অবশ্যই সমর্থন করা উচিত; তবে যদি সমর্থিত হয় তবে পারফরম্যান্স সুবিধাগুলি দুর্দান্ত।
lxcঅপারেটিং সিস্টেম লেভেল ভার্চুয়ালাইজেশন বা পাত্রে একটি উদাহরণ। এই সিস্টেমের অধীনে, কেবল একটি কার্নেল ইনস্টল করা আছে - হোস্ট কার্নেল। প্রতিটি ধারক কেবল ব্যবহারকারীল্যান্ড প্রক্রিয়াগুলির বিচ্ছিন্নতা। উদাহরণস্বরূপ, একটি ওয়েব সার্ভার (উদাহরণস্বরূপ apache) একটি পাত্রে ইনস্টল করা আছে। যতক্ষণ না সেই ওয়েব-সার্ভার সম্পর্কিত, কেবলমাত্র ইনস্টল করা সার্ভারটি নিজেই। অন্য একটি ধারক হয়ত কোনও এফটিপি সার্ভার চালাচ্ছেন। এই এফটিপি সার্ভারটি ওয়েব-সার্ভার ইনস্টলেশন সম্পর্কে সচেতন নয় - কেবল এটির নিজস্ব। অন্য একটি ধারকটিতে একটি লিনাক্স ডিস্ট্রোর সম্পূর্ণ ইউজারল্যান্ড ইনস্টলেশন থাকতে পারে (যতক্ষণ না ডিস্ট্রো হোস্ট সিস্টেমের কার্নেলের সাথে চলতে সক্ষম)।
তবে, ধারকগুলি ব্যবহার করার সময় কোনও পৃথক অপারেটিং সিস্টেম ইনস্টলেশন নেই - কেবল ব্যবহারকারীল্যান্ড পরিষেবাদির বিচ্ছিন্ন দৃষ্টান্ত। এ কারণে আপনি কোনও ধারকটিতে বিভিন্ন প্ল্যাটফর্ম ইনস্টল করতে পারবেন না - লিনাক্সে উইন্ডোজ নেই।
ধারকগুলি সাধারণত একটি ব্যবহার করে তৈরি করা হয় chroot। এটি /প্রক্রিয়াটির সাথে কাজ করার জন্য একটি পৃথক বেসরকারী রুট তৈরি করে । অনেকগুলি ব্যক্তিগত ব্যক্তিগত শিকড় তৈরি করে, প্রক্রিয়াগুলি (ওয়েব-সার্ভারগুলি বা একটি লিনাক্স ডিস্ট্রো ইত্যাদি) তাদের নিজস্ব বিচ্ছিন্ন ফাইল সিস্টেমে চালিত হয়। আরও উন্নত কৌশল cgroupsযেমন নেটওয়ার্ক এবং র্যামের মতো অন্যান্য সংস্থানকে আলাদা করতে পারে।
উভয় পক্ষে পক্ষে মতামত রয়েছে এবং দীর্ঘকাল ধরে চলমান বিতর্কগুলি সবচেয়ে ভাল is
- পাত্রে হালকা, প্রতিটি জন্য একটি সম্পূর্ণ ওএস ইনস্টল করা হয় না; হাইপারভাইজারদের ক্ষেত্রে এটি। তারা অতএব নিম্নতর নির্দিষ্ট হার্ডওয়্যারে চালাতে পারে। তবে, তারা কেবল লিনাক্স গেস্ট চালাতে পারে (লিনাক্স হোস্টে)। এছাড়াও, কারণ তারা কার্নেল ভাগ করে নিয়েছে, সম্ভবত কোনও আপসযুক্ত ধারক অন্যটিকে প্রভাবিত করতে পারে।
- হাইপারভাইজারগুলি আরও সুরক্ষিত এবং বিভিন্ন ওএস চালাতে পারে কারণ প্রতিটি ভিএম-তে একটি সম্পূর্ণ ওএস ইনস্টল করা আছে এবং অতিথিরা অন্যান্য ভিএম সম্পর্কে সচেতন নয়। যাইহোক, এটি হোস্টের আরও সংস্থানগুলি ব্যবহার করে, যা তুলনামূলকভাবে শক্তিশালী হতে হবে।