[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Please let's not talk about "clouds"



On 04/24/2013 11:55 PM, Richard Stallman wrote:
>     > Now I know what you are referring to.  This is remote virtual computer
>     > rental.
> 
>     No. Cloud IaaS is very different from just "virtual computer".
> 
> I said "remote virtual computer rental", not just "virtual computer".
> 
> If what you're talking about is different from remote virtual computer
> rental, then I don't understand clearly.

Yes, Cloud IaaS is different from just "remote virtual computer rental".
For example, typically, you'd have a service to store virtual machine
images that you have customized, in order to start them as you need (for
example, if you have a peak of usage). On an IaaS cloud, you'd have a
rich API to be able to create LANs, assign public IPs to some virtual
machines, mount some permanent block storage, etc.

There's no such thing with a simple "virtual private server" (VPS).
Please do not mix the 2. Even though in both cases, we are dealing with
virtual machines, which are accessed remotely, and which are rent to
you, the service is really really different.

Typically, it is hard to move from one VPS provider to another, when it
should be fairly easy to switch IaaS cloud providers, because everything
is standardized, and accessed through an API.

>     > What does "proprietary" mean in the context of remote virtual server
>     > rental?
> 
>     We don't have the source code of AWS or Azure. But we do have the source
>     code for OpenStack
> 
> Is AWS a program, or is it a service?
> In other words, does Amazon offer you a copy of AWS (a program),
> or is it a service that you might communicate with thru an API?

It's a service which you can communicate through an API, and I can't
install such a service at home if I want to: they don't release the
source code of the program which delivers the API.

> It is a category error to describe a service as "proprietary" (or as
> "free").  If AWS is a service, then it isn't proprietary, and it isn't
> free.

Probably, in your view. Though I still prefer to use Linux, Apache, PHP
and MySQL, rather than Windows, IIS, ASP.net and MSSQL. And in the case
of AWS, it is even worth, because they don't ever release or sell any
binary.

Now, let's imagine I rent 10 physical servers from a provider, and ask
him to install and maintain OpenStack on it for me, then I use the
service using the OpenStack API. Even that is a remote service, don't
you think that's much much more free than what AWS does?

>     IaaS clouds have very rich APIs and a huge amount of features.
> 
> When you call something a "cloud", you confuse it with many other
> things; as a result, I have no idea what it really is. I will replace
> "cloud" with "thingumajig".  It conveys the same concrete information
> (none at all), but has the virtue of being honest about conveying no
> information.

Richard, I took a special care of using "IaaS cloud", and each and every
single time, since we discuss the fact that just using "cloud" wasn't
enough. I am making the effort, so please also do your part and try to
remember what IaaS does. Otherwise this discussion is doomed to
miss-understanding.

> What sort of things are these APIs used to do?

Here is the full reference to the OpenStack API:
http://api.openstack.org/api-ref.html

But that might be hard to grasp the idea just by looking at function
names. Maybe this howto about Quantum will give you a better idea:

https://wiki.debian.org/OpenStackHowto/Quantum

That's only for networking. Then you can also create block devices, boot
some virtual machines using the VM images you've uploaded, assign block
devices to these VMs, etc.

If you have a huge demand, you could use "autoscalling", meaning that
your system would automatically create new VMs if the load gets higher.
That's what the "heat" project of OpenStack is about, reimplementing the
functionality and the API of CloudFormation from AWS.

So yeah... that's virtual machines too. But can it be compared to a
simplistic virtual machine rental service? Hardly ... You also need to
consider the fact that you are highly dependent on the API (and the
software behind it if you want to install it yourself at home, or if you
are an operator). For me and many others, it is really important that
the underlying engine is free software, to avoid the vendor lock-in problem.

Maybe I could risk myself into comparing this to the Jabber/XMPP
protocol. Note that I have never really setup Jabber, but I think it
will work still... :)

To chat with others using the XMPP protocol, I need to connect to a
Jabber server running somewhere. No choice, that's how it works. I'd
rather use free software, running ejabberd on Debian, on a server which
I control fully (like a dedicated server, or even better: data center
collocation of a computer which I own 100%).

Though if I can't afford it, I would still choose to connect to an
ejabberd server running on GNU/Linux (and in my case, preferably
Debian), even if that ejabberd server access is shared among multiple
customers. I will know that my client will always work with ejabberd,
because both are open source technologies.

If my service provider of ejabberd server closes, changes something it
its TOS which I don't like, gets more expensive, etc., then I can decide
to move to another provider, which will also run ejabberd, and that will
be 100% compatible.

I prefer using my own domain name for my XMPP address, so that I can
decide to move the service elsewhere, to another provider or to my own
server if one day I can have enough money to run it myself. In any
cases, I will never use an @gmail XMPP address because that locks me in
with a company that removes my control over that address.

I have no source code for Gtalk, though I can apt-get source ejabberd,
for which I can contribute if I want to.

Replace the above Jabber/XMPP thing with IaaS cloud computing APIs,
Gtalk by AWS, ejabberd by OpenStack, and you get the idea...

On 04/24/2013 11:55 PM, Richard Stallman wrote:
>> This wouldn't work. Let's say you installed cloud-init in a virtual
>> machine image, then try to load that in Virtualbox, KVM, or Xen,
>> without any IaaS cloud orchestration software. Then cloud-init would
>> be waiting forever to reach the metadata server.
>
> So "cloud-init" is intended to get data from "IaaS thingumajig
> orchestration" software.  At least that is one concrete fact.
>
> Perhaps it should be called "vm-orchestration-init", to indicate that
> it inits the virtual machine in conjunction with orchestration
> software.  That way it would be clear that, if you are using a virtual
> machine without orchestration software, you should not run this
> program.

We are talking about "cloud computing infrastructure as a service". Like
it or not, this is what people call it. They don't call it "virtual
machine orchestration as a service".

I'm sorry that you seem to hate the confusing around the word cloud, I
don't like it as well. Though it is impossible to go backward what
everybody already admits as the correct wording.

On 04/24/2013 11:55 PM, Richard Stallman wrote:
>> So yeah, these images should really be called "cloud images",
>
> Nothing in computing should be called "cloud", because too many
> different things are being called "cloud" and that is confusing.

There's nothing confusing to me. Virtual machine images for the cloud
can only be used in IaaS type of cloud. We really know what we are
talking about, and we don't even need to specify.

Though, if you want, we could call that "iaas-cloud-vm-images", I would
have nothing against explicitly specifying IaaS once more, the same way
I tried to assigned myself to do during this thread with you, since you
seemed confused.

On 04/24/2013 11:55 PM, Richard Stallman wrote:
>     It is also quite obvious
>     that we are talking about IaaS here, and not anything else.
>
> It may be obvious _to you_, because you work with this often, but
> there is plenty of confusion for those who are not specialists like
> you.

I'm sure!!! I have never denied the fact that these aren't simple
concept that we are dealing with. Though it's not because it's
complicated that you should just fear it, and ban the word "cloud"
forever when it, sometimes, really points at a single definition.

That was my first reaction about 2 or 3 years ago as well. This is often
the same reaction for everyone. Maybe if I offer you help to setup a
small IaaS cloud, to show you how it works and what can be done with it,
then you will change your mind? (this is a serious offer) :)

Thomas


Reply to: