9 ms·
Going Multi-Cloud with Google Cloud Endpoints and AWS Lambda
- iced0wn 10y agoThis is very wise advise to those on a certain "forest" cloud
- pdog 10y agoWhy?
- hobofan 10y agoThe first paragraph tells you why.
- tyingq 10y agoSort of. "Spread Critical Workloads" is somewhat silly to me. The uptime will be lower than the worse of the two clouds, complexity higher, and cost higher due to egress for cloud to cloud. I do get the use case for actual multi-cloud, where there aren't cross cloud dependencies. This setup seems unwise though. Maybe as a short term migration pathway, or similar.
- pdog 10y agoNo it doesn't.
- rynop 10y agoclickbait. I don't consider this multi-cloud
- djhworld 10y agoTL;DR - call services on GCP from your AWS lambda functions using Cloud Endpoints.
- deleted 10y ago[deleted]
- doppenhe 10y agothis doesn't solve the biggest problem with multi-cloud which is data egress though. Even if latency is acceptable you would get killed on data transfer for any significant amount of data. am I missing something?
- toomuchtodo 10y agoNope, spot on. You either cache extremely aggressively with a CDN if you can, or otherwise you eat the data out charges for dynamic data.
- al_james 10y agoNo exactly right. As Google seem to be getting more serious about attracting aws converts and dual cloud deployments (eg in built aws vpc peering) I wonder if they will offer some kind of cut price data transfer to aws networks. That would be an interesting move.
- thesandlord 10y agohttps://cloud.google.com/storage/transfer/ https://cloud.google.com/storage/transfer/ Ingress is free on all major clouds, but you still have to pay to get the data out. (I work on GCP)
- tlarkworthy 10y agoIn my experience egress is not the biggest cost though, it's compute and storage. Are my workloads the outliers?
- brianwawok 10y agoFor most people not running a CDN or Netflix I would also expect to see CPU or Ram the bottleneck.
- _jal 10y agoReally depends on the business model. I modeled different deployment scenarios for a product for a small company, and egress pricing broke the economics for the ones involving cloud providers. (It was principally concerned with hires images.) That was some time back and I know pricing has come down, so that may be different now.
- luhn 10y agoThis is not multi-cloud as it is commonly defined: Simultaneously handle workloads with multiple cloud vendors, to prevent lock-in to a single vendor. Rather, this is passing workloads between AWS and Google to leverage the advantages of each. A useful strategy, but the title is a bit misleading as it goes against the colloquial definition of multi-cloud.
- zeroxfe 10y ago> the colloquial definition of multi-cloud. I know you can use multi-cloud to prevent lock in, but I've never heard the term used to strictly mean that. Almost everyone I work with uses the term multi-cloud as "workloads on multiple cloud vendors."
- datums 10y ago+1 Multi Cloud , has meant aws || azure || gce || vmware
- doubleplusgood 10y agoThank you for sorting the operands, my OCD is satisfied
- pasbesoin 10y agoTrans-cloud, as opposed to multi-cloud?
- 10y ago
- MichaelBurge 10y agoSeeing all those services hooked together gives me the willies. It sounds like a right PITA to debug, and chaining them together in serial for a single request multiplies the chance of an error even if each individual node is pretty stable. I guess it's okay for a demo though. They're probably not setting an example so much as trying to throw as many services together to show off the technique.
- zackmorris 10y agoYa the only way I could ever see this being maintainable is if it's declarative. It takes a tremendous amount of boilerplate and configuration to perform what comes down to a one liner in any functional language or a formula in any spreadsheet. I think I would be more interested in a transform that converts a series of goroutines to lambda functions or something.
- jankedeen 10y agoYou know, architecturally, at application level no one wants to deal with this but devs orchestrate nightmarish dependencies for deploys and hit 'endpoints' with aplomb in service architectures with only a playbook or data blueprint to follow. What's the point of fighting this? Let the kids play.
- peterjlee 10y agoWouldn't this make your service less reliable since downtime in either cloud service can cause your service to be down?
- tyingq 10y agoYep. Your new uptime is u1 x u2. Like .99 x .99 == .9801 It's raid 0, like striped disks.
- thawab 10y agowhy would Google write a blog post about AWS lambda while they have cloud functions in beta?[1] why would i use google endpoint with AWS lambda instead of AWS API gateway? Going "multi cloud" using AWS lambda with AWS API gateway and Google cloud functions with endpoints is a blog post I'm interested to read. [1]https://cloud.google.com/functions/ https://cloud.google.com/functions/
- plandis 10y agoSeems like marketing to get people comfortable w/ Lambda and who are not going to switch to at least partially use Google Cloud?
- nothrabannosir 10y agoI don't know about google cloud endpoints, but AWS gateway is an absolute nightmare. Configuration is awful and communicating errors from backend to client is a travesty. The lowest of the low hanging fruit to compete with AWS on. If GEP is remotely coherent it will be a clear win.
- sheeshkebab 10y agoYeah, API gateway was written as some hack it seems (or maybe they used some third party ESB or a soa framework and slapped cloudfront on it). All the swagger extensions to configure it, these 200 status codes for 500 errors - its all barely usable. Just take your own rest backend and put cloudfront on it and it you'll have more functionality and as much or more scalability and security, for an "api".
- masuo 10y agoWere you using a Lambda integration? I found the following blog to be useful: https://aws.amazon.com/blogs/compute/error-handling-patterns-in-amazon-api-gateway-and-aws-lambda/ https://aws.amazon.com/blogs/compute/error-handling-patterns...
- shivakrish 10y agoAPI Gateway PM here - Sorry to hear that. Would love to understand more details around the trouble you are having with API configurations. Please do reach out to us on our forums (https://forums.aws.amazon.com/forum.jspa?forumID=199 https://forums.aws.amazon.com/forum.jspa?forumID=199) so we can assist further.
- techcofounder 10y agoA (potentially) better approach to going multi-cloud is to use a CD tool like Spinnaker (spinnaker.io), which Google and Microsoft both support - and Netflix supports the integrations to AWS. (full disclosure: my startup, Armory.io, builds enterprise features on top of Spinnaker)
- alpb 10y agoYou’re right, however this article is not talking about deployment tools. It's about setting up a serverless/lambda runtime pipeline between AWS and Google Cloud. As far as I know, Spinnaker does not do anything for your application runtime.
- dimitar9 10y agothis is just ridiculous
- deleted 10y ago[deleted]
- jknz 10y agoI am wondering if the future of multi-cloud lies in a third party entity managing real-time auctions for cloud services. 1. The developer sets up some requirements: number of instances, X amount of CPU power, Y amount of memory, Z amount of storage, B amount of bandwidth, or other characteristics. These requirements are sent to the third party. 2. Cloud vendors (the "bidders") receive the characteristics needed by the developer. Each of them bid by providing a price per hour for the given characteristics. 3. The bidder with the lowest price wins the auction, sends back credentials to start deployment 4. The developer can start the deploy with the infrastructure provided by the lowest bidder! All this may happen in less than one second, similarly to the auctions that happen when advertisers bid for displaying an ad when someone visits a webpage. This would need a massive standardization across cloud vendors, a system of penalties when the infrastructure provided by the bidder does not satisfy the characteristics, etc. This does not too far fetched to me. It also make it easier for new cloud providers to start selling, and lower prices for developers.
- sdflkd 10y agoI just saw this today: https://zeit.co/now#frequently-asked-questions https://zeit.co/now#frequently-asked-questions I haven't had enough time to read into it (nor do I have enough experience to evaluate), but it seems like what you're talking about?
- sunbreak 10y agoThis is happening; Cloudsmash - Decentralized VPS Cloud Open To The Public https://bitcointalk.org/index.php?topic=1869603 https://bitcointalk.org/index.php?topic=1869603
- nine_k 10y agoHow about moving gigabytes of data that underlie the application? The egress cost is not that low. The access latency is utterly important. Raw computing power on small amounts of data has a limited applicability.
- optimuspaul 10y agoThis is one of the main reasons I think being cloud agnostic is a fools errand.
- tyingq 10y agoWhy would you want the resulting uptime (u1 * u2) plus the added egress costs for cross cloud chatter? Cross cloud just seems like a bad idea all around. Edit: Maybe for a migration?
- discodave 10y agoImagine somebody that wants to get the features of EC2 and the features of BigQuery or some of Googles ML stuff.
- tyingq 10y agoI suppose. The downsides seem large enough that I would try and find alternative implementations such that I could do it in one cloud. Or ar least something that highly minimized cross provider dependencies and expensive data xfer. You're fighting the purpose built intention of the cloud to make it costly and clunky to move data out.
- cdnsteve 10y agoFlask app :)