COURSE 5 – CONFIGURATION MANAGEMENT AND THE CLOUD

Module 1: Automation in the Cloud

GOOGLE IT AUTOMATION WITH PYTHON PROFESSIONAL CERTIFICATE

Complete Coursera Study Guide

Last updated:

INTRODUCTION – Automation in the Cloud

In this module, you’ll be introduced to the concept of automation at scale and how it can be successfully achieved. You’ll learn what it means to work at scale and how automation is needed to scale effectively. Next, you’ll be introduced to configuration management. You’ll learn the differences between unmanaged and managed configuration management. Then, you’ll dive into infrastructure as code and learn about the benefits it brings, like making your fleet of nodes more reliable and repeatable. This is a major benefit when managing systems at scale. In the next lesson, you’ll be introduced to Puppet. You’ll learn how to apply basic configuration management and how Puppet agents and masters interact with each other.

Next, you’ll do a rundown of Puppet resources and classes. You’ll learn how resources are basic units for modeling your configurations and how classes are a collection of resources used to achieve a single goal. The final lesson will introduce you to the building blocks of domain-specific language. You’ll learn what Puppet facts are and how it uses a program called Facter to analyze, store and gather this information. Your final lesson will cover the driving principles of configuration management. You’ll learn about declarative, procedural, and idempotent principals and how they differ from each other.

Learning Objectives

  • Understand the definition of working at scale and how automation is an essential tool
  • Understand the difference between unmanaged and managed configuration systems
  • List the benefits of infrastructure as code
  • Understand what Puppet is and how Puppet facts work
  • Understand what Puppet resources and classes are
  • Define the principles of configuration management

PRACTICE QUIZ: CLOUD COMPUTING

1. When we use cloud services provided to the general consumer, such as Google Suite or Gmail, what cloud deployment model are we using?

  • Hybrid cloud
  • Private cloud
  • Public cloud (CORRECT)
  • Multi-cloud

Keep it up! A public cloud offers services to the general public, often as SaaS (Software as a Service) offerings.

2. What is a container?

  • A cloud deployment model that is a combination of public and private clouds
  • A synonym for virtual machine
  • A public file server
  • A virtualized environment containing applications and configurations that can run quickly and reliably on any computing environment (CORRECT)

You got it! A container is an OS- and hardware-independent environment that allows for easy migration and compatibility.

3. Select the examples of Managed Web Application Platforms. (Check all that apply)

  • Google App Engine. (CORRECT)
  • Amazon Elastic Beanstalk (CORRECT)
  • Microsoft App Service. (CORRECT)
  • Dropbox

Nice work! Google App Engine is a Platform as a Service (PaaS) product that offers access to Google’s flexible hosting and Tier 1 Internet service for Web app developers and enterprises.

Great job! AWS Elastic Beanstalk is an easy-to-use PaaS service for deploying and scaling web applications.

Woohoo! Microsoft Azure App Service enables you to build and host web apps, mobile back ends, and RESTful APIs in the programming language of your choice without having to manage infrastructure.

4. When a company solely owns and manages its own cloud infrastructure, what type of cloud deployment model are they using?

  • Public cloud
  • Hybrid cloud
  • Private cloud (CORRECT)
  • Multi-cloud

Way to go! A private cloud deployment is one that is fully owned and operated by a single company or entity.

5. Which “direction” are we scaling when we add RAM or CPU resources to individual nodes?

  • Down
  • Horizontal
  • Up
  • Vertical (CORRECT)

Awesome! Vertical scaling is a form of upscaling, but upscaling can also be horizontal.

6. If a bare-bones cloud computing experience is needed as well as a high level of control over the software being run, what Cloud service would one choose?

  • Software as a Service
  • SQL cloud services
  • Platform as a Service
  • Infrastructure as a Service (IaaS) (CORRECT)

Great job! Infrastructure as a Service (IaaS) provides users with the bare minimum needed to utilize a server’s computational resources, such as a virtual machine. It is the user’s responsibility to configure everything else.

7. Which “direction” are we scaling when we add capacity to our network in order to meet demand?

  • Down
  • Horizontal
  • Up (CORRECT)
  • Vertical

Nice work! Adding capacity to our network to meet demand—whether vertically or horizontally—is considered to be upscaling.

