Learning Objectives
By the end of this section, you will be able to:
- Define and differentiate hybrid and multicloud infrastructure deployments
- Understand the importance of cloud mashups
- Understand how to accelerate the creation of solutions using cloud infrastructure and platform services
Cloud computing provides businesses with more options that help them deploy application workloads more effectively. Application workloads may include clients and servers in traditional client-server architectures, nodes in peer-to-peer (P2P) architectures, or services in microservice architectures. When it comes to cloud architecture, organizations need to determine which application workload should run in the cloud. Organizations taking advantage of cloud computing environments should ensure that it does not introduce delays in solution delivery and maintenance.
Hybrid and Multicloud Solutions
For large-scale applications, businesses look for better ways to manage users and queries without clogging a single cloud system. In this section, we will review different cloud solutions that are built upon combining a public cloud and a private cloud.
Think It Through
Cybersecurity and Cloud-Based Architectures
Every year, organizations around the world are hit with major cyberattacks that affect millions and even billions of private accounts and records. To deter cyberattacks, organizations spend millions of dollars per year on cybersecurity. Cloud-based architectures are more difficult to secure and also partially rely on trusting security architectures provided by cloud service providers.
In your opinion, why are organizations becoming more dependent on cloud computing, considering added security risks?
Hybrid Cloud Solutions
One approach to managing cloud storage is to allow localization of infrastructure data while also utilizing third-party services for storing public data, hence implementations of hybrid cloud. Deployment of hybrid cloud infrastructures allows enterprises to manage flexible workloads using both public and private resources, opening the opportunity of having more management rights over sensitive data while also utilizing public clouds to deploy public applications.
To accommodate a broad range of needs, hybrid cloud solutions aim for a dynamic environment by allowing a wide range of options to combat potential issues regarding different deployment, communications, and management. Several approaches that the hybrid cloud offers toward these issues include cloud deployment, application communications, and application and infrastructure management.
Cloud Deployment
When it comes to deployment, organizations look at the structure of their own application’s architecture and decide how their features should be deployed among different layers of storage. They can choose to shift their features to the cloud and keep the system on premise or move a fraction of their deployed code to the cloud while keeping cold data or backups on their private infrastructure. Hybrid cloud systems unlock access to on-site backup, which protects organizations from major financial losses or downtime in case of a system failure or a data breach. This also allows easier access to data for a remote workforce, as the data are not tied to a single location. In addition, a shift of deployed code or data system onto the cloud allows corporations to automate application updates and maintenance or scale their applications accordingly, depending on peak times, to maximize efficiency. When using a hybrid cloud system, scaling up during peak times or when demand spikes means simply paying for more cloud resources instead of having to expand local infrastructure. Likewise, a company may have the option to downscale during slower times, enabling a company to pay for only the resources it needs, when it needs them.
Application Communications
The main question when it comes to interconnecting one or several cloud and on-premises systems with varying providers and deployments is how to form effective communication between those systems. Businesses usually tackle the hybrid cloud network by implementing APIs as a means to communicate between different platforms, establishing secure network connections or VPNs to ensure dedicated protected connections, and encrypting data to mitigate data breaches. Note that the more complicated sets of systems the corporation manages require complex API architectures. Developers need to consider interoperability, data integration, and efficiency to design API systems that allow easy communication between systems while maximizing efficiency.
Application and Infrastructure Management
With an interconnected web of cloud and on-premises systems, developers need to find a way to effectively monitor and keep up the performance of their resources. Because of the investment of multiple cloud systems from different providers, there will be different documentation and complex operational overheads. Developers need a way to simplify administration by centralizing control of all systems either through a unified tool (e.g., Azure Arc and CloudCenter Suite) or robust architecture. Ultimately, with a hybrid cloud system, the company has full control over its data and where they are housed, making it easier to make informed choices about data security. Careful planning of management for a hybrid cloud structure allows developers to easily control the scalability, flexibility, security, and cost of their hybrid system.
The pros and cons of a hybrid cloud solution must be weighed against the needs and priorities of the organization that intends to use the solution. Typically, a hybrid cloud meets a broad range of needs, including flexibility and security, as follows:
- Easier access to data to better support the remote workforce. The organization has the flexibility to provide remote employees with on-demand access to data that are not tied to one central location.
- Reduced costs. When demand spikes, the organization can avoid capital expenditures to expand its infrastructure and instead pay only for the cloud resources it uses.
- Improved scalability and control. Increased automation allows the organization to adjust its cloud settings to respond automatically to changes in demand, as well as optimize performance and efficiency.
- Security and risk management. The organization has control over its data and improves its security by reducing the potential exposure of data. The organization can choose where to house its data and workloads, which makes it easier to implement security measures such as encryption, automation, access control, orchestration, and endpoint security.
Industry Spotlight
Leveraging Hybrid Cloud Models for Streaming
Hybrid cloud models are extremely common architectures for big consumer companies. Netflix, for example, in 2008, adopted the hybrid cloud model by combining on-premises database structures to store big movie files and then utilizing Amazon Simple Storage Service (Amazon S3) to distribute data across cloud servers. They can manage their resources through built-in tools such as AWS Local Zones, which bring services closer geographically to a user. It is necessary for Netflix, as a streaming service provider, to adopt hybrid cloud models due to the amount of traffic and geography it covers on a daily basis, as well as to ensure user’s smooth movie-watching experience.
Multicloud Solutions
Similar to hybrid cloud structures, a multicloud solution involves meshing several different computing environments to form a flexible working environment. Multicloud’s main difference is that it is exclusively a combination of more than one public or private cloud system, compared to hybrid cloud, which is a combination of cloud and on-premises. The benefits of multicloud systems include automation and scalability, risk reduction, competitive pricing, and robust security.
Automation and Scalability
One of the cloud system’s biggest advantages is the system’s reliance on cloud infrastructure, which allows developers to effectively distribute workloads among infrastructures and leverage resources based on geographical patterns and peak usage time. In the long run, collecting data regarding the application’s performance also allows complete automation in managing the multicloud infrastructure, which allows for convenience in controlling and optimizing the company’s application.
One of the reasons why cloud systems became increasingly popular over the years is because of the low cost of acquiring and maintaining cloud systems. With a multicloud system, an organization is motivated to shop around and choose multiple vendors for the best price. Different providers offer different services for different prices; there are enough cloud service providers today that an organization typically has many options to choose from.
Risk Reduction
By having access to multiple cloud vendors, the utilization of multicloud structures allows companies to maintain uptime in cases of data breach or system failure. If one vendor fails, the organization can switch to a different one. A vendor can also act as a complete backup in case the system needs a complete reboot.
In a multicloud system, each cloud vendor manages its infrastructure. Services such as AWS and Azure offer access, keys, and secured network management. Multicloud architecture leverages this difference in security features between vendors to act as layers of a secured system, preventing a complete breakdown of the environment.
Challenges of Multicloud Systems
With all the benefits that multicloud solutions offer, some challenges must be considered to mitigate risk and optimize the budget. Similar to hybrid cloud solutions, multicloud system networks can be hard to design due to the increasing complexity of the network as multiple cloud systems are connected. Furthermore, the complete reliance on cloud infrastructure requires dependence on the vendor’s services and constraints, making it hard to unify systems or migrate workloads between different clouds. Organizations must consider these problems to mitigate risk and maximize profit when developing multicloud solutions. Typically, users rely on both hybrid and multicloud systems rather than selecting one over the other.
Cloud Mashups
A mashup typically describes a web-based application hybrid that combines features from two or more web sources to create a new service. These features communicate with the use of API, which are sets of protocols and tools that serve as a middleman between different software applications, allowing information to transfer between them. Cloud utilization allows complete virtualization of these multiservice web applications through vendors offering centralized tools and operations that support assembling and managing multiple sources; hence, the emergence of cloud mashups.
To understand cloud mashups, consider how news websites function. News providers typically get weather updates from Weather.com (or other sites) and gather other information, such as updates about stocks, shares, currency rates, and even additional news items from sites such as Reuters. The end product is a practical example of a mashup of multiple component parts. Cloud mashups have become increasingly popular over the years because of the plethora of public information that the service offers and the convenience of managing services completely through the cloud.
Cloud mashups effectively allow developers to pick and combine different information from public sources and make their applications. It is extremely beneficial due to how much it enhances users’ experience while promoting collaboration between services. However, due to its dependency on the API structure of the service, the discontinuation of a service can cause many applications to break down. This lack of scalability becomes a concern for cloud mashups, and constant upkeep is necessary for applications that depend on using public services as a means to collect and display information.
Leveraging Cloud Services to Implement Cloud Applications’ Workloads
Hybrid multiaccess computing ensures network scalability by introducing guidelines that constrain distributed applications to exhibit low latency and consume less power. This can be best achieved by locating and operating workloads at the mobile or network edge, which means maximizing communication performance between the local network or device endpoint onto the Internet. Products surrounding the IoT and computer infrastructures that rely on minimizing latency or collecting real-time data would benefit greatly from this. Furthermore, edge computing embedded in hybrid and multicloud models helps with encrypting data before sending them onto the cloud network, minimizing risks of data breach and complying with privacy regulations.
Telecom services providers are slowly becoming cloud service providers in an effort to make cloud resources more readily available on demand at the edge of the network. To do so, they are implementing hybrid multiaccess computing solutions and will eventually compete against or coordinate with the big cloud vendors. Businesses and individuals will leverage telecom service providers’ edge cloud resources to develop “bring your own cloud” solutions. A bring your own cloud (BYOC) solution involves an organization allowing employees or users to freely decide on the cloud vendor that best suits their tasks rather than standardizing a single specific provider. Services such as AWS and Azure offer their edge-specific tools and frameworks to process data locally and deploy and manage edge devices for real-time analytics and machine learning. In the same way as Starbucks (as an example) plans to provide charging station services for electric cars shortly, it will also go beyond providing simple wireless access to its customers by being able to connect them to the cloud resources needed to operate cloud applications (e.g., extended reality applications that the store anchors to objects in the cloud.)
Looking at the near future, it is likely that the next generations of cloud-based solutions will evolve toward multiaccess networking architecture. Note that this will not change the need for hybrid or multicloud workload deployment or the use of cloud infrastructure or platform services. What will change is which organizations will make these services available closer to the edge of the network to maximize performance and enhance users’ experience. In fact, machine learning and large language models such as GPT and Bard may still need to be trained in remote big clouds depending on their resource requirements, but the resulting models will be moved and operated at the edge.
This discussion highlights the need to understand how to leverage cloud infrastructure and platform services to support the development and operation of modern applications. In general, cloud services are available today via the big cloud portals (e.g., portal.azure.com) and via software development kits (SDKs) or APIs readily accessible from pretty much any programming language used to develop cloud applications. In the next two sections, we will delve into the details of how to use these services practically to implement cloud applications.