Buzzwords in Cloud Computing

Have you ever attended a cloud computing conference in order to improve yourself only for you to end the session angry and confused? A lot of times, this is always this case for young people who are starting their career in tech. Sometimes it is the case for developers who are not from computer science or electronics background. They write codes without knowing much about the infrastructure and platform where these codes run. From my personal experiences, some of these words are technical and any attempt to read up leads to more technical jargons. In this writeup, I will explain some common words you will hear on your journey as a layman in cloud computing.

  • Virtual machine (sometimes referred to as Image or Instance): Virtualization is the basic technology on which everything on cloud runs. Cloud providers offer most (if not all) of their services as virtualized services. Virtualization simply refers to a situation whereby a consumer is presented with something that resembles what they would have gotten if they had bought the full system. In simple terms, a virtual machine is a computer running within a computer. Software that runs on a virtual machine is not allowed to escape to the bigger computer they run on or even other virtual machines running on the bigger computer (this is what is known as sandboxing or a sandbox). Virtual machines are powered by different operating systems, Linux, windows, android. virtual machine.png Image: Virtual machines running on an infrastructure

  • Server: Servers started as a piece of software to manage the rising cases of file sharing between computers on a network. As personal computers increased file sharing increased, servers used up the resources (CPU, Memory, Drives) of the computers they were running on. This led to the development of special hardware or computers to be responsible for managing different resources for computers in a network. Today we have a network server, file server, web server, email server, etc. This is why you can install a windows server on your personal computer. Don't get confused.

A server is a computer or system that provides resources, data, services, or programs to other computers, known as clients, over a network.

Servers can also run on virtual machines also just as they can be on physical systems.

  • Container A container is a standard software unit that packages all dependencies and codes needed to run an application from one computer (computing environment) to another computer in a very reliable and fast way. Dockers are just like virtual machines. Spotting the difference between them could be seen from the hardware architecture of both technologies. Unlike VMs containers do not speak directly to the hardware kernel of the computer they are running on. They communicate directly with the operating system. This makes them light weight than virtual machines.

container-what-is-container.png vs virtual machine architecture.png

  • XaaS A common term you hear in cloud computing is (X) as a service. Because virtually any IT functionality can be offered to a client as a service, the term became very popular. Examples are Platform as a Service(PaaS), Infrastructure as a Service (IaaS) and Software as a Service. When you hear (This) as a Service, just know that the service is rendered to clients and the customers in return pay for such service.

There are a lot of these buzzwords out there. I will keep updating the list of buzzwords and explaining them without including technical jargons.