8. What are some advantages to using cloud services? (Select all that apply)

  • Offload complicated setups to the provider (CORRECT)
  • Outsource troubleshooting and maintenance to the provider (CORRECT)
  • Letting the provider worry about complicated security measures (CORRECT)
  • Avoiding bandwidth or connection issues

Great work! Cloud services provide many advantages, such as outsourcing support and maintenance, simplifying configuration management, and letting the provider take care of security.

Great work! Cloud services provide many advantages, including simplifying configuration management, outsourcing support and maintenance, and letting the provider take care of security.

Great work! Cloud services provide several advantages, like putting the provider in charge of security.

9. What does the phrase lift and shift refer to? 

  • Migrating to the Cloud by virtualizing the current configuration (CORRECT)
  • Upscaling some nodes in the network while downscaling others
  • Scaling horizontally
  • Using a container

Nailed it! When we migrate from traditional server configurations to the Cloud, we lift the current configuration and shift it to a virtual machine.

PRACTICE QUIZ: MANAGING INSTANCES IN THE CLOUD

1. What is templating?

  • The process of capturing the entire system configuration to enable us to reproduce virtual machines (CORRECT)
  • The process of copying virtual machines
  • The process of creating a new virtual machine instance
  • The process of testing configurations against known-working settings

Way to go! Effective templating software allows you to capture an entire virtual machine configuration and use it to create new ones.

2. Why is setting up a new series of VMs using a reference image, what service?

  • To follow local laws and regulations
  • To avoid time zone discrepancy
  • To avoid language barriersTo ensure bandwidth and reliability for users (CORRECT)

Right on! Generally, you’re going to want to choose a region that is close to your users so that you can deliver better performance.

3. What option is used to determine which OS will run on the VM?

  • Machine type
  • Boot disk (CORRECT)
  • Region
  • Template

Woohoo! The boot disk from which the VM boots will determine what operating system runs on the VM.

4. When setting up a new series of VMs using a reference image, what are some possible options for upgrading services running on our VM at scale?

  • Manually updating files via the command line
  • Create a new reference image each update (CORRECT)
  • Editing parameters and uploading files individually through the web interface
  • Use a configuration management system like Puppet (CORRECT)

Nice job! One way of updating VM services at scale is to simply spin them up again with an updated reference image.

Awesome! Puppet or other configuration management systems provide a streamlined way to deploy service updates at scale.

5. When using gcloud to manage VMs, what two parameters tell gcloud that a) we want to manage our VM resources and b) that we want to deal with individual VMs? (Check two)

  • compute (CORRECT)
  • init
  • instances (CORRECT)
  • create

Way to go! The compute parameter tells gcloud that we are managing Compute Engine resources.

Woohoo! The instances parameter that follows the compute parameter tells gcloud that we want to manage our VMs on the instance level.

6. If we want to reuse an exact copy of a virtual machine, we might save a snapshot to use as a reference image later. What is this snapshot called?

  • An instance
  • A boot disk
  • A template
  • A disk image (CORRECT)

Excellent! A disk image is a snapshot of a virtual machine’s disk, and is an exact copy of the virtual machine at the time of the snapshot.

7. Using the web interface, what is an easy way to create a virtual machine identical to the one we’ve just configured?

  • Copy and reuse the command line (CORRECT)
  • Save the settings as a text file
  • Download the configuration as a manifest file
  • Take a screenshot of the settings screen

Nicely done! By clicking the link labeled “Command line”, we can see the exact command used to create the virtual machine.

8. It’s important to know where to copy our systemd service file on Linux in order to configure our scripts as services. Do you remember the location of the systemd directory?

  • /user/bin
  • /root
  • /home
  • /etc/systemd/system/ (CORRECT)

Nice job! etc/systemd/system/ is the default systemd directory in many Linux distros, including Red Hat Linux.

9. What does the gcloud init command do?

  • Displays Google Cloud connection data
  • Creates a new virtual machine
  • Authenticates the connection between our virtual machine and Google Cloud (CORRECT)
  • Initializes configuration tests

Awesome! The gcloud init command sets up the authentication procedure between our virtual machine and Google Cloud.

PRACTICE QUIZ: AUTOMATING CLOUD DEPLOYMENTS

1. In order to detect and correct errors before end users are affected, what technique(s) should we set up?

  • Monitoring and alerting (CORRECT)
  • Orchestration
  • Autoscaling
  • Infrastructure as Code

