Feature Focus: Multi-Cloud Readiness Insights
Why Multi-Cloud Readiness should be considered?
Cloud is often perceived by developers and ops as the promised land, allowing them to leverage best-of-breed PaaS services and Cloud-leader innovations for their software. While this is true, it may make it harder to deploy an application across multiple cloud platforms if desired.
For organizations opting for a multi-cloud strategy, it is key to identify platform-specific services that could prevent or hinder an application from being deployed across multiple cloud platforms. Some of these PaaS services will require incremental migration effort and cost when moving to multi-cloud.
As Wikipedia defines it, “Multi-cloud is the use of multiple cloud computing and storage services in a single heterogeneous architecture. This also refers to the distribution of cloud assets, software, applications, etc. across several cloud-hosting environments. With a typical multi-cloud architecture utilizing two or more public clouds as well.”
CAST Highlight checks hundreds of patterns in applications that estimate multi-cloud readiness by detecting the use of platform-specific services. 8 categories of PaaS services are available today in CAST Highlight Multi-Cloud Readiness Insights:
- Proprietary Database Format: Proprietary database formats can require significant technical effort to migrate to multiple clouds and incremental costs to transfer data.
- Storage: Storage services are common for logging, archiving, or saving critical information for applications. However, migrating this data to multiple clouds can result in significant data transfer and egress fees along with a time-consuming export process.
- Function as a Service: FaaS are small event-triggered programs that work with endpoints, which are often cloud platform specific. Migrating these services to multiple clouds would impact all processes utilizing these event triggers and endpoints resulting in significant modification effort.
- ETL: ETL (Extract Transform Load) services are common in cloud middleware implementations. However, they can often become difficult to move across multiple clouds if not implemented in a multi-cloud manner.
- DevOps Automation and IaC (Infrastructure as Code): Most cloud vendors offer DevOps and CI/CD pipeline tools that are highly integrated within their cloud environments. These tools can make it harder to deploy the software across multiple clouds. The alternative is to utilize platform-agnostic tools from third-party sources.
- Real-time Data Streams: Real-time data stream services are commonly used in Big Data and Internet of Things (IoT) applications. However, using these cloud provider specific services will require more effort to make the application multi-cloud.
- Load Balancing: Load balancing services help distribute global and local network traffic across several cloud servers for better performance and reduced latency. However, cloud platform specific load balancer services will need to be replaced to move an application to multiple-clouds.
- Monitoring Services: Most monitoring services provided by cloud providers are unique to their specific platform. If multi-cloud is the plan, a platform-agnostic monitoring services from a third party is recommended.
How the feature works in CAST Highlight
At both the portfolio and application levels, Multi-Cloud Readiness Insights are consolidated under CloudReady dashboards, within the Multi-Cloud tab. Patterns detected across applications are listed and allow users to quickly identify:
- The specific platform for which the pattern has been detected. Today, AWS, Azure, and Google Cloud are supported.
- The technology where the pattern occurred. Today, Java and C# are supported for Multi-Cloud Readiness insights.
- The category (see the list above). A click opens a modal with the category definition (why this creates an adherence) and the platform-specific PaaS service names.
- At the portfolio level, the total number of apps having these patterns. A click on this number displays the list of applications for further investigation at the application level.