Page 1 1001 Virtualization and Cloud Computing Study Guide for the CompTIA A+ Core Series Exam
How to Prepare for Questions About Virtualization and Cloud Computing on the CompTIA A+ Core Series 1001 Test
The previous edition of the CompTIA A+ test only considered these topics within other concept areas in sort of a cursory manner. The current test, however, devotes a whole section of its content outline to virtualization and cloud computing, so they have definitely become more important in today’s computing environment. About 12% of the questions on the 1001 test assess your knowledge and skills in these two areas. The questions about virtualization will be presented based on a given “scenario.”
For this exam, it is important to understand cloud computing and the different types of cloud computing offerings that exist. Before cloud computing, scalability was difficult, as users were always restricted by their local resources. A common example of cloud computing includes online file storage. Online file storage allows users to store documents, photos, and videos “in the cloud” without needing to take up storage on their local hard drive. However, cloud computing covers far more than just file storage. It’s now possible to move an entire organization’s infrastructure (everything from servers to networking equipment) to the cloud.
As mentioned in the previous section, cloud computing encompasses many different aspects of computing. We call these aspects cloud models. For this exam, you will need to know the three most common types of cloud models: IaaS, SaaS, and PaaS.
Infrastructure as a Service (IaaS) can be thought of as a virtual datacenter. As its name suggests, Infrastructure as a Service (IaaS) providers allow clients to build their entire infrastructure in the cloud. Infrastructure includes items such as servers, firewalls, routers, and switches. In an IaaS environment, clients are entirely responsible for managing, maintaining, and patching operating systems and applications. Examples of IaaS providers include DigitalOcean® and Rackspace®.
In recent years, there has been a major shift from locally installed software to web-based software. Software as a Service (SaaS) has become a popular choice for organizations because it allows them to access their programs anywhere an internet connection is available. SaaS can be described as any program that is accessed via the web and not locally installed. Examples of SaaS providers include Google Apps® and Dropbox®.
Platform as a Service (PaaS) provides a platform for developers to build their own applications. PaaS providers will handle everything on the backend including servers, operating systems, and development tools. This allows developers to focus on creating, building, and managing their applications. Examples of PaaS providers include Google App Engine® and AWS Elastic Beanstalk®.
Public cloud—When you hear a person use the term the cloud, they are typically speaking of the public cloud. The public cloud refers to anything that is delivered across the open internet. When you interact with applications such as Dropbox®, you are accessing that program via the public cloud.
Community cloud—It can be easy to get the terms community and public confused, but in a discussion about cloud technologies, they mean different things. A community cloud is not available to everyone in the public in the way a public cloud is, rather it should be thought of as a shared cloud being used by multiple organizations. Private clouds are very costly to implement and maintain, but some organizations are not comfortable using a cloud that is available to the entire public. In these scenarios, a community cloud is a great option.
Private cloud—Private clouds are certainly the most secure cloud option, but they come at a high price. Private clouds give organizations flexibility while ensuring that they still have 100% ownership of their data and infrastructure.
Hybrid clouds—Private, community, and public clouds can be combined to create a hybrid cloud. Hybrid clouds can be beneficial when some data needs to be kept in a private cloud, but the cost to implement a private cloud for all of the data may be too high.
A major upside to virtualization is that it provides flexibility. An example of this flexibility is shared resources. If there is a need for more resources, hardware can be combined and shared. One physical host machine with a lot of resources (memory, storage capacity) can have its resources shared among multiple virtual machines. This resource sharing can occur both internally and externally.
It’s not always clear how much of a particular resource you are going to need when setting up a new environment. It’s entirely possible (and quite common) for your resource needs to grow as the organization grows. An organization that started with 5 servers might triple their server needs in several years. Virtualization makes it possible to quickly add new servers as you need them without the hassle of purchasing new hardware each time. This is known as rapid elasticity.
Just as a company may see its need for servers to increase, they may also see it decrease. Some companies may require additional web servers to handle traffic around Christmas time when they are the busiest. However, when traffic decreases the rest of the year, it doesn’t make financial sense to keep paying for these additional resources. Virtualization can provide on-demand access to resources so organizations can simply pay for the resources they need as they need them.
Resource pooling is the concept of combining the resources of physical servers and making them available in a pool. When this is done on a large scale (imagine Amazon) it allows customers to use and pay for only the resources they need from the pool at a given time.
When purchasing services from a cloud provider, you may be billed based on measurements such as web traffic or uptime. This type of billing process is known as a measured service.
A metered service differs from a measured service because rather than being interested in how long your web application has been running or some other service measurement, they base the pricing off of the amount of processing resources you require.
Off-Site Email Applications
For many years, organizations had to have an on-premise email server to send and receive emails. Thanks to cloud computing, this is no longer a requirement. While there are still plenty of organizations that prefer to use an on-premise solution, many organizations are not following the trend and moving their email services to the cloud. There are numerous options when it comes to off-site email applications but one common example is Microsoft making Outlook® available in the cloud.
Cloud File Storage Services
Cloud file storage has made accessing files much easier than in the past. This is because many cloud file storage services use synchronization apps which allow users to access the same version of their files on all of their multiple devices.
Virtual Application Streaming/Cloud-Based Applications
Having the ability to access your applications from anywhere you have an internet connection has become an absolute must for most people. Virtual application streaming and cloud-based applications have made this possible. A cable provider is no longer required to watch television as it can be streamed through a cloud streaming service like Neflix® or Hulu®.
Applications for Cell Phones/Tablets
Cloud-based applications are not just for computers, they can also be accessed on cell phones. One example of this is Spotify. It’s not necessary to use all of your cell phone or tablet’s storage to store hundreds of songs because they can now be streamed directly from the cloud.
Applications for Laptops/Desktops
While many people still choose to download and install programs like Microsoft Word®, Powerpoint® and Excel® locally on their laptop or desktop, it’s no longer required. Many applications are now available for use from the cloud in a SaaS-based model. The entire suite of Microsoft Office products, for example, be used entirely via the web with Office 365®.
Thanks to virtualization, it’s possible to have multiple virtual desktops running on one physical machine. These machines operate similar to a physical desktop, but all of the hardware is virtualized. For example, just as a physical computer needs a network interface card (NIC) to connect to a network, a virtual desktop uses a virtual NIC. The virtual NIC performs the same functions that a physical NIC, but it’s software-based rather than hardware-based.
At times it is necessary to configure a virtual machine to run on your local desktop. This process is known as client-side virtualization. In order to set up and configure client-side virtualization, you’ll need to first verify that your physical system’s hardware can meet the resource requirements needed for a virtual machine. Next, you’ll need to install a hypervisor on your local machine. After the hypervisor is installed, you can create a virtual machine and configure the proper virtualized hardware for the guest operating system you’d like to use. After all of these steps are complete, you may install the operating system the same way that you install an operating system on a physical machine.
Virtual machines are useful because they allow for the use of multiple desktops without the need to purchase expensive hardware for every single machine. One use for a virtual desktop is the need for multiple operating systems. Imagine a user that has a Windows desktop, but needs to perform a specific task on a Linux® machine. Rather than needing to purchase an entirely new computer to run Linux®, the user could simply create a virtual machine on her Windows® machine that would run Linux®.
Before being able to create a virtual machine, there are requirements to satisfy. A hypervisor is required in order to run a virtual machine. It’s also important to ensure that the physical hardware CPU has hardware virtualization support. The majority of new computers today will have hardware virtualization support as both AMD and Intel added it to all of their CPUs over a decade ago.
Not all virtual machines are created equal. This is because the individual that is building the virtual machine determines what resources to provide to the virtual machine. This means determining the amount of hard drive space and the amount of memory that your local machine can afford to give the virtual machine. If your physical machine doesn’t have a lot of RAM, then you will not be able to provide enough RAM for your virtual machine to run smoothly.
It’s easy to confuse the terms emulation and virtualization, but while they may go hand-in-hand, they are two different concepts. During virtualization, the virtual desktop creates a completely new simulated environment. Emulators are used to mimic or imitate the behavior of another device. One common use for emulators is in the video game industry. Gamers are able to emulate a Super Nintendo® on their computer, this allows them to play old games like Super Mario Bros® on their computer without the need for the Super Nintendo® hardware.
Just as security is vital in physical computing, it’s also important to think of security when working with virtual machines. This means implementing the same types of security controls on your virtual desktops as you would on your physical ones such as strong passwords, account lock out policies, and even multi-factor authentication.
Virtual networking is a bit different than standard networking and there are few options that you should be aware of.
Internal networking—This function allows a VM to communicate with other VMs that you specify, but not access the internet or any other computers on your network.
Bridged mode—In bridge mode, the VM is able to communicate directly through the network to which the physical machine is connected.
NAT mode—Having a VM network in NAT mode allows the VM to make outbound connections only.
Full virtualization is not possible without the use of a hypervisor. A hypervisor handles all of the interactions during virtualization and makes it possible for one host to run multiple guest operating systems at the same time. VMware ESXi® and Microsoft Hyper-V® are two examples of popular hypervisors.