You got it! Monitoring and alerting allows us to monitor and correct incidents or failures before they reach the end user.

2. When accessing a website, your web browser retrieves the IP address of a specific node in order to load the site. What is this node called?

  • Gate node
  • Entry point (CORRECT)
  • Access machine
  • Front line

Awesome! When you connect to a website via the Internet, the web browser first receives an IP address. This IP address identifies a particular computer: the entry point of the website.

3. What simple load-balancing technique just assigns to each node one request at a time?

  • Random
  • Round Robin (CORRECT)
  • Least connections
  • Source IP

Right on! Round-robin load balancing is a basic way of spreading client requests across a server group. In turn, a client request will be forwarded to each server. The load balancer is directed by the algorithm to go back to the top of the list and repeat again.

4. Which cloud automation technique spins up more VMs into instance groups when demand increases, and shuts down VMs when demand decreases?

  • Infrastructure as Code
  • Autoscaling (CORRECT)
  • Load Balancing
  • Orchestration

Way to go! Autoscaling helps us save costs by matching resources with demand automatically.

5. Which of the following are examples of orchestration tools used to manage cloud resources as code? (Check all that apply)

  • Terraform (CORRECT)
  • CloudFormation (CORRECT)
  • Azure Resource Manager (CORRECT)
  • CloudFlare

Woohoo! Like Puppet, Terraform uses its own domain specific language (DSL), and manages configuration resources as code.

Nice job! CloudFormation is a service provided by Amazon to assist in modeling and managing AWS resources.

Excellent! Azure Resource Manager is the deployment and management service for Azure. It provides a management layer that enables you to create, update, and delete resources.

6. What does a load balancer do?

  • Removes inactive nodes
  • Provides extra bandwidth
  • Enhances security
  • Ensures each node receives a reasonable number of requests (CORRECT)

Great job! Load balancers reroute requests in order to balance and reduce network load.

7. What is the difference between automation and orchestration?

  • Orchestration refers to a single task; automation arranges tasks to optimize a workflow
  • Automation refers to a single task; orchestration arranges tasks to optimize a workflow (CORRECT)
  • Automation is automatic; orchestration is entirely manual
  • Automation is entirely automated; orchestration requires manual oversight

Nice work! Automation is when we set up a single step in a process to require no oversight, while orchestration refers to automating the entire process.

8. Do you remember what Infrastructure as Code (IaC) is?

  • Using machine-readable files to automate configuration (CORRECT)
  • A template for a software program that hasn’t been written yet
  • A programming language
  • Code that accesses an external API

Nailed it! IaC uses special machine-readable config files to automate configuration management.

CREATE VM TEMPLATE AND AUTOMATE DEPLOYMENT

1. How do you enable the hello_cloud.py service to run on boot?

  • Use the systemctl enable command (CORRECT)
  • Set it as a cron job
  • Copy it to /etc/init.d/
  • Place it in the /usr/local/bin/ directory

Correct

2. In creating an instance template in GCP, which of the following parameters is used to specify the source of the boot disk?

  • Boot Disk (CORRECT)
  • Name
  • Machine Type
  • Series

3. When creating an image based on the vm1 disk in Google Cloud Platform, what field should be set to ‘vm-image’?

  • Name (CORRECT)
  • Source Disk
  • Firewall
  • Source

4. When creating an instance template in Google Cloud Platform, as described in the process, what is the purpose of setting the firewall to ‘allow HTTP and HTTPS traffic’?

  • To allow web traffic to and from the VM instances. (CORRECT)
  • To configure the VM instances for database access.
  • To restrict all incoming and outgoing network traffic.
  • To enable secure shell (SSH) access to the VM instances.

5. What is the primary purpose of the gcloud command in the Google Cloud Platform (GCP) ecosystem?

  • To order physical hardware for on-premises data centers
  • To manage GCP resources, configure settings, and deploy applications (CORRECT)
  • To create and maintain virtual private networks (VPNs) for secure data transfer
  • To interact with Google Cloud Storage for data warehousing

6. What is the significance of configuring the firewall to ‘allow HTTP and HTTPS traffic’ in the ‘vm1-template’?

  • To ensure all VM instances created with this template can handle web traffic securely. (CORRECT)
  • To enable remote desktop connections to the VM instances.
  • To set up a VPN connection for the VM instances.
  • To configure email services on the VM instances.

