Misha Laskin
Misha Laskin

Reputation: 31

Is there a wrapper for AWS / Azure / Gcloud APIs?

We currently have services distributed across the big 3 (e.g. s3 on AWS, VMs on Azure, Functions on Gcloud, etc), and accessing these services with their separate APIs is becoming unwieldy. They're all different and the documentation is hit or miss. I’m looking for a wrapper (Node.js or Python) to control all three APIs from one place.

For example, I want to write something like .create(“vm”,”azure”) to create a VM or .list(“all”) to list everything I have running on all 3.

Googling around, I couldn’t find anything that does this except for some rogue github repositories.

Anyone know of any solutions open source or otherwise that do this?

Upvotes: 3

Views: 1207

Answers (3)

Veikko
Veikko

Reputation: 3610

Terraform (https://www.terraform.io/, tag:terraform) could be useful for this. It allows you to declare and deploy resources to all your cloud providers. The details for resources with all providers still differ, so you cannot just change the provider and deploy same resource to another cloud. Like stated in other answers, the details for providers differ.

For serverless infrastructure you could use Serverless Framework (https://serverless.com/framework, tag:serverless-framework). With this framework you can deploy serverless infra to all these clouds with minimal changes to the actual source code.

Upvotes: 1

4c74356b41
4c74356b41

Reputation: 72171

To add to existing answer, there is probably too much effort for companies to maintain such an api.

Although some basic features map 1-to-1 pretty nicely, but most advanced things are hard to map 1-to-1 and on top of that, some features are not existent or not feature rich compared to other clouds, so I doubt something like this will ever happen.

Upvotes: 2

John Hanley
John Hanley

Reputation: 81386

I am not aware of any third party libraries that support the top cloud vendors with the quality that I would use in production.

I work with AWS, Google, Alibaba and Azure. Their features sets are both very similar but also different enough that you really need to pay attention to the little details. This is very true when it comes to security.

I do not recommend working with a bunch of cloud vendors. Unless you are have really large infrastructure that requires cross vendor support, stick with one cloud and know it very well. If you do have a large infrastructure then have an expert for each cloud vendor. The cloud vendors are moving so fast with new products, services and features, that it really takes time to be an expert with just one vendor let alone three or four.

Upvotes: 4

Related Questions