Skip to main content

Availability of Azure Virtual Machines


Availability of Azure Virtual Machines
By now, you should know that:
  • Availability set (AV set) is the Logical Grouping of two or more Azure VMs and their domains.
  • AV set protects from planned (updates) and unplanned (hardware) failures.
Here we will be focusing on Principles, SLAs and Creation of AV set.
Principles of creating Availability sets:
  • For redundancy, configure multiple VMs in an Availability Set.
  • Configure each application tier into separate Availability Sets.
  • Combine a Load Balancer with Availability Sets.
SLAs for Availability Sets
Azure offers the following SLAs if you use Availability set,
·         For all VMs that have two or more instances deployed in the same Availability Set, Microsoft guarantees - VM Connectivity to at least one instance almost 99.95% of the time.
·         For any Single Instance VM using premium storage for all disks, Microsoft guarantees - VM Connectivity of at least 99.9%.
Azure Scale Set
As you know, Scale set makes it easier to build large-scale services targeting high compute, big data, and containerized workloads.
Scale sets are used to deploy and manage a set of identical VMs at the time of requirement.
Guidance for Scale Set
  • Both Linux and Windows VM Scale Sets can be configured from the Azure Portal.
  • These scale sets are automatically created with load balancer NAT rules to enable SSH or RDP connections.
  • Managed disks can have between 0 and 1000 VMs based on platform images OR 0 to 100 VMs based on custom images.
  • The maximum, minimum and default number of VMs setting must be based on resource consumption and actions are triggered automatically.
  • When the number of VMs is increased or decreased in a scale set, VMs are balanced across update and fault domains to ensure, maximum availability.
Virtual Machine Disk
Azure VM uses Standard (HDD) or Premium (SSD) storage to create disks,
  • Size of the VM determines the number of disks
  • Disks are used to store an OS, applications, and data.
  • VMs also can have one or more data disks.
  • Premium storage requires DS or GS-series of VMs.
  • Disks are stored as .Vhd files in the storage accounts.
  • All disks are stored as VHDs, and the maximum capacity is 1023 GB.
Disk Types
There are three types of Disks:
1. Operating System Disks
  • Every VM has one attached OS disk.
  • It is registered as a SATA drive and labeled as the C: drive by default.
2. Temporary Disk
  • Every VM has a temporary disk that is automatically created.
  • On Windows VM, this disk is labeled as the D: drive by default.
  • It is used for storing pagefile.sys.
  • It is a non-persistent storage.
As it is temporary storage, don’t store data on the temporary disk.
3. Data Disks
  • Every VM can have data disks to store application data or other required data.
  • Data disks are registered as SCSI drives and are labeled with a letter that we can choose.
  • Data disks are stored in a BLOB in an Azure storage account.
The size of the VM determines how the size of the temporary disk and the maximum number of disks can be attached.
Managing VM Disk
Management of VM disk includes the following task,
  • Attaching Operating System or Data disk
  • Removing the Data disk
  • Modify the Disk settings, such as,
    • Change the Caching behavior
    • Increase the size
Storage Space feature of Azure VM must be leveraged to create the disk of more than 1TB.
Managing Virtual Machines
Various options are used to manage Azure VMs, some are available for all platforms, and others just for Windows or Linux VM.
  • Remote Desktop Protocol: Only for Windows
  • Secure Shell: Only for Linux
  • VM Agents and Extensions: for both Windows and Linux
Remote Desktop Protocol
  • Remote Desktop Protocol (RDP) enables Windows administrators to establish a graphical user interface session with an Azure virtual machine.
  • The portals provide a .rdp file that can be downloaded and saved for initiating an RDP connection to the specified VM.
  • Closely associated with the RDP utility is the Remote Desktop Connection Manager.
  • This utility provides an interface for grouping and managing multiple VMs through RDP connections.
Secure Shell
Secure Shell (SSH) is used to connect the Azure Linux VM from Windows Client.
  • The SSH endpoint is created by default when creating a Linux VM.
  • When creating a Linux VM, Secure Shell (SSH) must be enabled.
  • A connection must be established from a Windows client by using the Secure Shell (SSH) protocol with a terminal. emulator, such as PuTTY to access Linux VM
  • From a Linux client, an administrator may use an SSH client such as OpenSSH.
Azure VM Agent
The Microsoft Azure Virtual Machine Agent (AM Agent) is a secured, lightweight process that manages VM interaction with the Azure Fabric Controller.
·         The VM Agent has a primary role in enabling and executing Azure VM extensions.
·         The Azure VM Agent is installed by default on any Windows VM deployed from an Azure Gallery image.
·         The Azure VM agent can be downloaded and installed manually.
Azure VM Extensions
Azure VM extensions are small applications that provide post-deployment configuration and automation tasks on Azure VMs.
Azure VM extensions can be
  • run by using the Azure CLI, PS, ARM templates, and the Azure portal.
  • bundled with a new VM deployment or run against an existing system.
