Cloud Provider SLAs exposed via RESTful APIs - amazon-ec2

I was wondering if any of the major cloud providers (AWS, Azure, Google) exposed their SLAs for virtual machines via a RESTful API.
Basically, I am looking for the information available on these pages:
https://aws.amazon.com/compute/sla/
https://cloud.google.com/compute/sla
https://azure.microsoft.com/en-gb/support/legal/sla/virtual-machines/v1_8/
Does anyone know if this information is exposed by any of these providers via a RESTful API?
Many thanks.
I was informed by Azure Support that this service is not provided by them.

On Google Cloud Platform there is no way to check the information that you are asking via REST API.
Can you explain your use case and maybe we can find a workaround?
Best regards

Related

IBM ACE and IBM API CONNECT

Can somehow explain me the difference in these products?
As far as I understand IBM ACE (AppConnect) gives you more or iPaas capabalities. It is allows you to make an API.
But from what I understand now is that API Connect is required for the actual API management. Proxy/policies etc.
Does anyone know you these products are licensed? Do you have to API connect for your APIs to be managed, governed etc?
This is not an exhaustive answer, but hopefully it'll point you in the right direction...
App Connect is for building integrations (flows) with various data sources. Could be databases, cloud services like GSuite or Salesforce, or even HTTP endpoints. Those flows could be triggered by events in one of those systems or by an API. You can also do things like turn a database schema into an API. You get the idea.
API Connect is for API governance, security, and socialization. In more concrete terms, it gives you tools for things like: adding authentication and/or authorization to all APIs, bundling APIs together, enforcing rate limits or quotas, providing a portal for sharing/selling your APIs with others, and so on.
You can create APIs using App Connect and stop there--it's usable/invokable without API Connect in the picture. API Connect provides enforcement policies to give you more flexibility in how you call that API and/or give others the ability to invoke the API. The two products complement each other, but an API management product would be required in order to manage and govern the APIs created by App Connect.
In terms of licensing, there are multiple available options. You can purchase the products as standalone software packages that you install and maintain yourself (see IBM Cloud Pak for Integration) or you can leverage the IBM-managed versions that IBM provides via IBM Cloud.
More information is available:
https://www.ibm.com/cloud/api-connect
https://www.ibm.com/cloud/app-connect
https://www.ibm.com/cloud/cloud-pak-for-integration

Ideas to divided bandwidth to clients in Google Cloud Platform

How to separate bandwidth to clients in SaaS plaform?
Example: wix separate in GB to each client type.
I use Laravel in Google compute engine, but any tip is valid
I believe If we talking about SaaS your have to find your solution from third-party tools since GCP mostly is a Infrastructure as a Service (IaaS) or Platform as a Service (PaaS).
Please take look at following document which outline Rate-limiting strategies and techniques in GCP
https://cloud.google.com/solutions/rate-limiting-strategies-techniques
and
https://stripe.com/blog/rate-limiters

Does Google Container Engine SDK/API exist?

I am planning to launch container cluster from an SDK/API. Presently, I am fine with any language, but I prefer NodeJS SDK. As far as I have seen, I could not find any Container engine SDK. Here is the NodeJS SDK for GCP which does not contain container engine. In fact it contains SDK only for very few GCP services.
I came across OAuth API for container engine but it involves human intervention to launch it. I am looking for service account based authentication for the SDK.
Are there container engine SDKs available ?
Update after discussion with Robert Lacok:
This is the code I tried to use for container APIs with API-key, it does not work. It expects Oauth 2 token, or some other credentials other than Service account. I tried API-key it didnt work. I dont know how to use Service account authentication with the API.
Here is my source code:
Here is the error:
I see a method for Application Default credentials. But I dont think so it will be useful for my use-case. I am trying to create container cluster from AWS Lambda. So, I cant use application default credentials. Is there any other options ?
The API for Google Container Engine is very limited at the moment as all the features are in Alpha status and because they can change not many people are incorporating them into the SDKs they are developing.
These are the current available APIs: https://cloud.google.com/sdk/gcloud/reference/container/
And here is the Alpha APIs: https://cloud.google.com/sdk/gcloud/reference/alpha/container/
What you probably want to do is making calls to the REST API and using the client library for OAuth2 authentication.
You can browse the API documentation and see that every method has a short how-to for a number of languages, NODE.JS being one of them. Have a look here for an example on how to create a container cluster.
You also mentioned service account authentication. The preferred way to do this is to use the application default credentials, you can have a little read about them here.
In short, you want to set an environment variable GOOGLE_APPLICATION_CREDENTIALS=/path/to/key.json which is a key to service account you generated in console.
Then the client library will take care of the rest (getting the OAuth tokens and what not).

What all services can be configured via Azure SDK for ruby

I was looking at Azure SDK for ruby and after comparing the API available there with the list of Azure's services, I noticed that the SDK does not have API for achieving many of the tasks related to various services. Are the API mentioned on SDK's github homepage the only API available ?
Eg: It has API to create a virtual machine, but no API to add DNS server.
The SDK has API to create Virtual network which can take params or XML file.
I also want to know whether we can configure other services using XML files and if yes, where can I find the XML data structure to configure those services.
The azure documentation is huge and I am unable to find proper reference for the XML data structure and list of services which can be configured using Ruby SDK.
FYI : I am on Ubuntu machine and cannot use Azure's other tools which are specific to only Windows.
I wrote an Azure API client (that despite my best efforts, has remained closed source) in ruby that my company uses, and I can relate to how much of a beast their API can be. You will find the best resources here, which will document all of the XML that can be configured. It might also be relevant to note that the official cross platform SDK is actually their Node.js client, which is available at github, which will definitely work on Ubuntu, better than the Ruby SDK.
Following is the list of services configurable by the azure-sdk-for-ruby
Base Management Service (creating affinity group, listing locations)
Cloud Service
Storage Management Service (Blob, Queue, Table)
Service Bus Service (Queue, Topic) - Could not make it work.
SQL Database Management Service
Virtual Machine Management Service
Virtual Image & Disk Management Service
Virtual Network Management Service
I have created a quick reference of available methods and short description of various Azure entities.

Azure Worker role Webapi hosting + Service Bus

I would like to be able to pump messages from the azure service bus and dispatch them to Webapi controllers in a worker role. I have seen this excellent (series) article http://pfelix.wordpress.com/2012/03/15/asp-net-web-api-creating-an-host-using-azure-service-bus/ which is very interesting but seems to use WCF . I would prefer to use the newer webapi framework instead. Has anyone already wrapped QueueClient as a source for a custom host?
The post that you refer does use the newer Web API framework. Internally, it uses the WCF relay bindings similarly to what happens with Web API self-hosting, which also uses WCF internally.
The code is available here: https://github.com/pmhsfelix/WebApi.Explorations.ServiceBusRelayHost
Hope this helps
Pedro

Resources