Chapter 11

Integrate Components into a Cloud Solution

This chapter covers the following official CompTIA Cloud+ exam objective:

  • Images 3.1 Given a scenario, integrate components into a cloud solution.

(For more information on the official CompTIA Cloud+ exam topics, see the Introduction.)

This is the first chapter of a collection of chapters that focus on cloud deployment. Deployment is the process of creating resources within a cloud environment. The first part of this chapter will focus on subscription services, including what a subscription service is and the different types of subscription services.

Next, you will learn about deploying different types of resources, including compute, storage, network, and applications. Note that compute, storage, and network resources are covered in further detail in separate dedicated chapters.

This chapter will also cover templates, including OS templates, solution templates, and variables. Lastly, the chapter will discuss containers.

CramSaver

If you can correctly answer these questions before going through this section, save time by skimming the ExamAlerts in this section and then completing the CramQuiz at the end of the section.

1. Cloud vendors like RingCentral, Vonage, and Microsoft 365 Business Voice provide _____ service.

2. Cloud-based messaging is considered ____ as a Service.

3. In an IaaS solution a cloud vendor provides the _____ for you to develop or install your software solution.

4. What type of storage resource is typically used for compute resources (virtual machines specifically) to store data, including the operating system of the computer resource?

Answers

1. VoIP

2. Software

3. Infrastructure

4. Block storage

Subscription Services

With a subscription-based service, you typically pay up front (most subscriptions last for one year) to have access to a cloud-based service. Compare this with a pay-as-you-go model in which you pay for the service only for as long as you use it.

The cost of the subscription-based service depends on the length of the contract and the volume of use. For example, your organization opts in for a one-year contract for up to 5,000 accounts from a cloud vendor that provides email services. If you opted for a two-year contract, the cost per year would likely be less because the cloud vendor secures a longer period of revenue.

However, it is challenging for organizations to guess how many seats (that is, accounts) they will need each year, so while they may cost more overall, it is typically better to go with shorter-term versus longer-term contracts. With subscription-based services, it is not uncommon for the customer to end up overpaying for seats that are not used.

The following subscription-based services are typically offered by cloud vendors as well as software vendors as SaaS offerings:

  • Images Communications

  • Images Email

  • Images Voice over IP (VoIP)

  • Images Messaging

  • Images Collaboration

Each service is described in greater detail later in this chapter.

An alternative to subscription-based services is consumption-based. However, the service types that are normally good for subscription-based services tend to be bad choices for consumption-based services. With consumption-based services you pay for what you consume (use). For example, an email service that is consumption-based would end up costing more if your employees send and receive more emails (or larger emails), but on a subscription-based plan, the costs would typically remain the same. Some subscription-based plans do impose limitations, which can result in a higher cost if your organization goes over the limits, so there can be a consumption-based pricing structure attached to a subscription-based plan.

File Subscriptions

File subscriptions are part of a service that enables your employees and customers to store files (data) in the cloud. This service is considered Software as a Service (SaaS) but also falls under the category of Storage as a Service (STaaS). See the “SaaS” section later in this chapter for more details.

File subscriptions are a popular cloud service, and as a result, many options are available. Google Drive, Microsoft OneDrive, and Dropbox are just a few of the popular options.

Communications

While many people use cell phones to make and receive phone calls, traditional phone calls were placed on land-line devices, and the communication took place over the public switched telephone network (PSTN). This technique, which dates back to the 1800s, uses copper wires and is still commonly used today. However, this medium for communication has limitations (analog voice only) and requires a vast infrastructure that doesn’t exist throughout the world.

A more modern alternative is to use a communication option called voice over IP (VoIP) that is provided by organizations like cloud vendors. With VoIP, phone calls are placed over an Internet broadband connection. This connection requires converting the sound into a digital signal. Cloud vendors like RingCentral, Vonage, and Microsoft 365 Business Voice provide VoIP service. This service is considered a SaaS, but also falls under the category of Communication as a Service (CaaS). See the “SaaS” section later in this chapter for more details.

Email