7. In Python, what is the primary purpose of configuring an auto-enabled service?

  • To create a graphical user interface (GUI) for an application
  • To set up a service that automatically starts and runs on system boot (CORRECT)
  • To perform real-time data streaming and analytics
  • To develop machine learning models for data analysis

8. What is the purpose of creating an image named “vm-image” based on the “vm1” disk in the provided instructions?

  • To resize the disk of the VM instance vm1
  • To create a template for creating new VM instances with similar configurations as vm1. (CORRECT)
  • To clone the entire VM instance vm1
  • To create a backup of the VM instance vm1

9. You have successfully created new VM instances using the “vm1-template” template as described in the instructions. Now, you want to view the list of these VM instances. How can you accomplish this?

  • Run the command “gcloud instances list vm1-template” from the local terminal.
  • Access the Compute Engine > VM instance page in the GCP Console. (CORRECT)
  • Use the “gcloud list instances” command from the local terminal.
  • Execute the “gcloud compute instances view” command from your local computer.

10. In Git, what is the primary purpose of creating a ‘feature’ branch?

  • To develop new features separately from the main codebase. (CORRECT)
  • To serve as the primary branch for all development work.
  • To fix critical bugs in the production environment.
  • To track changes made directly to the production code.

2.11. What is the purpose of executing the command gcloud compute instances create –zone “Zone” –source-instance-template vm1-template vm2 vm3 vm4 vm5 vm6 vm7 vm8 in the Google Cloud Platform’s command-line interface?

  • To create multiple new VM instances named vm2, vm3, vm4, etc., using the ‘vm1-template’ as a base in the specified zone (CORRECT)
  • To update the settings of existing VM instances to match those of ‘vm1-template’
  • To delete VM instances named vm2, vm3, vm4, etc
  • To list all VM instances created from the ‘vm1-template’

12. In the process of creating VMs in Google Cloud Platform, why is the image named ‘vm-image’ created from the disk of the VM instance ‘vm1’?

  • To update the operating system of vm1.
  • To provide a backup of the vm1 instance.
  • To use as a template for creating additional storage disks.
  • To serve as the boot disk for new VM instances created using the ‘vm1-template’. (CORRECT)

13. How does the creation of the ‘vm-image’ from the vm1 disk and the subsequent ‘vm1-template’ relate to the concept of cloning in VM management?

  • The process represents cloning the operating system and configuration of vm1 to create new, identical VM instances. (CORRECT)
  • Cloning is not involved; the process is only for updating the existing vm1 instance.
  • The ‘vm1-template’ is used to clone the network settings of vm1 for the new VM instances.
  • The ‘vm-image’ and ‘vm1-template’ are used to clone the storage configuration of vm1 for backup purposes.

14. What is the primary purpose of the Google Cloud command-line interface (gcloud) in cloud computing?

  • To provide the primary CLI to Google Cloud Platform, to interact with VMs (CORRECT)
  • To develop mobile apps for Android and iOS
  • To create web applications and databases
  • To analyze data and generate reports for business intelligence

15. What is the main purpose of the git clone command in relation to Git version control?

  • To transfer an established Git repository from an external location to one’s own computer (CORRECT)
  • To obtain and incorporate updates into the local repository from a remote repository
  • To start from scratch and build a new Git repository
  • To create a fresh, empty Git repository locally

16. In the process of creating new VM instances in Google Cloud Platform using the ‘vm1-template’, what is the primary purpose of initially creating the ‘vm-image’ based on the vm1’s disk?

  • To use as the boot disk for the new VM instances created from the ‘vm1-template’. (CORRECT)
  • To serve as a backup for the original vm1 instance.
  • To update the operating system of the new VM instances.
  • To increase the storage capacity of the original vm1 instance.

17. In the given process of VM management in Google Cloud Platform, after creating the ‘vm1-template’, what is the primary purpose of the gcloud compute instances list command?

  • To delete the VM instances that were created using the ‘vm1-template’
  • To modify the configuration of the existing VM instances
  • To list all the newly created VM instances to verify their successful creation (CORRECT)
  • To create additional VM instances in a different zone

18. Which steps are involved in creating a VM template?

  • Restart the VM instance
  • Create an image based on the VM’s disk (CORRECT)
  • Enable a service to run on boot (CORRECT)
  • Clone the Git repository

