Create Linux VMs in an Availability Set
IT Pro Challenges Create Linux VMs in an Availability Set challenges learners to provision two virtual machines on a managed, Azure, availability set to implement redundancy for updates and failures. Skills learned in this lab benefit System Administrators and Cyber Operators, by ensuring VM performance and in authenticating VM’s through SSH keys.
This 45-minute lab for beginners teaches two different concepts.
- Creating and using Azure availability sets to provision Linux machines.
- Generating SSH key pairs to streamline VM authentication effectively.
Learners need to assure uninterrupted time to complete the lab as they cannot restart or return from stopping in the middle of the challenge. Documented and video hints appear throughout the lab challenge, guiding lab participants in their tasks.
VMs, Provisioning VM’s across an availability set, ensures that they stay consistent and reliable. Availability sets allocate hardware resources, spread across server racks and various machines, and group them coherently. So the VM’s compute and storage abilities do not reside on one machine alone. When a VM fails because of a power outage or a network switch problem, it can still function as other working hardware replaces the failed system. Also, creating VMs on an availability set allows for hardware system updates without interrupting any VM from continuing to run.
Secure Shell or SSH keys allow Azure to Linux machine authentication easier without requiring a password. Both the remote machine and server have a public key, and the remote machine also has a private key. This private key unlocks access to the server. Learners create a RSA key in this lab. Rivest–Shamir–Adleman or RSA describes the algorithm used to encrypt and decode the data.
In this lab, learners use Azure’s availability set service, create a SSH key on Linux and then provision Linux virtual machines on the availability set entering the SSH key generated.
Create an Availability Set:
Learners create an availability set using Azure’s service. The exercise explains why managed disks keep the VM’s running when another piece of hardware has a fault. Think of managed disks like a physical hard drive or disk for storing something on the computer. Azure provisions VM machines across separate physical machines, making them fault-tolerant.
Create an SSH key pair for the Linux Virtual Machines:
Azure’s Cloud Shell has the ability to create a SSH key pair that Linux virtual machines can use. Azure requires SSH key pairs to use RSA algorithms, with a minimum size of 2048 bits to encrypt communication between the remote desktop and the Azure server. Azure does not authenticate with ED25519 or ECDSA. While ED25519 and ECDSA have the advantages of being smaller and authenticate faster, they do not have the security strengths as RSA algorithms with the 2048 size.
Create Virtual Machines in the Availability Set:
Azure virtual machine’s service allows for provisioning Linux machines and attaching them to an availability set. Learners may copy and paste the SSH key created in the previous exercise. They also have another option in running a small Cloud Shell script to create the ssh keys for the Linux machines. An availability set does not have to proceed with VM creation and be initiated at the time Azure’s user creates the remote desktops.
When the learner finishes this module, he or she checks that the virtual machines appear in the virtual network and appear in the availability set in the first step.
At the end of this lab, learners gain an understanding of Azure’s availability sets and setting-up Linux machines to work with an Azure server. Learners gain hands-on experience generating Azure’s availability set, encoding Linux Virtual machines by generating SSH keys compliant with Azure, and putting the remote desktop in the availability set. Upon completion, learners may wish to consider other challenges.
- GUIDED CHALLENGE: Work with Managed Disk Snapshots
- ADVANCED CHALLENGE: Can You Automate and Monitor VMs Using Extensions and Azure Monitor?