In a previous blog entry, I mentioned decision-making. The following blog is an example of how I make decisions during my consulting work.
A few weeks ago, I received a request to assist with a previous job. This job requires me to use and perform certain tasks using a Windows OS. As my primary digital workspace is performed using macOS, this prompted me to look a little deeper into the new Windows 11 system (it’s looking PRETTY close to some Linux OSes to me).
https://blogs.windows.com/windowsexperience/2021/06/24/introducing-windows-11/
During this dig, I came across the concept of containers. Thus, for this new round of work I was presented with the question: Virtual Machines or Containers?
What is a Virtual Machine (VM)?
Adding to the robust cloud of information cycling its way through the Internet, here is, yet another, explanation of a VM. A Virtual Machine is essentially a window into another operating system. After you start-up your computer, you can install a piece of software (VMware, UTM, and Parallels) that allows you to install other operating systems on your computer. The layer that allows this to occur with VMs is called a Hypervisor. This allocates (well, humans allocate) the resources (RAM, harddrive space, network) of the one computer around all of the VMs that are made on your machine. Want to run 3 separate computers on your computer; macOS, Windows 7, and Ubuntu? A VM is a great way to go. There’s also another option.
https://www.netapp.com/blog/containers-vs-vms/
As per usual, when I come across a new technological concept (or piece of knowledge), I go to step 0 and understand what it is.
What is a container?
A container is a piece of software that allows an operating system to run on top of your operating system. They are isolated “micro” computers that operate from your computer. Instead of running on top of the hardware (like a VM does, using the Hypervisor), they run on top of the native operating system. Some examples of this are Docker, AWS Fargate or ECS, and Google Kubernetes Engine (GKE).
https://www.netapp.com/blog/containers-vs-vms/
Why does this matter?
VMs achieve isolation of machines. You can create separate servers, relatively independent from one another, on that one native machine. Containers achieve process isolation. These contained machines share the same resources from the native computer, but are only interested in their contained resources, i.e., libraries, binaries, etc. This can make them (processing on the native computer) much faster than VMs. Choosing between these two, VMs or Containers, is an application-dependent decision. VMs are more supportive of legacy applications, whereas Containers are typically supportive of cloud-based applications.
For a comparison:
| VMs | Containers |
| Each machine runs its own OS, | All containers share the host OS, |
| Fully isolated; more secure, | Process-level isolation; potentially less secure, |
| Heavyweight, | Lightweight, |
| Hardware-level virtualisation, | OS virtualization, |
| Limited performance, | Native performance, |
| Allocates required memory, | Requires less memory space, |
| Minutes startup time. | Millisecond startup time. |
Bottom Line
What’s the job?
Provide IT support for a remote mine- connecting to a computer that handles data-specific data for solar.
What do I need? What’s necessary?
Hardwire, network (RJ45) connection to a computer using a macOS machine, through a USB-C to USB-A hub. This means that I will be running various peripherals (USB, RJ45, potentially RS-232 (Serial)) from the Mac through to the other OS. Installed programs and packages, and a little chair to sit on because I will be out in a field making these adjustments.
What’s my choice?
Based on the type of services and applications that require me to function in a remote location, a VM is most appropriate for my requirements. Containers are super efficient and good at running software-specific programs, whereas VMs are really good at hosting specific operating systems. Based on the type of task requirements for this job, this is why I have chosen to engage with a Windows 10 VM.


One response to “4 – Which one?”
[…] people) this past week for work in a gold mine. This job was similar to the one in Queensland a few months ago. Instead of a 150kW solar farm, this one was a 2.3MW solar farm. The farm consisted of 140 trackers […]