19. What is the primary purpose of cloning a virtual machine?

  • To physically move a VM from one server to another
  • To create an exact copy of a VM for purposes like testing, scaling, or disaster recovery (CORRECT)
  • To permanently delete the original VM after cloning
  • To increase the processing power of the original VM

20. What command should be used to create new VM instances using the “vm1-template” template from the local computer’s command line interface, as mentioned in the lab instructions?

  • gcloud compute instances create –zone “Zone” –image-template vm1-template vm2 vm3 vm4 vm5 vm6 vm7 vm8
  • gcloud compute instances create –zone “Zone” –source-instance-template vm1-template vm2 vm3 vm4 vm5 vm6 vm7 vm8 (CORRECT)
  • gcloud create vm –template vm1-template –zone “Zone” vm2 vm3 vm4 vm5 vm6 vm7 vm8
  • gcloud create instances –template vm1-template –zone “Zone” vm2 vm3 vm4 vm5 vm6 vm7 vm8

21. Imagine you have successfully created an instance template named “vm1-template” following the provided instructions. You want to create new VM instances with this template in a specific zone. Which command should you use to achieve this?

  • gcloud create vm –template vm1-template –zone “Zone” vm2 vm3 vm4 vm5 vm6 vm7 vm8
  • gcloud create instances –template vm1-template –zone “Zone” vm2 vm3 vm4 vm5 vm6 vm7 vm8
  • gcloud compute instances create –zone “Zone” –image-template vm1-template vm2 vm3 vm4 vm5 vm6 vm7 vm8
  • gcloud compute instances create –zone “Zone” –source-instance-template vm1-template vm2 vm3 vm4 vm5 vm6 vm7 vm8 (CORRECT)

22. What is the purpose of cloning the hello_cloud.py file to the /usr/local/bin/ location during the setup of this lab?

  • To store the VM image
  • To create a template
  • To run the script on boot (CORRECT)
  • To enable auto-scaling

23. What is the main function of an auto-scaling service?

  • To periodically shut down all cloud services for maintenance
  • To consistently maintain the same level of resources regardless of demand
  • To manually adjust the computing resources available to an application
  • To automatically increase or decrease computing resources based on demand (CORRECT)

24. When creating a template for a virtual machine (VM) in Google Cloud Platform (GCP), what is the first step in the process?

  • Create an instance template directly
  • Shut down the VM instance (CORRECT)
  • Change the firewall settings
  • Increase CPU cores.

25. What is the recommended machine series when creating a new instance template in Google Cloud Platform as per the provided instructions?

  • G4
  • E2 (CORRECT)
  • N1
  • M3

26. What are the steps to create an instance template named “vm1-template” based on the “vm-image” for the boot disk?

  • Go to Compute Engine > VM instance, select “vm1-template,” and click on the create button.
  • Go to Compute Engine > Instance templates, click on “Create instance template,” configure the parameters, and click on the create button. (CORRECT)
  • Go to Compute Engine > Images, select “vm-image,” and click on the create button.
  • Go to Compute Engine > Instance templates, select “vm1-template” and click on the create button.

27. Which machine series and machine type are used when creating the instance template named “vm1-template” in the lab instructions?

  • Machine Series: N1, Machine Type: n1-standard-1
  • Machine Series: GCP1, Machine Type: gcp1-small
  • Machine Series: E2, Machine Type: e2-medium (CORRECT)
  • Machine Series: F2, Machine Type: f2-micro

28. After creating the “vm1-template” instance template, you notice that the boot disk for the template is set to a “standard persistent disk.” What type of storage is this and what are its characteristics?

  • It is a network-attached storage with low latency.
  • It is a type of cloud storage known for its high durability.
  • It is a standard type of persistent disk with balanced performance and cost. (CORRECT)
  • It is a type of local storage with high performance.

29. Which construct allows for the modification of firewall rules to selectively permit SSH traffic while blocking other inbound and outbound traffic when creating a new instance?

  • Classes (CORRECT)
  • Functions
  • Modules
  • Tuples

PRACTICE QUIZ: BUILDING SOFTWARE FOR THE CLOUD

1. What is latency in terms of Cloud storage?

  • The measure of how many reads or writes you can do in one second, no matter how much data you’re accessing.
  • The amount of data that you can read, and write in a given amount of time.
  • The amount of time it takes to complete a read or write operation. (CORRECT)
  • The time delay between an input and output.

Latency is the amount of time it takes to complete a read or write operation.

