If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery — cloud-based or local — is up to you. But you’ll definitely want to do your homework first. You’ll need to understand the pros and cons of cloud computing and how to contextualize any existing disadvantages.
Cloud computing has benefited many enterprises by reducing costs and enabling a focus on one’s core business competence, rather than IT and infrastructure issues. Despite the general hype on the subject across the IT world, there can be disadvantages to cloud computing, especially in smaller operations. Let’s take a look at the pros and cons of cloud computing and show you how to understand and contextualize any existing disadvantages.
In this article, we’ll explore some of the key disadvantages and share tips and best practices that your teams can employ to address them. You can streamline this process by using a thorough, process-built approach to understanding cloud security, such as Cloud Academy’s Security – Specialty Certification Preparation for AWS Learning Path.
Disadvantages of cloud computing explained
Downtime is often cited as one of the biggest disadvantages of cloud computing. Since cloud computing systems are internet-based, service outages are always an unfortunate possibility and can occur for any reason.
Can your business afford the impacts of an outage or slowdown? An outage on Amazon Web Services in 2017 cost publicly traded companies up to $150 million dollars. Unfortunately, no organization is immune, especially when critical business processes cannot afford to be interrupted. In June and July of 2019, a whole slew of companies and services were hit by outages, including Cloudflare (a major web services provider), Google, Amazon, Shopify, Reddit, Verizon, and Spectrum.
Best practices for minimizing planned downtime in a cloud environment
- Design services with high availability and disaster recovery in mind. Leverage the multi-availability zones provided by cloud vendors in your infrastructure.
- If your services have a low tolerance for failure, consider multi-region deployments with automated failover to ensure the best business continuity possible.
- Define and implement a disaster recovery plan in line with your business objectives that provide the lowest possible recovery time (RTO) and recovery point objectives (RPO).
- Consider implementing dedicated connectivity such as AWS Direct Connect, Azure ExpressRoute, or Google Cloud’s Dedicated Interconnect or Partner Interconnect. These services provide a dedicated network connection between you and the cloud service point of presence. This can reduce exposure to the risk of business interruption from the public internet.
- Read the fine print on your Service Level Agreement (SLA). Are you guaranteed 99.9% uptime or even better? That 0.1% downtime equals about 45 minutes per month or around eight hours per year.
2). Security and privacy
Although cloud service providers implement the best security standards and industry certifications, storing data and important files on external service providers always opens up risks. Any discussion involving data must address security and privacy, especially when it comes to managing sensitive data. We must not forget what happened at Code Space and the hacking of their AWS EC2 console, which led to data deletion and the eventual shutdown of the company. Their dependence on remote cloud-based infrastructure meant taking on the risks of outsourcing everything.
Of course, any cloud service provider is expected to manage and safeguard the underlying hardware infrastructure of a deployment. However, your responsibilities lie in the realm of user access management, and it’s up to you to carefully weigh all the risk scenarios.
Though recent breaches of credit card data and user login credentials are still fresh in the minds of the public, steps have been taken to ensure the safety of data. One such example is the General Data Protection Rule (GDPR), which was recently enacted in the European Union to provide users more control over their data. Nonetheless, you still need to be aware of your responsibilities and follow best practices.
Best practices for minimizing security and privacy risks
- This is important: Understand the shared responsibility model of your cloud provider. You will still be liable for what occurs within your network and in your product.
- Implement security at every level of your deployment.
- Know who is supposed to have access to each resource and service, and limit access to least privilege. If an employee goes rogue and gains access to your deployment, you would want their impact to be over the smallest area as possible.
- Make sure your team’s skills are up to the task. The Top 10 Things Cybersecurity Professionals Need to Know is a great article to understand how to mitigate security and privacy concerns in the cloud.
- Take a risk-based approach to securing assets used in the cloud and extend security to the devices.
- Implement multi-factor authentication for all accounts accessing sensitive data or systems.
- Encryption, encryption, encryption. Turn on encryption wherever you can — easy wins are on object storage such as Amazon S3 or Azure Blob Storage where customer data often resides. The simple act of turning on encryption on S3 could have prevented the Capital One data breach in July 2019 that exposed 100 million users’ information.
3). Vulnerability to attack
In cloud computing, every component is online, which exposes potential vulnerabilities. Even the best teams suffer severe attacks and security breaches from time to time. Since cloud computing is built as a public service, it’s easy to run before you learn to walk. After all, no one at a cloud vendor checks your administration skills before granting you an account: all it takes to get started is generally a valid credit card.
Best practices to help you reduce cloud attacks
- Make security a core aspect of all IT operations.
- Keep ALL your teams up-to-date with cloud security best practices.
- Ensure security policies and procedures are regularly checked and reviewed.
- Proactively classify information and apply access control.
- Use cloud services such as AWS Inspector, AWS CloudWatch, AWS CloudTrail, and AWS Config to automate compliance controls.
- Prevent data exfiltration.
- Integrate prevention and response strategies into security operations.
- Discover rogue projects with audits.
- Remove password access from accounts that do not need to log in to services.
- Review and rotate access keys and credentials.
- Follow security blogs and announcements to be aware of known attacks.
- Apply security best practices for any open source software that you are using.
- Again, use encryption whenever and wherever possible.
These practices will help your organization monitor for the exposure and movement of critical data, defend crucial systems from attack and compromise, and authenticate access to infrastructure and data to protect against further risks.
4). Limited control and flexibility
Since the cloud infrastructure is entirely owned, managed, and monitored by the service provider, it transfers minimal control over to the customer.
To varying degrees (depending on the particular service), cloud users may find they have less control over the function and execution of services within a cloud-hosted infrastructure. A cloud provider’s end-user license agreement (EULA) and management policies might impose limits on what customers can do with their deployments. Customers retain control of their applications, data, and services, but may not have the same level of control over their backend infrastructure.
Best practices for maintaining control and flexibility
- Consider using a cloud provider partner to help with implementing, running, and supporting cloud services.
- Understand your responsibilities and the responsibilities of the cloud vendor in the shared responsibility model to reduce the chance of omission or error.
- Make time to understand your cloud service provider’s basic level of support. Will this service level meet your support requirements? Most cloud providers offer additional support tiers over and above the basic support for an additional cost.
- Make sure you understand the SLA concerning the infrastructure and services you’re going to use and how that will impact your agreements with your customers.
5). Vendor lock-in
Vendor lock-in is another perceived disadvantage of cloud computing. Easy switching between cloud services is a service that hasn’t yet completely evolved, and organizations may find it difficult to migrate their services from one vendor to another. Differences between vendor platforms may create difficulties in migrating from one cloud platform to another, which could equate to additional costs and configuration complexities. Gaps or compromises made during migration could also expose your data to additional security and privacy vulnerabilities.
Best practices to decrease dependency
- Design with cloud architecture best practices in mind. All cloud services provide the opportunity to improve availability and performance, decouple layers, and reduce performance bottlenecks. If you have built your services using cloud architecture best practices, you are less likely to have issues porting from one cloud platform to another.
- Properly understand what your vendors are selling to help avoid lock-in challenges.
- Employ a multi-cloud strategy to avoid vendor lock-in. While this may add both development and operational complexity to your deployments, it doesn’t have to be a deal breaker. Training can help prepare teams to architect and select best-fit services and technologies.
- Build in flexibility as a matter of strategy when designing applications to ensure portability now and in the future.
- Build your applications with services that offer cloud-first advantages, such as modularity and portability of microservices and code. Think containers and Kubernetes.
6). Cost concerns
Adopting cloud solutions on a small scale and for short-term projects can be perceived as being expensive. However, the most significant cloud computing benefit is in terms of IT cost savings. Pay-as-you-go cloud services can provide more flexibility and lower hardware costs, but the overall price tag could end up being higher than you expected. Until you are sure of what will work best for you, it’s a good idea to experiment with a variety of offerings. You might also make use of the cost calculators made available by providers like Amazon Web Services and Google Cloud Platform.
Best practices to reduce costs
- Try not to over provision your services, but rather look into using auto-scaling services.
- Ensure you have the option to scale DOWN as well as UP.
- Pre-pay and take advantage of reserved instances if you have a known minimum usage.
- Automate the process to start/stop your instances to save money when they are not being used.
- Create alerts to track cloud spending.
Disadvantages of cloud computing: Closing thoughts
Many organizations benefit from the agility, scale, and pay-per-use billing that cloud services offer. However, as with any infrastructure service, the suitability of cloud computing for your specific use case should be assessed in a risk-based evaluation. Build in time for research and planning to understand how the cloud will affect your business.
New on Cloud Academy: Red Hat, Agile, OWASP Labs, Amazon SageMaker Lab, Linux Command Line Lab, SQL, Git Labs, Scrum Master, Azure Architects Lab, and Much More
Happy New Year! We hope you're ready to kick your training in overdrive in 2020 because we have a ton of new content for you. Not only do we have a bunch of new courses, hands-on labs, and lab challenges on AWS, Azure, and Google Cloud, but we also have three new courses on Red Hat, th...
Cloud Academy’s Blog Digest: Azure Best Practices, 6 Reasons You Should Get AWS Certified, Google Cloud Certification Prep, and more
Happy Holidays from Cloud Academy We hope you have a wonderful holiday season filled with family, friends, and plenty of food. Here at Cloud Academy, we are thankful for our amazing customer like you. Since this time of year can be stressful, we’re sharing a few of our latest article...
Google Cloud Platform Certification: Preparation and Prerequisites
Google Cloud Platform (GCP) has evolved from being a niche player to a serious competitor to Amazon Web Services and Microsoft Azure. In 2019, research firm Gartner placed Google in the Leaders quadrant in its Magic Quadrant for Cloud Infrastructure as a Service for the second consecuti...
New Lab Challenges: Push Your Skills to the Next Level
Build hands-on experience using real accounts on AWS, Azure, Google Cloud Platform, and more Meaningful cloud skills require more than book knowledge. Hands-on experience is required to translate knowledge into real-world results. We see this time and time again in studies about how pe...
New on Cloud Academy: AWS Solution Architect Lab Challenge, Azure Hands-on Labs, Foundation Certificate in Cyber Security, and Much More
Now that Thanksgiving is over and the craziness of Black Friday has died down, it's now time for the busiest season of the year. Whether you're a last-minute shopper or you already have your shopping done, the holidays bring so much more excitement than any other time of year. Since our...
Understanding Enterprise Cloud Migration
What is enterprise cloud migration? Cloud migration is about moving your data, applications, and even infrastructure from your on-premises computers or infrastructure to a virtual pool of on-demand, shared resources that offer compute, storage, and network services at scale. Why d...
6 Reasons Why You Should Get an AWS Certification This Year
In the past decade, the rise of cloud computing has been undeniable. Businesses of all sizes are moving their infrastructure and applications to the cloud. This is partly because the cloud allows businesses and their employees to access important information from just about anywhere. ...
AWS Regions and Availability Zones: The Simplest Explanation You Will Ever Find Around
The basics of AWS Regions and Availability Zones We’re going to treat this article as a sort of AWS 101 — it’ll be a quick primer on AWS Regions and Availability Zones that will be useful for understanding the basics of how AWS infrastructure is organized. We’ll define each section,...
Application Load Balancer vs. Classic Load Balancer
What is an Elastic Load Balancer? This post covers basics of what an Elastic Load Balancer is, and two of its examples: Application Load Balancers and Classic Load Balancers. For additional information — including a comparison that explains Network Load Balancers — check out our post o...
Advantages and Disadvantages of Microservices Architecture
What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...
Kubernetes Services: AWS vs. Azure vs. Google Cloud
Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...
AWS Internet of Things (IoT): The 3 Services You Need to Know
The Internet of Things (IoT) embeds technology into any physical thing to enable never-before-seen levels of connectivity. IoT is revolutionizing industries and creating many new market opportunities. Cloud services play an important role in enabling deployment of IoT solutions that min...