Design Azure Compute Flashcards
Machine series
1) A-series VMs are designed for generic workloads
2) D-series VMs use solid-state drives (SSDs) for temporary storage, providing much faster IO operations
3) DS-Series VMs are designed for high I/O workloads. They use SSDs for both VM drives and a local drive cache
4) G series of VMs is one of the biggest on cloud with Xeon E5 V3 family processors
Temporary Disks
Both OS drives and data drives are virtual hard drives (VHDs) stored in Azure Blob Storage. Their data is automatically duplicated three times for reliability. However, the temporary drives reside on the hosting servers. If the host fails, your VM will be moved to a healthy host, but not the temporary drive. In this case, you’ll lose all temporary data.
Managing images
the Azure VM gallery, VM Depot, and custom images. You can use these images as foundations to create, deploy, and replicate your application run-time environments consistently for different purposes such as testing, staging, and production.
Capturing custom images
1) two types of images: generalized or specialized.
2) A generalized image doesn’t contain computer or user-specific settings. These images are ideal for use as standard templates to rollout preconfigured VMs to different customers or users. Before you can capture a generalized image, you need to run the System Preparation (Sysprep) tool in Windows, or use the waagent –deprovision command in Linux.
Capturing generalized images
Before you can capture a generalized image, you need to shut down the VM. After the VM is captured as an image, the original VM is automatically deleted.
Specialized images
Specialized images, conversely, retain all user settings. You can think of specialized images as snapshots of your VMs. These images are ideal for creating checkpoints of an environment so that it can be restored to a previously known good state. You don’t need to shut down a VM before you capture specialized images. Also, the original VM is unaffected after the images are captured.
Problems with Custom images
1) difficult to revise a custom image
2) difficult to track what has been changed on an image because of the manual customizations.
3) To deploy a new image version, the VM needs to be re-created, making upgrade a lengthy and complex proces
VM extension
1) a light-weight Azure Virtual Machine Agent (VM Agent) is installed on the VM by default.
2) to dynamically customize VMs to satisfy your application, configuration, and compliance needs
Custom Script Extension and DSC
Custom Script Extension downloads and runs scripts you’ve prepared on an Azure Blob storage container. You can upload Azure PowerShell scripts or Linux Shell scripts, along with any required files, to a storage container, and then instruct Custom Script Extension to download and run the scripts.
Azure Automation
monitor events in VMs as well as external services such as Azure App Service Web Apps, Azure Storage, and Azure SQL Server. Then, workflows can be triggered in response to these events.
Chef and Puppet
Both Chef and Puppet install agents on your VMs. These agents monitor your VM states and periodically check with a central server to download and apply updated cookbooks.
Runbook gallery
Automation’s cookbooks, called runbooks, are implemented as Azure PowerShell Workflows. To help you to author these runbooks, Azure has created an Azure Automation Runbook Gallery where you can download and share reusable runbooks
Infrastructure code
“infrastructure” indicates that it’s not business logics but instructions to configure the application runtime. Second “code” indicates that it’s not subject to human interpretation but can be consistently applied by an automation system.
Devops and infrastructure code
1) Infrastructure code is explicit and traceable, and it makes an application consistently deployable.
2) Consistently deployable applications are one of the key enabling technologies in the DevOps movement.
Azure Resource Template
1) JSON files that capture infrastructure as code. You can capture all the Azure resources your application needs in a single JSON document that you can consistently deploy to different environments.
2) All resources defined in an Azure Resource Template are provisioned within a Resource Group, which is a logical group for managing related Azure resources.