In all likelihood you have used a cloud-based email service. At the time this book was written, there are approximately 4 billion email users worldwide and over 1.8 billion of them use Gmail, just one of many cloud-based email services. That means that about 45 percent of all email users in the world use one of the many different cloud-based email services. Additional popular cloud-based email providers include Outlook, Zoho Mail, and Yahoo! Mail.

Cloud-based email services are considered a SaaS. See the “SaaS” section later in this chapter for more details.

Voice over IP (VoIP)

For more information on VoIP, see the “Communications” section earlier in this chapter.

Messaging

A messaging application enables you to send a message (text, video, images, and so on) to another individual, either directly to a mobile device or a computer. Almost all messaging services, including Facebook Messenger and WhatsApp, are cloud-based services. Cloud-based messaging is considered a SaaS. See the “SaaS” section later in this chapter for more details.

Collaboration

Collaboration services provide a variety of features all designed to allow organizations to work together to solve problems, create new products, or perform other business-related activities. Most of these tools provide some sort of messaging feature that includes the ability to send messages to an individual or a group. Other features may include video conferencing, forums, file transfer capability, and project management features.

Examples of collaboration tools include Slack, Microsoft Teams, and Trello. Cloud-based collaboration services are considered a SaaS. See the “SaaS” section later in this chapter for more details.

Virtual Desktop Infrastructure (VDI)

At this point you should understand what a virtual machine (VM) is. If not, please review the “Deploying Virtual Machines (VMs) and Custom Imagessection later in this chapter. A virtual desktop infrastructure (VDI) leverages the power of a virtual machine to provide virtual desktops to users.

Imagine a scenario in which you are often traveling. You don’t want to carry your system with you, but you want to be able to access the IT infrastructure in your organization. Using a mobile device, you can connect to a virtual machine via the Internet and bring up your desktop environment.

There are several advantages of VDI:

  • Images Because the desktops reside on a virtual machine, the administration of these desktops is easier. With centralized management, updates and patches can be applied easily, by administrators, without the need for regular users to handle these operations.

  • Images Because of the higher level of centralized control, VDI is typically more secure than individual user computers.

  • Images Using a VDI solution can reduce the costs of buying hardware (laptops) for each user. Users can use more affordable devices (mobile phones, tablets, and so on) but can still use a laptop if they choose.

  • Images Given that the virtual desktop is remotely available, it can be reached in most cases wherever an Internet connection is available. Some networking issues (firewalls, for example) may hinder this access.

Note that VDI itself would be considered a Platform as a Service (PaaS), but the virtual machines themselves would be considered an Infrastructure as a Service (IaaS). See the “PaaS” and “IaaS” sections later in this chapter for more details.

Directory and Identity Services

For more information on directory and identity services, see “Directory Services” in Chapter 5, “Identity and Access Management.”

Cloud Resources

Cloud resource is a broad term that refers to some sort of system in the cloud. A resource can be a wide range of things: a virtual machine, an email service, a firewall, or a database. Think about it this way: if it is something in the cloud, it is considered a cloud resource.

IaaS

In an IaaS solution a cloud vendor provides the infrastructure for you to develop or install your software solution. With this solution the cloud vendor essentially provides the hardware structure (compute, networking, and storage), and you manage the rest, including the operating system and the software. Examples of IaaS include using Azure virtual machines and AWS EC2 instances. A major advantage of an IaaS software solution is control. You choose the platform (operating system), the amount of hardware resources used, and how the system is configured. This control may also be considered a disadvantage because you are also tasked with maintaining the operating system and the software.

PaaS

In a PaaS solution the cloud vendor provides a platform that you can use to install or develop a software solution. Examples of PaaS include OpenShift, AWS Elastic Beanstalk, and the Google App Engine. With a PaaS solution the primary advantage is that you can deploy a customized software solution without having to maintain the platform that the software runs on. With a PaaS solution, like the SaaS solution, you still may have concerns regarding control over your data and potential vendor lock-in. However, PaaS does offer more control over these issues, so the concern isn’t as strong as with the SaaS solution.

SaaS

In a SaaS software solution the entire application is hosted and maintained by the cloud vendor. Examples of SaaS include Salesforce, Dropbox, Gmail, Webex, and DocuSign. One advantage of SaaS solutions is that the vendor handles all maintenance of the software. Disadvantages include a lack of control over your data, the inability to customize the software to your organizational needs, and potential vendor lock-in (when your organization is so entrenched in a solution that it is almost impossible to switch to another solution).

