News for hackers. Stuff that matters.
Re:GitLab Serverless by rkangel on Wednesday December 12, 2018 @05:54AM (#18662843)
To me, it's about the abstraction layer that you interact with when bringing up your stack. That abstraction layer has gradually moved higher over time as providers try and deliver more for their customers:

1) Hardware) 'I want to run Linux + Stack + App'. You get an empty rack, a network port and a power socket. You have to buy iron, install and maintain OS/platform, runtime environment and your service. Scaling requires more work and buying more stuff.

2) VMs) 'I want to run Stack + App'. Machine and OS is provided for you and maintained. You still have to build runtime environment and your app. Scaling doesn't require capex like (1), but still slow - you have to decide how much capacity you want.

3) Containers) Still 'I want to run Stack + App' but faster scaling so can be responsive rather than in advance. A halfway step to:

4) Serverless) 'I want to run App'. Runtime environment, hosting etc is all taken care of. You just write the app and everything else works at the capacity you need.

We've been aiming at this last level of abstraction for a while. As you pointed out, the classic VPS with LAMP got you some of the way there, but without the scaling advantages. Google App Engine got closer but was its own special world. Containers are an important technical enabler to doing it more portably.

Re:GitLab Serverless by Huggernaut on Wednesday December 12, 2018 @06:41AM (#18663055)
I'd like to think 4) is actually Containerless or PaaS - "I want to run App". Serverless or FaaS takes this a step further to "I want to run App on demand". What do you think?
Re:GitLab Serverless by rkangel on Wednesday December 12, 2018 @06:58AM (#18663147)
I was going to write a point disagreeing with you, but the logic didn't work. The fact that the PaaS implementation used requires scaling in advance, vs FaaS which can scale as requests come in means that you are exposed to one more (important) detail with PaaS - number of instances. So yes, FaaS has gone up the abstraction stack one more step.
Re:GitLab Serverless by y4mi on Wednesday December 12, 2018 @08:19AM (#18663589)
let me guess, you don't have any experience in ops?

1) Scaling doesn't really require more work. It needs a bigger investment because a hardware hypervisor costs significantly more than a vm... after all, that hard metal can host tens of VMs

2) you still need to manage your linux system and OS if you're buying a VM... the only thing you don't need to worry about is hardware. So, a faulty hard drive, hypervisor failover and similar stuff is taken care of. That doesn't mean that it works, however. It just means that somebody else will take care of it... though it might not work and you're entirely on their mercy to fix it

3) containers don't inherently give you better scaling either. creating images from VMs has been done for ages before docker was a thing, and provisioning a new Node from a VM Image is pretty easy if you're already using Terraform or similar.

you're just able to utilize a higher percentage of your hardware with containers, as you don't need to virtualize the kernel... so its a cost-cutting issue, not scaling

Re:GitLab Serverless by prepend on Wednesday December 12, 2018 @08:46AM (#18663802)
“let me guess, you don't have any experience in ops?”

This is precisely the benefit. It lets you not require as much ops experience to get the same output as what once required a lot.

This is pretty neat because now more teams can do more stuff since lots of orgs don’t have good ops or can’t pay.

Re:GitLab Serverless by tracker1 on Wednesday December 12, 2018 @05:59PM (#18668476)
I would dissent from #3 in that containers also have the inherent advantage of being able to scale and start quickly. A full VM takes time to boot and run through whatever setup/initialization needs to happen at the OS level, where a container just needs to copy/deploy and start.

In many cases it's an additional abstraction, but there are advantages beyond just better hardware utilization.

Re:GitLab Serverless by y4mi on Thursday December 13, 2018 @11:09AM (#18673355)
An optimized vm boots in < 2 seconds...

Heck, a hardware server can boot in seconds if you skip POST entirely

Re:GitLab Serverless by tracker1 on Thursday December 13, 2018 @02:58PM (#18675471)
My experience with Azure and AWS is that it takes quite a bit longer than 2 seconds before a new server is up.
Re:GitLab Serverless by windexh8er on Wednesday December 12, 2018 @08:57AM (#18663897)
I would say something like step 3 is mainly needed to get to step 4. While it doesn't have to be containers most of the implementations, as I understand them, use containers as the underlying mechanism to offer up serverless / FaaS. So you have container runtimes, microVMs (Amazon Firecracker) and... What other components are out there?
Re:GitLab Serverless by throwawa485 on Wednesday December 12, 2018 @10:54AM (#18664904)
Is Heroku considered Serverless? Or is it still more like Digital Ocean (which I consider to be more like #2)?
Re:GitLab Serverless by tln on Wednesday December 12, 2018 @11:18AM (#18665134)
Heroku is more like containers in this list. Your app is packaged up, runs on as many machines as needed, but you pay while it is running even if idle.

As soon as the idle state is abstracted away, then it's serverless.

Re:GitLab Serverless by cortesoft on Wednesday December 12, 2018 @01:06PM (#18666152)
There is a step between 1 and 2, where you pay a per-month fee for an actual server that the provider owns. That was pretty standard operating procedure in the mid 2000s.