2. Which of the following statements about sticky sessions are true? (Select all that apply.)

  • All requests from the same client always go to the same backend server. (CORRECT)
  • Sticky sessions maintain an even load.
  • They should only be used when needed. (CORRECT)
  • They can cause problems during migration. (CORRECT)

Great work! Sticky sessions route requests for a particular session to the same machine that first served the request for that session.

Woohoo! Because sticky sessions can cause uneven load distribution as well as migration problems, they should only be used when absolutely necessary.

Right on! Sticky sessions can cause unexpected results during migration, updating, or upgrading, so it’s best to use them only when absolutely necessary.

3. If you run into limitations such as rate limits or utilization limits, you should contact the Cloud provider and ask for a _____.

  • Beta version
  • Quota increase (CORRECT)
  • A/B test
  • Blob storage solution

Great work! Our cloud provider can increase our limits that we have set, though it will cost more money.

4. What is the term referring to everything needed to run a service?

  • Environment (CORRECT)
  • Provisions
  • Utilization limits
  • Continuous integration

Way to go! Everything used to run the service is referred to as the environment. This includes the machines and networks used for running the service, the deployed code, the configuration management, the application configurations, and the customer data.

5. What is the term referring to a network of hosts spread in different geographical locations, allowing ISPs to be as close as possible to content?

  • Domain Name Service
  • Continuous Deployment
  • Platform as a Service
  • Content delivery network (CORRECT)

Excellent! CDNs allow an ISP to select the closest server for the content it is requesting.

6. Which form of cloud data storage is based on objects instead of traditional file system hierarchies?

  • Relational databases
  • Block storage
  • Blob storage (CORRECT)
  • NoSQL databases

Right on! Blobs are pieces of data that are stored as independent objects, and require no file system.

7. Which description fits the Round-robin DNS load balancing method?

  • Each client is served based on a complex calculation.
  • Each client is served based on the amount of traffic.
  • Each client is served randomly.
  • Each client is served in turn. (CORRECT)

The Round-robin approach serves clients one at a time, starting with the first, and making rounds until it reaches the beginning again.

8. Automation tools are used to manage the software development phase’s build and test functions. Which of the following is the set of development practices focusing on these aspects?

  • Continuous Deployment
  • Continuous Integration (CORRECT)
  • Pre-Prod
  • Test environment

Great work! Continuous Integration means the software is built, uploaded, and tested constantly.

9. What is the purpose of a rate limit?

  • Prevent over-provisioning of a certain resource.
  • Provide additional capacity.
  • To prevent overloading the entire system with one service. (CORRECT)
  • To restrict the frequency of login attempts.

Right on! Cloud providers will often enforce rate limits on resource-hungry service calls to prevent one service from overloading the entire system.

GRADED ASSESSMENT FOR MODULE 1

1. Which word best describes the direction you are scaling when increasing the capacity of a specific service by making the nodes bigger? Select all that apply.

  • Up
  • Down
  • Horizontal
  • Vertical (CORRECT)

2. You work for a company that is moving to a new office. The organization does not use a cloud service. What might you point out to convince them to migrate some services to the cloud during the move?

  • Migrating to the cloud means they won’t have to rush to move servers during a maintenance window. (CORRECT)
  • You won’t have to move a server from one location to another.
  • You won’t have to change your servers’ core configurations.
  • you don’t have to lose any control you have over your computing services.

3. When you shift your servers to the cloud, the core configurations will stay the same. What are some ways of installing and configuring applications on the new server? Select all that apply.

  • Use configuration management to deploy and configure your new servers. (CORRECT)
  • Use Platform as a Service, or PaaS. (CORRECT)
  • Use a container. (CORRECT)
  • Use Infrastructure as a Service, or IaaS.

4. All cloud providers give you a console where you can manage services that you’re using. What might be different from one provider to the next? Select all that apply.

  • Not all consoles offer pointers to the services that the provider offers.
  • Not all consoles offer sections that let you use infrastructure-as-a-service.
  • Not all consoles offer the same menus and options. (CORRECT)
  • Not all consoles use the same terminology. (CORRECT)

5. In large applications, where there are layers in between the entry point and the actual web service, what is the first layer?

  • A pool of web caching servers with a load balancer to distribute the requests among them. (CORRECT)
  • A configured backend that generates the webpages for the site.
  • An extra layer of caching, specific for the database contents.
  • A web server that serves the pages.