Provisioning Resources

When you, as a cloud customer/consumer, create a resource in a cloud provider’s environment, this process is referred to as provisioning a resource. A wide variety of resource types is available in the cloud. They can include compute resources, storage resources, network resources, and applications.

Resources can be provisioned either manually or automatically as the need arises. The remainder of this chapter will focus on different types of resources that can be provisioned in the cloud as well as how they may be provisioned.

Compute

A cloud compute resource is any resource that has a primary goal of performing any sort of computation operation. This typically means virtual machines and containers, both of which are covered in more detail later in this chapter.

Note that cloud computing is a more generic term that means to use cloud resources to perform operations. In other words, the terms cloud compute resource and cloud computing are not synonymous.

Storage

A storage resource is anything that is used in the cloud to store data. There are three different types of cloud storage resources:

  • Images Block storage: This type of storage resource is typically used for compute resources (virtual machines specifically) to store data, including the operating system of the computer resource. If you are used to non-cloud storage devices, think of a block storage resource like a hard disk or a partition. Examples include AWS Elastic Block Storage (EBS), Microsoft Azure Blob storage, and Google Cloud Persistent Disks. Block storage typically is raw storage space and normally requires a filesystem to be placed on the storage resource for it to be used. This typically happens during the installation process of a virtual machine.

  • Images File storage: This type of storage resource acts much like a network filesystem (also referred to as a network-attached storage, or NAS). This type of storage is used when you need to be able to share the files with multiple resources. For example, two virtual machines may need to be able to access the same files (or share files between the two VMs). Examples of file storage include AWS Elastic File System (EFS), Azure Files, and Google Cloud Filestore.

  • Images Object storage: Object storage is a feature in which objects (unstructured data like emails, videos, graphics, text, or any other time of data) can be stored in a cloud environment. Object storage doesn’t use traditional filesystem storage features but rather organizes the data into “groups” (similar to a folder in a filesystem). Data is typically accessed using a URL, like you would use to access a web page. Object storage is durable and highly available, supports encryption, and can be used in a flexible manner that supports different backup and archiving features. Examples include AWS Simple Storage Service (S3), Google Cloud Storage, and IBM Cloud Object Storage.

Note that databases are not included in the list of storage devices. Databases do store data, but they provide more functionality than typical storage devices; therefore, they belong in a separate category of cloud resources.

Note

While there is some coverage of databases on the CompTIA Cloud+ exam, this isn’t a major topic in any of the exam objectives

Network

As with systems within your own IT infrastructure, cloud resources need network configuration to communicate between the resource and to systems on the Internet. However, network cloud provisioning is a bit different from what you might be used to in your own IT infrastructure on-premises.

The network in a typical IT infrastructure on-premises consists of the physical network connections and the individual network settings on each system within the network. In a cloud environment, the physical network is already in place, installed by the cloud provider. However, several different organizations may share that same physical network, so you need to create your own private network within that physical network (such as a VPC in AWS and GCP, and a VNet in Azure).

An entire chapter is devoted to provisioning the network in a cloud environment. Chapter 13, “Cloud Networking Solutions,” covers a variety of cloud networking solutions that are listed in the CompTIA Cloud+ certification exam objectives.

Application

Other common cloud resources are applications. An application resource is a program that is running in a cloud environment. Because applications may need more hardware resources (RAM, storage, and so on) in different scenarios, the cloud is an excellent location to host applications because resources can be allocated on the fly.

Serverless

See “Serverless” in Chapter 1, “Different Types of Cloud Models.”

Deploying Virtual Machines (VMs) and Custom Images

To make the process of deploying a virtual machine easy, most cloud vendors provide prebuilt images. An image is the operating system in its raw format. When you launch a virtual machine using an image, the resulting active operating system is referred to as an instance.

In some cases, the prebuilt instances provided by the cloud vendor might not suit your specific needs. In those cases, you can use tools provided by the cloud vendor to produce your own custom image. Doing so normally involves using an existing image, provisioning the virtual machine, customizing the operating system (including adding customized applications), and then converting the virtual machine into an image that you can use later.

