DEV Community

axurcio
axurcio

Posted on • Originally published at insight-services-apac.github.io on

The Cloud Doctor

In the past 2 years, the pandemic has taught us that keeping our immunity and health at an all time high can avoid the risk of getting the virus. However we are humans and are not perfect at all times. And we fail to do the right thing to stay immune. And so whenever we feel sick we go to the doctor and get ourselves diagnosed. How good would it be if we knew how to fix our health before it becomes an issue?

It would be so nice to have to wake up one day and have Siri, or Apple watch or Alexa saying “You are recommended to drink 12 glasses of water today because you drank only 4 glasses yesterday”. Perhaps that sort of artificial intelligence is still in the making, where your apple watch could start making recommendations to you.

A few years ago, when things were mostly on premise, services such as Health checks of a database were a standard service offered by consultancies had to be performed by a consultant by going on to the actual premises accessing the server, running the scripts and then obtaining the results. This process was cumbersome, time consuming and required manual effort. If an organization is too busy to get someone to perform this health check, and meanwhile the health of the database deteriorates and the DB crashes, then well who is responsible for the loss of data, time to retrieve the DB state and cost?

During the pandemic, fortunately many organizations have chosen to migrate to the cloud and have removed the need to host physical servers. Whilst that is a brilliant choice, we can say that gone are the days when Health checks were performed manually on the database. Thankfully do have something that looks after our platform before it turns into a disaster!

In this article we will look at Azure offerings that would constitute a virtual cloud doctor. If we imagine visiting a doctor for a health check, reviewing our vital signs such as blood sugar levels, blood pressure and temperature, they can provide recommendations based on these health statistics. We can draw parallels with our Doctor to 3 Azure services: Azure Advisor, Azure Monitoring and Azure Health.

Leveraging these 3 services together within your Azure platform provides an unrivalled trio that can give you robust monitoring, alerting capabilities and customized capabilities based on best practices! And not just that, it puts you at the top of all that is happening in your platform so that you have adequate time required to respond to an issue rather than panic in haste. This trio monitors the health of your platform, diagnoses issues and makes recommendations based on the diagnosis. It monitors availability performance, security, pricing and, discovers risks so that you can pro-actively mitigate. The following sections look at each one in detail.

1. Azure Monitoring

While the Electrocardiogram or ECG as you know it monitors the heart rate, similarly Azure monitoring is a monitoring service that provides a single pipeline for monitoring across all Azure resource types, enabling you to easily monitor, diagnose, alert, and notify of problems in your cloud infrastructure. It provides platform metrics with one minute granularity by default. This tool monitors both applications and data. So this can be a DBAs or Azure admin’s best friend! Figure 1 shows how the Monitoring options shows up when you search for it in the left panel of Azure SQL resource page.

Figure 1

Figure 1

Azure monitoring produces metrics of all different kinds! Figure 2 shows that Azure Monitoring service monitors the CPU utilization, Input output and Logs of an Azure SQL Database. This gives an idea of what are the peak times when a database is queried upon and when the resource was paused , unavailable or unutilized which be further drilled down.

Figure 2

Figure 2

The “ Line chart ” option allows you to visualize this differently. It also allows you to create an alert rule to let you know if resources are overutilized or unavailable. Later in this article we will discuss some sophisticated visualization options. Azure Monitoring not just keeps a record of the metrics at a high level, but can also tell us which queries are the ones causing high CPU / IO utilization. This feature is really good to find out if a user has kept a query running on their machine and forgotten about it.

Figure 2

Figure 3

2. Azure Health

We fear from our health being compromised and so we take all the vitamins required to stay fit. Similarly when there are hundreds of pipelines in the Azure environment , processing terabytes worth of data and hundreds of reports rely on that data, then the health of each resource whether it is Azure Database or storage account carries paramount importance. It is the responsibility of the Azure Health to keep you informed about the health of the services and resources. Whether is maintenance, outages and different types of issues that may impact your organisation. Azure Health offers 2 types of sub-services such as Service Health and Resource Health. One is the Resource Health that monitors a specific resource and the other is the that monitors the Azure environment.

Resource Health

Provides details about the health of individual resources in your environment, such as a virtual machine. By setting up alerts on the Resource Health you can stay informed about the availability of your resources and quickly respond to a problem if any. Azure Resource Health helps you diagnose and get support for service problems that affect your Azure resources. It reports on the current and past health of your resources. The Resource Health executes some checks, minute-by-minute, across the resources and makes the information available to you. The Resource Health is available through the Support + troubleshooting blade in the Azure portal, for the specific resource types on Azure.

Service Health

This looks after the health of Azure services and regions currently in use by your workloads. To stay informed about your Azure services, you need to setup alerts to notify you via preferred communication channels. Azure Service Health should be looked upon as a set of services. Service Health is what you will be using to get information on outages, planned maintenance, health, and security advisories.

It allows you to create customized views, filtering among subscription, region, and services. The level of details will include:

  • Issue Name
  • Subscription, service, and region impacted
  • Start time
  • Summary and issue updates
  • Root cause analysis
  • Downloadable PDF with explanations

3. Azure Advisor

In real life doctors not only diagnose an issue but also perform medical consultation. For example your dentist would recommend a suitable toothbrush and toothpaste for you depending on the situation of your teeth. Similar for the Azure environment Azure Advisor provides a set of recommendations as your personalized cloud consultant. From cost to performance to security, Azure advisor provides a suite of different categories in which it can serve you. Azure recommendations is a pro-active way to prevent something that hasn’t happened yet. This service of Azure analyses your Azure configuration and matches them against the best practices to come up with a list of recommendations. Figure 4 shows the list of recommendations for the admin to be able to action them.

Figure 4

Figure 4

There are many more features of Azure Advisor, Azure Monitoring and Azure Health that require in a depth explanation and would be a bit of a stretch for this blog! However before ending this blog, let’s quickly see how best the recommendations can be viewed. Figure 5 shows how recommendations from Azure can be best viewed in Power BI. Power BI being one of the finest visualization tools which also works very well with Azure to serve data , you can view recommendations all in one place with all the filters, slicers and color codes. You can also get aggregates in terms of “Total Savings” if the recommendations were followed.

Figure 5

Figure 5

Hope this blog has given an idea about how the Cloud Doctor works and if you need advice or assistance with Azure please feel free to approach Insight Enterprises.

Top comments (0)