Performance Monitoring in the Cloud – Why it Still Matters?
So your organization has decided to move to the cloud. Smart move!
Many companies today are either making the move to the cloud or have already made it. According to RightScale’s 2019 State of the Cloud Survey, 94% of IT professionals say their companies use the cloud. Over 90% is public cloud. Gartner predicts that public cloud revenue will increase by 17% in 2020. The biggest percentage increase is expected with IaaS.
So, you’re clearly not alone.
But what’s the plan after the move to make sure that your applications and infrastructure perform at expected levels in the cloud?
When you no longer have full control of your infrastructure, monitoring becomes even more important than it did on-premises. Unfortunately, it seems some companies get the impression that moving to the cloud will solve all their issues. The cloud has many benefits, but not having to monitor your workloads isn’t one of them.
In this blog I will show you why moving to the cloud does not make monitoring redundant, and provide some tips for cloud performance monitoring.
Some may believe that the cloud providers will take care of this monitoring. But this is not the case. In the cloud, you have the flexibility to automatically spin up instances to support additional users, when needed. But there’s more to monitoring than spinning up compute instances.
What Do Cloud Provider Tools Offer?
The cloud providers don’t leave you to your own devices. When you move to the cloud, they provide some tools and solutions to help with monitoring.
- If you’re moving to AWS, you have CloudWatch.
- If it’s Microsoft Azure, you have Azure Monitor.
- And with Google Cloud, you have Stackdriver.
If you’re moving to a multi-cloud environment, among these tools, Stackdriver is the only one with options for monitoring other (in this case, non-Google) cloud environments.
These tools are often available from these providers as soon as you start using one of their cloud services. And they can be sometimes easy to implement. But that also depends on the type of cloud services you’re moving to.
Cloud Computing Service Options
There are various types of cloud services you can choose from. Some organizations choose to do a lift and shift and send everything as-is in their on-premises data center to the cloud. This makes the move a lot quicker.
But while it can be faster, lift and shift doesn’t fully utilize the full benefits of a cloud migration. To have a chance at cloud success, you must transform your applications and infrastructure. And the cloud providers have something for all or most of your needs.
You have IaaS, PaaS, and SaaS.
- Infrastructure-as-a-Service (IaaS) includes access to virtual machine instances that give you the most level of control. You select, or install, and manage whatever OS or software you need, and the cloud provider manages the physical infrastructure hosting your instances.
- Platform-as-a-Service (PaaS) includes access to various software platforms such as ready-to-use SQL databases, SSD storage, and more. You can build applications that utilize these services instead of managing them yourself. So, you lose a little more control.
- Software-as-a-Service (SaaS) includes access to services like Salesforce, Office 365, Gmail, etc. that a provider makes available. You generally don’t manage anything here. You simply control access to them. So, with this service, you’ve lost almost all control.
The ease of implementing monitoring in each of these cloud services decreases as you go down the list from IaaS to SaaS. This is because you have less and less control of the infrastructure.
This can be a very good thing.
The Goodness of Clouds
In a similar way, cloud monitoring has its privileges. There are things you’ve likely had to worry about with on-premises monitoring that will go away when moving to the cloud.
When deciding to choose a monitoring solution, you always want to consider a checklist of things. Cloud monitoring either reduces or eliminates the need for some of this.
Reduced Decision Fatigue
When on-premises, you usually must decide not only the monitoring solution, but also how you want to monitor. You can go with hardware appliances, software, or a combination of the two. Do you go agent-based, agentless, or a mix of both? So, you have lots of options. This may mean a much longer decision-making process.
When in the cloud, you have one less decision to make. You’re not going to find any vendors, particularly the cloud providers themselves, with any hardware appliances for monitoring. Your only option is only software.
So that’s one less decision to make.
Ease of Implementation
With moving to the cloud, you also no longer must worry about the sometimes-complicated installation and configuration of on-premises monitoring solutions. With cloud providers, it’s usually pretty easy to get up and running with their monitoring because they control the host running the monitoring software.
For example, with Google Cloud, Stackdriver is default on every instance you spin up. In AWS, CloudWatch is usually a simple button-click to get going. So, you can get started monitoring in the cloud quickly. Setting up dashboards and alerts can start fast.
Maintenance and Upgrade Reduction
Another challenge with on-premises monitoring is maintenance and upgrades. You always want to pick a monitoring solution that reduces the time it takes to maintain. You also don’t want to spend your precious time constantly upgrading to newer versions of the product.
With cloud provider solutions, that’s no longer as much of a concern. Because the provider controls the physical host, they make sure that the monitoring solution is properly upgraded for you. All you must do is log in and see the update.
Isn’t that great?
Until it’s not, because these benefits come at a cost that’s not just financial.
The Negative Side of Clouds
While there are clear benefits to your monitoring when moving to the cloud, there are some challenges that won’t change. You can also expect challenges that will be completely new and you haven’t had to deal with before.
Same Old Challenges
When monitoring, there are several challenges you encounter. Your hope is always that your monitoring solution will help with these challenges. When you move to the cloud, they will remain challenges.
Identifying the right metrics for collection. The whole point of having a monitoring solution is to collect data about application and infrastructure performance. Today’s applications can generate lots of data, and you need your monitoring tool to collect what’s needed for analysis. This doesn’t change whether you’re on-premises or in the cloud.
Getting alerted about performance issues. You have other things to do with your time. You can’t sit in front of your monitoring tool’s UI and wait for performance problems. You need the tool to alert you when something bad happens. Its alerting behavior, whether static or dynamic, is very important. This is required in both on-premises and cloud environments.
Preventing unauthorized access to data. One of the biggest concerns with moving to the cloud is data security. It seems every week some organization is getting hacked. Your monitoring solution collects a lot of information you want to keep private. This doesn’t change when you move to the cloud. In fact, it becomes an even bigger challenge to deal with, especially since you no longer have full control of the infrastructure.
With all the benefits, cloud monitoring presents challenges you don’t have to deal with in an on-premises environment. A few of these challenges include the following:
As you can see, there are lots of challenges you will either must continue to deal with and be concerned about. Or, entirely new challenges you didn’t have to be concerned with. So, monitoring matters, no matter what environment you’re using — on-premises or cloud. Your cloud provider won’t do this for you. You must do this.
So how do you try and get around these challenges while taking advantage of the benefits?
Fill in the Cloud Gaps
The move to the cloud is happening. I hope now you agree that your cloud provider, while giving you some tools, doesn’t remove the need for monitoring. So, you will need to fill in the gaps that exist between on-premises and cloud monitoring.
Here are some best practices for doing this:
- Baseline End User Performance Pre-migration
Before moving your applications from on-premises to the cloud, you want to baseline application performance. Use the existing monitoring tools you have in place on-premises to get a good snapshot of how each of your applications are performing. Use those tools to forecast how performance may change in the cloud based on your cloud migration plans.This way you will have something to compare against post-migration. How will you know if performance is getting better or worse without a baseline? So, make sure to get a baseline.The last thing you want is for users to report that an application is slower and you had no idea.
- Monitor Using a Single Platform
Depending on the size of an organization, there can be multiple monitoring tools in use. Sometimes, these tools are polling and collecting data from the same set of systems! So, you always want to monitor from one platform to minimize any issues.You want to extend this best practice to the cloud as well. But this is even more important if you are moving to a hybrid cloud or multi-cloud environment. You won’t be able to reduce your MTTR if you’re having to troubleshoot problems across multiple clouds using multiple tools.
- Pay More Attention to Monitoring End User Experience
With your applications and infrastructure in the cloud, users have the flexibility of accessing them from practically anywhere. If they have internet access, users can get to your applications. They may no longer traverse private line connections your organization runs. Because of this, monitoring end user experience is even more important in the cloud.This can be done by implementing synthetic testing and monitoring to better understand how potential users could be impacted. You should also implement real user monitoring to understand how actual users are experiencing your applications.
- Implement Various Forms of Monitoring
With the move to the cloud, you’ve lost a lot of visibility and control. When on-premises, you have total control of what you can monitor. In the cloud, you lose a lot of that. From IaaS to SaaS, there’s a lot you don’t see.
So, you want to ensure that you’re monitoring every piece of the cloud infrastructure you can. All the cloud resources should be monitored.
You want to monitor the following:
Application performance: In an IaaS environment, you have full control of the applications you move to the cloud. You want to ensure that you are monitoring their performance. The cloud provider tools don’t always focus on application performance. Many only looks at resources.
VM instances: If your organization was not already using virtual machines or was only using them in a limited capacity, in the cloud, this all that you’ll likely be using. You want to make sure you’re monitoring all aspects of your VM instances provisioned in the cloud. CPU, memory, network I/O — all should be monitored.
|Distributed tracing: With the complexity of today’s applications, you need to know more than ever how individual application requests are performing. In the cloud, this becomes much more complex because of the various microservices that your applications could be using once they get rewritten for the cloud. In order to ensure great end user experience, you will need implement distributed tracing so that you can track a request across each microservice it traverses to solve performance problems.
Save Yourself Late Nights
The cloud is great. Being able to monitor your applications and infrastructure there offers many benefits. But there needs to be guard rails in place to ensure it’s delivering on cost and performance. Otherwise, you could be spending some late nights troubleshooting.
You must still be responsible for monitoring in the cloud. Provider tools will not do them for you. Many are still in the early stages and some of the typical monitoring features are yet to be available.
Instead of leaving monitoring to someone else, ensure that your current monitoring solution can continue supporting your organization in the cloud. If so, use it pre-migration, during migration, and post-migration.
You will be happier you did!