Templates

When you deploy a virtual machine or other cloud resources, such as a database, there are typically a lot of questions that you need to answer. A template is a file that is used to answer these questions automatically.

Cloud templates are typically constructed in a data model/format that is easier to work with. In almost all cases the data format is an industry standard format. The most common formats used for templates are JSON, YAML, and XML.

OS Templates

An OS template is used to deploy a virtual machine. The questions that you are asked can vary. For example, in AWS you are asked the following:

  • Images The image type for the operating system.

  • Images The instance type, which is how AWS refers to the hardware specifications for the virtual machine (how much RAM, how many virtual CPUs, and so on).

  • Images Additional instance details, such as how many instances and which virtual network to assign the instance(s) to. See Figure 11.1 for an example of some of these details.

Images

FIGURE 11.1 AWS Instance Details

  • Images The storage type(s). See the “Persistent Storage” section later in this chapter for more details.

  • Images The tags associated with the instance. You use tags in AWS to group instances together based on identifiers that you define.

  • Images The security group that the instance is associated with. In AWS the security group acts as a virtual firewall.

By creating an OS template, you can automate your installations. This capability is important for situations in which you need to rapidly deploy a virtual machine, such as when using an auto-scaling solution. See “Auto-scaling” in Chapter 3, “High Availability and Scaling in Cloud Environments,” for more details.

Solution Templates

A solution template is designed to deploy a non-OS resource in the cloud. This is a pretty wide field and can include resources like databases, web servers, and virtual networks.

Identity Management

Identity management is covered in detail in Chapter 5.

Containers

Consider containers as alternatives to virtual machines. While virtual machines are a great solution for many cases, if you need to run just a single application, you might be better off with a serverless solution (see the “Serverless” section in Chapter 1) or a container.

A container acts, in many ways, like a virtual machine. It appears to have access to an operating system (unless it’s a serverless solution, which uses less hardware resources than either virtual machines or containers), but it really has a very small footprint. A container will share much of the operating system with other containers, which means that container itself can be much smaller than a full virtual machine.

A container can host a web server, a mail server, or any number of other applications, including applications that your organization builds. The advantages of using a container versus a virtual machine are that a container should cost your organization less to deploy in the cloud, it can be deployed quicker than a virtual machine, and it scales very well.

Configure Variables

When you use a template (see the “Templates” section earlier in this chapter), you can use variables to customize the template. You use a variable when you want to have options when deploying the resource using a template.

For example, suppose you want to create a template that will deploy a virtual machine, but you don’t want to answer the question of the type of instance within the template itself. You can tell the template to accept a value that is passed into the template when the template is used. That value is then assigned to a variable that is used to indicate the type of the instance.

Configure Secrets

See the “Secret Management” section in Chapter 5.

Persistent Storage

Recall from the “Storage” section earlier in this chapter that there are three types of storage in the cloud: block, file, and object. When you’re deploying a virtual machine, the operating system is stored on a block storage resource. This storage device is persistent, meaning that even if you power off the virtual machine, the data is still retained on the storage device.

Most cloud vendors have a nonpersistent storage option for additional storage resources. For example, AWS offers a feature called an instance store. This block storage resource is available as long as the virtual machine is running. When the virtual machine is powered off, the instance store is deleted, making this a nonpersistent storage solution.

Auto-scaling

See “Auto-scaling” in Chapter 3.

Postdeployment Validation

If you are using an automated method of deploying a cloud resource, you should have some method of validating the success of the deployment after the deployment completed. Some cloud vendors have tools in place to validate some cloud resource deployments, but this task will likely require you to build a customized method to validate the deployment.

This is one of the reasons why automation tools are very popular. Tools like Jenkins, Ansible, and Chef (among many others) not only automate the deployment of resources but also validate the deployment. Cloud vendors often have their own automation tools. For more details, see Chapter 19, “Automation and Orchestration Techniques.”

What Next?

If you want more practice on this chapter’s exam objectives before you move on, remember that you can access all of the CramQuiz questions on the companion website. You can also create a custom exam by objectives with the practice exam software. Note any objectives you struggle with and go to that objective’s material in this chapter.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.117.196.184