6. What are some of the applications you might choose to use when managing a pool of web caching servers? Select all that apply.

  • Varnish (CORRECT)
  • Cloudflare (CORRECT)
  • Fastly (CORRECT)
  • Puppet

7. What are some advantages of setting up a server as a dedicated load balancer? Select all that apply.

  • It is easy to set up.
  • If a server is overloaded, you can stop clients from reaching out to it. (CORRECT)
  • It follows the rules that you provide to direct requests to the selected back-end server. (CORRECT)
  • You can configure it to check the health of the backend servers. (CORRECT)

8. You get a new job in a company’s IT department. What are some common names you might immediately recognize as testing environments separate from the production environment? Select all that apply.

  • Dev (CORRECT)
  • Pre-prod (CORRECT)
  • Prod
  • A/B

9. What are some advantages of having servers in multiple locations? Select all that apply.

  • To cut down on latency (CORRECT)
  • To quickly change the scale of your service.
  • Redundancy (CORRECT)
  • So you can choose a server near its dependencies (CORRECT)

10. What are the locations from where you can create a VM to run in the cloud? Select all that apply.

  • The web interface (CORRECT)
  • The command line interface (CORRECT)
  • The disk image
  • The template

11. Why are there usually multiple entry points for a single website? Select all that apply.

  • To create separate storage resources to hold data
  • The service can stay up even if one entry point fails. (CORRECT)
  • To retrieve an IP address for the website the user wants to visit
  • To allow for an entry point that’s closer to the user to reduce latency (CORRECT)

12. What is the name for the automated configuration and coordination of complex IT systems and services?

  • Templating
  • Auto-scaling
  • Orchestration (CORRECT)
  • Automation

13. As you look at the performance of a cloud storage solution, you are checking the rate of input/output operations per second, or IOPS. What might you notice about these numbers?

  • IOPS is constantly changing.
  • You can always do more reads per second than writes. (CORRECT)
  • You can always do more writes per second than reads.
  • IOPS changes based on how much data you’re accessing.

14. What is read latency?

  • The amount of data that you can read and write in a given amount of time
  • How many reads or writes you can do in one second, no matter how much data you’re accessing
  • The amount of time it takes for a write operation to complete
  • The time it takes a storage system to start delivering data after a read request has been made (CORRECT)

15. You have fixed some bugs you’ve discovered in your cloud services, but you want to push them to a test environment before they’re placed into production? How can continuous deployment, or CD, help in this situation?

  • To build and test our code every time there’s a change.
  • To automatically deploy the results of a build based on a set of rules. (CORRECT)
  • To set up a server as a dedicated load balancer.
  • To create and manage a file system on top of block storage.

16. Say you work for a company that wants the IT department to focus on deploying and managing applications and spend as little time as possible managing cloud services. Which service might be the right choice?

  • Saas (CORRECT)
  • PaaS
  • IaaS.
  • SSD

17. If any part of your workload is running on servers owned by your company, what type of cloud might this be part of? Select all that apply.

  • A private cloud (CORRECT)
  • A hybrid cloud (CORRECT)
  • A multicloud (CORRECT)
  • A public cloud

18. Both hybrid clouds and multiclouds use a mix of different cloud services. What is the key difference between a hybrid cloud and a multicloud?

  • A hybrid cloud is offered to the public and a multicloud runs only on privately owned servers.
  • A hybrid cloud runs only on privately owned servers and a multicloud is offered to the public.
  • A hybrid cloud automatically integrates everything.
  • A hybrid cloud is a mixture of both public and private clouds and a multicloud runs on a mix of different vendors. (CORRECT)

19. What is the best method for a batch action like creating ten VMs at once?

  • The web interface
  • The command line interface (CORRECT)
  • The HTTP port
  • The New Project window

20. If you wanted to choose a service with a lot of control, which category would you most likely be choosing from?

  • Saas
  • PaaS
  • IaaS (CORRECT)
  • SSD

21. You are about to create a VM to run in the cloud. What are some parameters you can be sure you will need to set? Select all that apply.

  • Name (CORRECT)
  • Region and zone where the instance is running (CORRECT)
  • The machine type for your VM (CORRECT)
  • The container

Correct. Preferably a region close to your users so they experience better performance.

Correct. cloud providers will let you configure the characteristics of the VM to your needs.

