As cloud computing continues to gain momentum, system administrators are looking for more ways to integrate with their cloud model. There are now more direct use cases for cloud computing, which require greater levels of customization. The ability to enhance the cloud experience and have cross-cloud compatibility has helped form the Cloud API (Application Programming Interface) environment. Now, administrators can integrate applications and other workloads into the cloud using these APIs.
But which model is the right one, and how can you incorporate an API into your cloud?
Understanding the cloud API model isn’t always easy. There are many ways to integrate into an infrastructure, and each methodology has its own underlying components. To get a better understanding of cloud computing and how APIs fit into the process, it’s important to break down the conversation at a high level. There are four major areas where cloud computing will need to integrate with another platform (or even another cloud provider).
- PaaS APIs (Service-level): Also known as Platform-as-a-Service, these service APIs are designed to provide access and functionality for a cloud environment. This means integration with databases, messaging systems, portals, and even storage components.
- SaaS APIs (Application-level): These APIs are also referred to as Software-as-a-Service APIs. Their goal is to help connect the application-layer with the cloud and underlying IT infrastructure. So, CRM and ERP applications are examples of where application APIs can be used to create a cloud application extension for your environment.
- IaaS APIs (Infrastructure-level): Commonly referred to as Infrastructure-as-a-Service, these APIs help control specific cloud resources and their distribution. For example, the rapid provisioning or de-provisioning of cloud resources is something that an infrastructure API can help with. Furthermore, network configurations and workload (VM) management can also be an area where these APIs are used.
- Cloud provider and cross-platform APIs: Many environments today don’t use only one cloud provider or even platform. Now, there is a need for greater cross-platform compatibility. More providers are offering generic HTTP and HTTPS API integration to allow their customers greater cloud versatility. Furthermore, cross-platform APIs allow cloud tenants the ability to access resources not just from their primary cloud provider, but from others as well. This can save a lot of time and development energy since organizations can now access the resources and workloads of different cloud providers and platforms.
Picking A Platform
It’s important to select the right API platform for your organization. Be aware that there may be a need for multiple different API models for your environment to function well. Also, be aware that this cloud service model is very new and there are still some challenges to be ironed out. Specifically, platform and infrastructure compatibility have been an issue. There are times when applications just won’t work with a cloud-based API platform. In these cases, it’s important to plan out the deployment and ensure that prior to any development, all pieces can interoperate and perform compatibly.
Take note: Not all cloud providers and APIs are created equal!
This means that depending upon your environment, you’ll have to thoroughly ensure that the platform you are seeking to deploy will work on the provider cloud model. In addition to software-layer compatibility, the API model offered by a cloud provider must scale and support different regions for geographic redunancy of operations. In some cases, traversing an entire nation with snapshots or backups may be required. Look for providers who unify their network infrastructure and allow both workloads and APIs to function across the WAN.
Who’s In The API Race?
The need to integrate with multiple services and platforms has generated a new cloud API market. Now, leading technological innovators are striving to meet this market demand. The ability to integrate platforms and applications by using APIs is a growing demand as more data and IT environments become distributed.
In the race to create a solid platform, several market leaders have emerged in the cloud API push. Just to name a few:
- Apache (Citrix) CloudStack
- Amazon Web Services API and Eucalyptus
- Google Compute Engine
- Simple Cloud
- OpenStack API
- VMware vCloud API
Each solution and platform has its own benefits and challenges. However, many of them have something in common: Interoperability. For example, The CloudStack model (although backed by Citrix) still integrates with any underlying hypervisor and supports other common cloud API models including AWS API, OpenStack API and even VMware vCloud API.
Other solutions, such as Simple Cloud API, are developed and funded by a number of organizations to create a true cross-platform cloud environment. In this example, Simple Cloud APIs are able to integrate with services from Amazon and Microsoft. The solution that you chose to work with will depend on the infrastructure that you are trying to deliver. If storage connectivity is a concern, look for a platform that easily integrates with various storage models across a WAN.
The cloud API model will only continue to grow as more organizations look for efficient ways to connect their environments together. The ability to have secure, multi-tenant, cloud environments helps create a robust infrastructure capable of growth and expansion. Whether there is a need to effectively distribute data across the WAN, or granularly control virtual disk images residing on different platforms, cloud APIs can help achieve greater cloud elasticity for many organizations.
Bill Kleyman is a Virtualization and Cloud Architect, MTM Technologies, who enjoys writing about technology and cloud.