An Administrator can install multiple extensions on a VM. They are offered by Microsoft and third-party vendors.
Third Party VM Agent Extensions
The supported third-party VM agent extensions are:
  • DSC - Azure PowerShell DSC (Desired State Configuration)
  • MSEnterpriseApplication - System Center Role Authoring Extension
  • BGInfo - Background Info extension
  • VMAccessagent - VM Extension to enable Remote Desktop and password reset
  • Chefclient - Chef software agent
  • PuppetEnterpriseAgent - PuppetLabs agent
  • Symantec Endpoint Protection - Antivirus Supported by Symantec
  • Trend Micro Deep Security Agent - Trend Micro antivirus
Desired State Configuration (DSC)
Deploying and maintaining the desired state of your servers and application resources can be tedious and error-prone. Azure supports several configuration management systems.
Desired State Configuration (DSC)
  • DSC is a VM agent extension and works on both Windows and Linux.
  • DSC supports ARM templates, Azure PowerShell, and XPLAT-CLI.
Desired State Configuration (DSC) with Azure Automation helps consistently deploy, reliably monitor, and automatically update the desired state of all IT resources, at scale from the cloud.
Monitoring and Diagnostics
The administrator enables and configures VM diagnostics from the Monitoring area of the new portal VM blade.
Diagnostic logging can be enabled for
  • Basic metrics
  • Network and web metrics
  • .NET metrics
  • Windows event system logs
  • Windows event security logs
  • Windows event application logs
  • Diagnostic infrastructure logs
Alerts
  • We can receive an Alert based on monitoring metrics or events.
  • When the value of an alert rule crosses an assigned threshold, the alert rule becomes active and sends a notification.
  • Notification email can be sent to the service administrator and co-administrators or to another administrator based on the configuration.
Example:
Alert rule can be created which will trigger a mail to an Administrator when the CPU percentage of guest OS value is greater than 75% in a five minute period.

Comments

Popular posts from this blog

Troubleshooting transient connection errors to Azure SQL Database

Troubleshooting transient connection errors to Azure SQL Database Dear friends, I'm Yogesh. At my work place, I have faced these type of issues at times.  Let us understand what is this transient error?  A transient error has an underlying cause that soon resolves itself. It causes occasionally is when the Azure system quickly shifts hardware resources to better load-balance various workloads. Most of these reconfiguration events finish in less than 60 seconds.  During this reconfiguration time span, you might have connectivity issues to SQL Database.  To handle them, implement retry logic in their code instead of surfacing them to users as application errors. If your client program uses ADO.NET, your program is told about the transient error by the throw of  SqlException . What is the solution? Can Retry logic works? When your program communicates with SQL Database through third-party middleware, ask the vendor whether the middle ware contains retry logic for tr

Geo-Replication in SQL Azure Database

Geo-Replication in SQL Azure Database Geo-Replication  is one of the Azure SQL features which allows making 3 readable replicas to your database in same or different data centers. Geo-Replication option is available for all databases and service tiers in all region. If it is enabled, the application initiates to a secondary database. we will review how to set up Geo-Replication on Azure SQL databases. Geo-Replication is an Azure SQL database feature that allows you to create a readable secondary database in the same region or cross-region. We can failover to the secondary database in case of an outage for a long time on the primary database server. We can also use this feature to migrate a database from one server to another server in the same or cross region with minimal downtime. Geo-replication uses the Always-on feature to replicate committed transactions to the secondary database asynchronously. Select the database, Click on 'Geo Replication' in left hand

DTU and eDTU in Azure SQL

DTU and eDTU in Azure SQL The performance of SQL Database is based on DTU. According to Microsoft, a DTU is a unit of measure of the resources that are guaranteed to be available to a single Azure SQL Database at a specific performance level within a single database tier. A DTU combines CPU, memory, data I/O, and transaction I/O. Databases can be placed into an  elastic pool  on a SQL Database server that shares a pool of resources among those databases. The shared pool of resources are measured by  elastic Database transition units (eDTU) . The advantages of an elastic pool are: They are scaled automatically. They provide predictable costs. They are widely used for  varying  and  unpredictable usage patterns . Determining DTUs for Workloads ·          If you are planning to move your on-premises Databases to Azure SQL Database, Azure provides a  DTU Calculator  to find the approximate DTUs required for setting up the database. ·