<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>virtual machines Archives - Tech Chronicles</title>
	<atom:link href="http://kostacipo.stream/tag/virtual-machines/feed/" rel="self" type="application/rss+xml" />
	<link>http://kostacipo.stream/tag/virtual-machines/</link>
	<description>Ramblings of a Tech Dude</description>
	<lastBuildDate>Mon, 20 Apr 2020 13:11:46 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>

<image>
	<url>https://kostacipo.stream/wp-content/uploads/2019/12/cropped-profile-32x32.jpg</url>
	<title>virtual machines Archives - Tech Chronicles</title>
	<link>http://kostacipo.stream/tag/virtual-machines/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Containers vs Virtual Machines (VMs): What&#8217;s the Difference?</title>
		<link>http://kostacipo.stream/containers-vs-virtual-machines-vms-whats-the-difference/</link>
					<comments>http://kostacipo.stream/containers-vs-virtual-machines-vms-whats-the-difference/#respond</comments>
		
		<dc:creator><![CDATA[Majordomo]]></dc:creator>
		<pubDate>Mon, 20 Apr 2020 13:11:46 +0000</pubDate>
				<category><![CDATA[DevOps]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[containers]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[virtual machines]]></category>
		<guid isPermaLink="false">http://www.kostacipo.stream/?p=1786</guid>

					<description><![CDATA[<p>&#160; Both virtual machines and containers are used to created isolated virtual environments for developing and testing applications or software. The question is how they differ. This article examines the two concepts to help understand the difference between a container and a VM. It defines containers and virtual machines separately, as well as side-by-side, to [&#8230;]</p>
<p>The post <a href="http://kostacipo.stream/containers-vs-virtual-machines-vms-whats-the-difference/">Containers vs Virtual Machines (VMs): What&#8217;s the Difference?</a> appeared first on <a href="http://kostacipo.stream">Tech Chronicles</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>&nbsp;</p>
<div class="uncode_text_column">
<p>Both <strong>virtual machines</strong> and <strong>containers</strong> are used to created isolated virtual environments for developing and testing applications or software. The question is how they differ.</p>
<p>This article examines the two concepts to help understand the difference between a container and a VM. It defines containers and virtual machines separately, as well as side-by-side, to see what makes one distinct from the other.</p>
</div>
<div class="heading-text el-text">
<h2 class="h3"><span id="htoc-what-are-virtual-machines-vms">What are Virtual Machines (VMs)?</span></h2>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>A<strong> virtual machine (VM)</strong> is an operating system that shares the physical resources of one server. It is a guest on the host’s hardware, which is why it is also called a <strong>guest machine</strong>.</p>
<p>There are several layers that make up a virtual machine. The layer that enables virtualization is the <strong>hypervisor</strong>. A hypervisor is a software that virtualizes the server.</p>
</div>
<div class="heading-text el-text">
<h2 class="h3"><span id="htoc-how-a-virtual-machine-works">How a Virtual Machine Works</span></h2>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>Everything necessary to run an app is contained within the virtual machine – the virtualized hardware, an OS, and any required binaries and libraries. Therefore, virtual machines have their own infrastructure and are self-contained.</p>
<p><img fetchpriority="high" decoding="async" class="aligncenter wp-image-84024 size-full lazyloaded" src="https://phoenixnap.com/kb/wp-content/uploads/2019/04/hypervisor-host-os-of-a-virtual-machine.png" alt="hypervisor host os of a virtual machine diagram " data-lazy-src="https://phoenixnap.com/kb/wp-content/uploads/2019/04/hypervisor-host-os-of-a-virtual-machine.png" data-was-processed="true" width="506" height="508"></p>
<p>Each VM is completely isolated from the host operating system. Also, it requires its own OS, which can be different from the host’s OS. Each has its own binaries, libraries, and applications.</p>
</div>
<div class="divider-wrapper ">
<hr class="border-accent-color separator-no-padding"></div>
<div class="icon-box icon-box-left">
<div class="icon-box-content">
<p><strong>Virtual machine monitor (VMM)</strong>: another name for the hypervisor</p>
<p><strong>Host machine</strong>: the hardware on which the VM is installed</p>
<p><strong>Guest&nbsp;</strong><strong>machine</strong>: another name for the VM</p>
</div>
</div>
<div class="divider-wrapper ">
<hr class="border-accent-color separator-no-padding">
<h3 class="h3"><span id="htoc-virtual-machine-pros">Virtual Machine: PROS</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>VMs <strong>reduce expenses</strong>. Instead of running an application on a single server, a virtual machine enables utilizing one physical resource to do the job of many. Therefore, you do not have to buy, maintain and store enumerable stacks of servers.</p>
<p>Because there is one host machine, it allows you to <strong>efficiently manage</strong> all the virtual environments with the centralized power of the hypervisor. These systems are entirely separate from each other meaning you can install <strong>multiple system environments</strong>.</p>
<p>Most importantly, a virtual machine is isolated from the host OS and is a <strong>safe</strong> place for experimenting and developing applications.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-virtual-machine-cons">Virtual Machine: CONS</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p><strong>Virtual machines may take up a lot of system resources&nbsp;</strong>of the host machine, being many GBs in size. Running a single app on a virtual server means running a copy of an operating system as well as a virtual copy of all the hardware required for the system to run. This quickly adds up to a lot of RAM and CPU cycles.</p>
<p>The process of&nbsp;<strong>relocating an app running on a virtual machine can also be complicated&nbsp;</strong>as it is always attached to the operating system. Hence, you have to migrate the app as well as the OS with it. Also, when creating a virtual machine, the hypervisor allocates hardware resources dedicated to the VM.</p>
<p>A virtual machine rarely uses all the resources available which can&nbsp;<strong>make the planning and distribution difficult.&nbsp;</strong>That’s still economical compared to running separate actual computers.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-popular-vm-providers">Popular VM providers:</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<ul>
<li>VMware vSphere</li>
<li>VirtualBox</li>
<li>Zen</li>
<li>Hyper-V</li>
<li>KVM</li>
</ul>
<p>&nbsp;</p>
<h2><span id="htoc-what-is-a-container">What is a Container?</span></h2>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>A container is an environment that runs an application that is not dependent on the operating system. It isolates the app from the host by virtualizing it. This allows users to created multiple workloads on a single OS instance.</p>
<p>The kernel of the host operating system serves the needs of running different functions of an app, separated into containers. Each container runs isolated tasks. It cannot harm the host machine nor come in conflict with other apps running in separate containers.</p>
</div>
<div class="heading-text el-text">
<h2 class="h3"><span id="htoc-how-do-containers-work">How do Containers Work?</span></h2>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>When working inside a container, you can create a template of an environment you need. The container essentially runs a snapshot of the system at a particular time, providing consistency in the behavior of an app.</p>
<p>The container shares the host’s kernel to run all the individual apps within the container. The only elements that each container requires are bins, libraries and other runtime components.</p>
<p><img decoding="async" class="aligncenter wp-image-84025 size-full lazyloaded" src="https://phoenixnap.com/kb/wp-content/uploads/2019/04/container-elements.png" alt="container elements diagram" data-lazy-src="https://phoenixnap.com/kb/wp-content/uploads/2019/04/container-elements.png" data-was-processed="true" width="580" height="323"></p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-container-pros">Container: PROS</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>Containers can be as small as 10MB. This makes containers remarkably <strong>lightweight</strong> and <strong>fast to launch</strong> as opposed to deploying virtual machines, where the entire operating system needs to be deployed.<br />Because of their size, you can quickly <strong>scale</strong> in and out of containers and add identical containers.</p>
<p>Also, containers are excellent for <strong>Continuous Integration and Continuous Deployment</strong> (CI/CD) implementation. They foster collaborative development by distributing and merging images among developers.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-container-cons">Container: CONS</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>A container uses the kernel of the host OS and has operating system dependencies. Therefore, containers can differ from the underlying OS by dependency, but not by type. The host’s kernel <strong>limits the use of other operating systems</strong>.</p>
<p>Containers still do not offer the same <strong>security and stability</strong> that VMs can. Since they share the host’s kernel, they cannot be as isolated as a virtual machine. Consequently, containers are process-level isolated and one container can affect others by compromising the stability of the kernel.</p>
<p>Moreover, once a container performs its task, it shuts down, deleting all the data inside of it. If you want the data to remain on the host server, you have to save it using Data Volumes. This requires <strong>manual configuration and provisioning</strong> on the host.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-popular-container-providers">Popular Container Providers:</span></h3>
</div>
<div class="uncode_text_column">
<ul>
<li style="list-style-type: none;">
<ul>
<li style="list-style-type: none;">
<ul style="list-style-type: square;">
<li>Docker</li>
<li>AWS</li>
<li>LXD</li>
<li>Java Containers</li>
<li>Hyper-V Containers</li>
<li>Windows Server Containers</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="heading-text el-text">
<h2>&nbsp;</h2>
<h2 class="h3"><span id="htoc-how-to-choose-vms-vs-containers">How to Choose VMs vs Containers</span></h2>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>Deciding whether to go for virtual machines or containers depends on the work you want your virtual environment to carry out.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-how-to-choose-vms-vs-containers">Virtual machines&nbsp;are a better solution if you need to:</span></h3>
</div>
<div class="uncode_text_column">
<ol>
<li>Manage a variety of operating systems</li>
<li>Manage multiple apps on a single server</li>
<li>Run an app that requires all the resources and functionalities of an OS</li>
<li>Ensure full isolation and security</li>
</ol>
</div>
<div class="uncode_text_column">&nbsp;</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-how-to-choose-vms-vs-containers">Containers are suitable if you need to:</span></h3>
</div>
<div class="uncode_text_column">
<ol>
<li>Maximize the number of apps running on a server</li>
<li>Deploy multiple instances of a single application</li>
<li>Have a lightweight system that quickly starts</li>
<li>Develop an application that runs on any underlying infrastructure</li>
</ol>
</div>
<div class="divider-wrapper ">
<hr class="border-accent-color separator-no-padding"></div>
<div class="icon-box icon-box-left">
<div class="icon-box-icon fa-container">&nbsp;</div>
<div class="icon-box-content">
<p><strong>Note:&nbsp;</strong>VMs and containers should not necessarily be seen as rivals. Rather, you can use both to balance the workload between the two.</p>
</div>
</div>
<div class="divider-wrapper ">
<hr class="border-accent-color separator-no-padding"></div>
<div class="uncode_text_column">
<p><strong>Virtual machines are commonly used for&nbsp;</strong>demanding applications, network infrastructure, and apps that will consume most of the resources of the VM.</p>
</div>
<div class="uncode_text_column">
<p><strong>Containers are commonly used for&nbsp;</strong>web, applications and caching services, network daemons, and small databases.</p>
</div>
<div class="heading-text el-text">
<h3 class="h3"><span id="htoc-drawbacks-of-containers">Conclusion</span></h3>
</div>
<div class="clear">&nbsp;</div>
<div class="uncode_text_column">
<p>Before committing to VMs or containers, make sure to consider all the factors that will influence efficiency. Take into account the kind of tasks they will have to perform as well as the resources you have available.</p>
</div>
<p>The post <a href="http://kostacipo.stream/containers-vs-virtual-machines-vms-whats-the-difference/">Containers vs Virtual Machines (VMs): What&#8217;s the Difference?</a> appeared first on <a href="http://kostacipo.stream">Tech Chronicles</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>http://kostacipo.stream/containers-vs-virtual-machines-vms-whats-the-difference/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