22. What is autoscaling?

  • A mechanism to ensure that each node receives a balanced number of requests when scaling services up and down
  • A cloud automation technique that spins up shuts down VMs into instance groups when demand changes (CORRECT)
  • Automatically choosing a specific entry point for a site
  • Load balancing for a pool of web caching servers

23. You’re looking at factors that influence the performance of a storage solution. One of the big ones is throughput. What is the best definition of throughput?

  • The amount of data that you can read and write in a given amount of time (CORRECT)
  • How many reads or writes you can do in one second, no matter how much data you’re accessing
  • The amount of time it takes for a write operation to complete
  • The time it takes a storage system to start delivering data after a read request has been made

24. What is the advantage of round robin DNS?

  • It is easy to set up. (CORRECT)
  • If a server is overloaded, you can stop clients from reaching out to it.
  • It follows the rules that you provide to direct requests to the selected back-end server.
  • You can configure it to check the health of the backend servers.

25. You are planning some improvements in your cloud services, but you want to make the changes in a controlled way. This approach is commonly called “change management”. In change management, how does a continuous integration system, or CI, help to catch problems before they’re merged into the main branch?

  • To build and test our code every time there’s a change. (CORRECT)
  • To automatically deploy the results of a build based on a set of rules.
  • To set up a server as a dedicated load balancer.
  • To create and manage a file system on top of block storage.

26. Your company just received a huge bill from your cloud service provider for automatic scaling, and is thinking about opting for manual scaling to avoid another unexpected cost like this in the future. What might be the downsides of that choice? Select all that apply.

  • Changes are controlled by software instead of humans.
  • You might suffer from unexpected increases in demand. (CORRECT)
  • You cannot enable monitoring or alerting.
  • You will have to plan ahead for future scaling needs. (CORRECT)

27. Your company is migrating some of its computing needs to a cloud service, and you hear another IT professional saying they will use a “container”. What is a “container” when referring to computing?

  • A maintenance window during which you can move a server from one place to another
  • Applications that are packaged together with their configuration and dependencies (CORRECT)
  • The data migrated from an on-premise physical server to a virtual machine
  • Public clouds, private clouds, hybrid clouds, and multiclouds

28. A VM running in the cloud has a local disk attached to it. What kind of storage is this an example of?

  • Block storage (CORRECT)
  • Blob storage
  • Ephemeral storage
  • Objects storage

29. Your organization is setting up a cloud service, and you decide to use automatic scaling. Why would you want to set up quotas?

  • Otherwise, your cloud service will scale only vertically.
  • Otherwise, your cloud service will scale only horizontally.
  • So you can enable monitoring or alerting.
  • It could end up being surprisingly expensive. (CORRECT)

30. What type of storage refers to storing files with unique names in a storage bucket? Select all that apply.

  • Block storage
  • Blob storage (CORRECT)
  • Ephemeral storage
  • Objects storage (CORRECT)

31. You’ve set up a VM, modified its configuration settings, and made sure that it’s working correctly. Now you want to reproduce this exactly on another machine. How might a reference image help?

  • By copying the contents of your virtual machine stored in a reusable format. (CORRECT)
  • By creating a file with all of your system configurations.
  • By packaging applications together with their configuration.
  • By managing and automating server configurations.

CONCLUSION – Automation in the Cloud

In this module, we’ve embarked on a journey into the realm of automation at scale, exploring its significance and effective implementation strategies. Through a comprehensive overview, you’ve gained insights into the necessity of automation for scaling operations efficiently. Delving deeper, we’ve examined the critical concept of configuration management, distinguishing between unmanaged and managed approaches, and understanding the pivotal role it plays in ensuring reliability and repeatability in large-scale infrastructures.

Moreover, our exploration extended to infrastructure as code, uncovering its transformative benefits in enhancing the reliability and consistency of node fleets, particularly when managing systems at scale. Through hands-on lessons with Puppet, you’ve acquired practical knowledge in applying basic configuration management techniques, mastering the interaction between Puppet agents and masters, and harnessing resources and classes to achieve targeted goals effectively. Furthermore, our journey culminated in a comprehensive understanding of domain-specific language principles, particularly Puppet facts, and an exploration of declarative, procedural, and idempotent principles driving configuration management. Armed with this knowledge, you are well-equipped to navigate the complexities of automation at scale and drive efficiency and reliability in your infrastructure management endeavors.