Knowledgebase

How does Cloud work ?

Posted by bluemediaprint, 09-03-2010, 01:51 PM
Honestly even after being so long in hosting industry I am still not able to understand what is cloud? - how does it work? - what should I do if I need to form a cloud? - who needs cloud? and many more.. Can someone make this simple for me.. Also what control panel is good for cloud ? and who offers that

Posted by ky0ung, 09-03-2010, 11:38 PM
i think cloud hosting is simply the connection of multiple servers to form a connection of a bunch of websites. They usually charge differently than typical than typical hosting and its a cheaper alternative.

Posted by InternalOptics, 09-03-2010, 11:54 PM
Everytime I ask someone who has cloud services, I always ask the following: "Is it me.. or is a cloud really just the latest keyword for vps on a cluster?" And I have always been told yes. Sometimes the vps is restricted to the cpu it's hosting on, and has a chance to share memory/disk/cpu cycles accross the cluster. Other's, it is just a vps that does not get anything from the rest of the servers. It just happens to be limited to local resources, even though there is expansion possibilities. Hope this helps!

Posted by InstaCarma_Support, 09-04-2010, 02:50 AM
A cloud is a collection of machines, a well designed or collection after proper planing. Considering we need to deploy a heavy application, in the sense an application of huge size (database and other data), in this case deploying it on to a single server and maintaining will be a real tough task. Here comes the cloud in picture. Initially, need a good understanding regarding the application, then plan properly and design a cloud architecture. Like two database servers (along with High Availability and load balancing). Web servers (along with load balancing). Then servers with proper size, for other data and assets. The intercommunication between the servers will happen as per the architecture of the cloud we choose. In most cases, there will be ssh-key authentication between the machines. Finally, we can deploy the application on to the cloud and test. So, the application is now serving from a cluster or cloudd of servers instead from a single one. One of the most important ideas behind cloud computing is scalability, and virtualization is the technology that makes it possible.

Posted by JasonD10, 09-04-2010, 12:37 PM
True cloud is definitely more than VPS. VPS first and foremost is not redundant, it's not high available, it's not vertically scalable beyond a single physical server, they're rarely running on an engine that is both redundant and high available across multiple physical servers, among other things. Cloud is not just an operating system so if a provider just has some fancy OS and claims they are Cloud, they are not. If a provider just simply mirrors data (redundancy) and load balances it (high availability), it is not Cloud. IMHO, the truest of true Cloud implementations will scale an application vertically beyond a single physical server, with redundancy, high availability, multi-redundant/ha shared storage, multi-redundant/ha networks (at ALL layers, including the switching), multi-redundant/ha operating layer/engine, be entirely provisioned, controlled, and managed from a web interface, a multi-tenant environment, and advanced QoS controls (to limit CPU/RAM/HDD/Network resources).

Posted by arisythila, 09-04-2010, 09:03 PM
How I sort of explain it to people when I explain our cloud is. For example, You take 10 machines, CPU, Memory, and HDD space. And you sort of create this virtual environment (Cloud) Now if you add more machines to this environment, the cloud gets bigger, however, if you have a machine failure, that cloud just gets a little smaller, but does not cause your machines to crash. I know we are Cloud hosters over here that have answered this question, however. I've noticed a lot of benefits going to this sort of infrastructure. 1. being that i don't have to worry about server failures. 2. everything pretty much trinkles down from that. Not getting calls at 2AM in the morning anymore. Our first grid has over a year of uptime on it, We will be upgrading it here soon. Thanks,

Posted by dazmanultra, 09-06-2010, 04:41 AM
The only applications that will do this are scientific/mathematical applications. Usually running on some specialised linux so that a bunch of blades or similar will appear to the application to be a single tightly integrated system. Vertical scalability is usually not the defining point of "cloud". In fact, isn't vertical scalability almost the anti-thesis of cloud? Cloud to my mind is about horizontal scaling - scaling across multiple machines in multiple locations... Last edited by dazmanultra; 09-06-2010 at 04:44 AM.

Posted by JasonD10, 09-06-2010, 11:26 AM
horizontal is nice.. but vertical scaling is what makes an administrator's dream. AppLogic does in fact do this.

Posted by InstaCarma_Support, 09-07-2010, 01:15 AM
In short more than one servers, connected together with a ready to go substitute in place for each one.

Posted by Karl Austin, 09-07-2010, 08:27 AM
errrr.... no it doesn't, take it from someone who has been using it for well over a year that it doesn't do anything of the sort. AppLogic cannot make a single machine instance span multiple servers - sure it can make an application span multiple servers, but so can any cloud system, as in AppLogic an application it a collection of virtual machines each running their own specific task.

Posted by JasonD10, 09-07-2010, 08:31 AM
I never said a server spans vertically.. but an application. Most other cloud systems cannot span an application vertically, at least nowhere near the levels that AppLogic can. I use it too and have used everything else as well.

Posted by Karl Austin, 09-07-2010, 08:34 AM
You're not scaling the application vertically though are you? All you're doing is creating more VMs with specific roles i.e. web serving, DB etc. and then scaling those components out horizontally.

Posted by JasonD10, 09-07-2010, 08:35 AM
The application does scale vertically. We just took one from 2 to 5 servers last week.

Posted by Karl Austin, 09-07-2010, 08:39 AM
That isn't vertical scaling, that's horizontal scaling - unless the components see those 5 machines as one big system image, which they don't.

Posted by JasonD10, 09-07-2010, 08:40 AM
It's all semantics...

Posted by Karl Austin, 09-07-2010, 08:43 AM
Yes, and you said horizontal was nice, but vertical was nicer (to paraphrase) and AppLogic did vertical - it doesn't, that's not semantics that's a matter of functionality. AppLogic like most other platforms is horizontally scaling.

Posted by JasonD10, 09-07-2010, 08:51 AM
When a single application can scale vertically with no human interaction, that to me is vertical scaling. You're talking semantics because you're basically saying that since it "adds more vm's" it's horizontal. But when the application does that by itself, automatically, without human interaction, then that is vertical scaling. It's all about the application and human interaction. Anything beyond is semantics. You could go swimming in a lake one day and then the next it's larger and more water was added. But it was added at another time so you're going to say oh the lake grew horizontally because the water molecules didn't grow, more was added and sure they work in perfect unison together and it doesn't effect the application (the lake) or anything using it.. I just know how it happened so therefore it's not right. It's a silly overly technical argument. It's all about the interaction. If you can provision a platform to a customer that can go from a single server to many, automatically.. that is vertical scaling.

Posted by Karl Austin, 09-07-2010, 03:30 PM
The lake analogy is flawed, because it is still a single "system" just larger, what you're describing is adding more lakes. Regardless of the application starting up more VMs, it is still at the root horizontal scaling as it is not a single system image, the application sees lots of smaller systems doing the jobs. The fact that it's automatic is a red herring, it doesn't change if it's horizontally scaled or vertically scaled. Vertical scaling by definition is adding more resources to a single system image, horizontal is adding more systems to divide up the work load between.

Posted by Harzem, 09-07-2010, 03:39 PM
Ditto. As far as I know, AppLogic is horizontal scaling. Vertical scaling is the dream of Cloud developers, and hasn't been really achieved yet.

Posted by Yujin, 09-07-2010, 03:41 PM
very informative...pop corn mode

Posted by JasonD10, 09-07-2010, 03:58 PM
Again, I'll stand by my original statement: IMHO, the truest of true Cloud implementations will scale an application vertically beyond a single physical server, with redundancy, high availability, multi-redundant/ha shared storage, multi-redundant/ha networks (at ALL layers, including the switching), multi-redundant/ha operating layer/engine, be entirely provisioned, controlled, and managed from a web interface, a multi-tenant environment, and advanced QoS controls (to limit CPU/RAM/HDD/Network resources). As Harzem said, the "vertical" scaling you're talking about, which is done at an engineering level higher than the application, is currently a dream and the technology does not exist unless an application is completely built for it (ie: Grid computing). But plug-and-play applications that we have available in today's Cloud computing it just doesn't exist anywhere, so that's why it's a silly argument and I'm trying to avoid it. If the application scales vertically beyond a physical server that is the best that technology has to offer today. I too await the day a single running process can be run simultaneously on multiple physical servers in different physical locations but until that day comes, you have to go one layer down and do it at the application itself. The end result to an end-user is nearly identical when properly implemented.

Posted by Karl Austin, 09-07-2010, 04:05 PM
We're going to have to agree to disagree I think. I'm just going to leave it by saying if it's not a single OS image that your application is running in on those multiple servers, then it is not vertical scaling, no matter how you dress it up, it is horizontal scaling. The HA, automation, web interface etc. are all red-herrings when it comes to the definitions of horizontal or vertical scaling. To call AppLogic vertical scaling is just going to confuse people even more then they already are with the buzzwords such as cloud etc. going round at the moment. To abuse well defined terms just makes it worse.

Posted by arisythila, 09-07-2010, 04:14 PM
I think hes saying vertical because Applogic and scale more machines (make the original application bigger) on the fly depending on load levels. Not many types of clouds can scale on demand with no human intervention.

Posted by jsweb, 09-07-2010, 05:50 PM
This is one of the best presentations I've seen which covers what CLOUD really is -> where it is going It adds some great humour and although it is 45mins (yes grab yourself a coffee before you watch it) you will not be disappointed. Fantastic! * Title: "Why Cloud vendors lie and how they steal your money" * URL: Bits or pieces?: Why cloud vendors lie ... I hope you like it too...

Posted by jsweb, 09-07-2010, 06:11 PM
Ah it seems I need to do 5 posts before I can be let loose Why cloud vendors lie => http://blog.gardeviance.org/2009/10/...ndors-lie.html

Posted by JasonD10, 09-07-2010, 06:18 PM
Since you're so stuck on semantics let's try approaching this another way. As a provider of Cloud how many consumers have come to you after implementing an application that runs on a typical LAMP stack, and has the ability to have it grow from 1 to 6 servers automatically when they get /.'d, dugg, etc, and complain because it did it, and did it perfectly? If the customer has one OS environment to manage, what is the difference if that one application has self-managed, encapsulated "slave's" assist it with basic processing tasks? To a consumer, they don't care. If you can build an application that scales vertically, requiring no additional management or otherwise "intrusion" to a way a consumer handles their business does it really matter? That's why I try to avoid these conversations getting to these extremes as they are semantic and they are engineering discussions that have absolutely no effect on the delivered solution to a consumer or the marketing of it. Most people don't want to be overloaded with such technical nonsense, nor does it matter to the delivery of their product, service, or solution. How many consumers go into a restaurant and ask for a list of every single ingredient, where they bought them from, when they were bought, what seasonings were used, how much butter, the temperatures and times each ingredient is added to make the dish, the refrigeration, ovens, utensils, and various other things used to make that dish, the level of skill of each cook, waiter, management, and everyone else who works at the restaurant, how they wash the dishes and clean the floors, and everything else (the list is a mile long) that makes up their dinner experience? As having family that owns a restaurant I can tell you it's *never* happened. Occasionally someone will ask about ingredients for food allergies or various other medical conditions, but no one has gone into the extremes to caring about every single detail about it. What they care about is the end result aka the delivered product, and the manner in which it was delivered, and the convenience and value it provides.

Posted by codu, 09-07-2010, 08:08 PM
Yeah, I was about to say that. It's really irrelevant on whether it is defined as specifically vertical or horizontal. As long as the outcome is that a user can have the seamless scalability they are looking for, the specific technology behind it doesn't matter, because the output would be pretty much the same. Although, I still can't see how much cloud technology is any different from clustered load-balanced servers or a standard CDN in certain respects. Which isn't really new or revolutionary technology, as most people have unknowingly used it for years.

Posted by JasonD10, 09-07-2010, 08:18 PM
Cloud's a shift. There's less reliance on individual software, management, on-site engineers, complexity in redundancy and high availability, scalability, etc. For very small companies and very small installs the Cloud benefits probably aren't there unless you're using shared services. But even if you have a few servers worth of resources (or need the reliability of a few servers) it makes a lot of sense. We're in the process of taking a traditional clustered and load balanced network of 28 servers and going to 12 new servers right now. A lot of the management is also shifted to software instead of any hardware concerns so the local engineering needs are being greatly reduced as an added benefit. Hardware is commoditized in a Cloud mainly due to virtualization technology so traditional clusters and load balancers you're still segmenting environments, relying on certain hardware for certain things, having much more hardware specific and more troublesome software environments (lack of scalability in storage, snapshots, rollbacks, cloning, geo-redundancy, etc). The list goes on and on.

Posted by codu, 09-07-2010, 08:29 PM
So what your saying is it's like a cost effective (edit: and easier) way to 'emulate' or more specifically virtualize what would otherwise be an expensive set of Servers + hardware load balancers + SANs etetc. And of course, being virtual, you can more easily scale resources amongst servers. But as someone mentioned before, how is that any different from a VPS on a cluster? In the sense that when one servers resources are utilized, it just moves onto another. It sort of makes sense. I guess I just get confused when people say "It's stored on the cloud!" or "You can download it from the cloud!" to replace the term "It's online". To the end user it is the same experience.

Posted by JasonD10, 09-07-2010, 09:06 PM
As an avid user of virtualization over the past 4 years (XenSource/XenServer mainly) I can say virtualization is just one small building block of Cloud. Even putting a VPS on a cluster assuming it's redundant and highly available, still is not Cloud. A VPS, aka VM is just a single encapsulated OS environment running on a server, even if it's portable horizontally across multiple servers it's still one environment. It's just a "virtual server". Yes you don't need physical access to the server to access the "console" of it, you can reboot it remotely, you can even scale it vertically to the limit of 1 full physical server. You can attach additional storage devices or modify/expand them, you can do QoS, and many other features. But, since it's just a single VM it will have many limitations to the application it is delivering. As I explained above in Cloud an application is scalable, manageable to much greater degrees than just a VPS/VM, and is more simplified. You cannot all of a sudden decide to take your LAMP application built solely on virtualization to scale from 1 to 6 servers, seamlessly, without additional management either (more OS's to manage). There are additional layers of software architecture to achieve this that virtualization alone does not provide. We started by building our own "Cloud" infrastructure with XenServer and really all I can say is, go read about AppLogic if you want to know what Cloud can and should really do. There are many other features that can make up the Cloud or VPS services that each define their own realm, and many of those can be shared among the two. But the key components are what was mentioned above and before. As a long time administrator and enthusiast of all sorts of technology over the past 13 years I can say virtualization was one of the greatest technologies I've seen happen in my time, and Cloud you could kind of say is "virtualization 2.0" as it takes the key benefits and layers of virtualization, and takes it a step further to break that down past just a single OS and provides advanced virtualization above and beyond the OS and a full featured software platform to deliver those applications to the next level. To sum it up (and I just made this whole post up), I see cloud to virtualization as a smart phone is to a regular cell phone. It's an extremely complimentary set of tools and advanced technologies packaged on the same foundations to deliver up and above what the foundation alone cannot provide.

Posted by NexDog, 09-07-2010, 09:57 PM
I'd rather here about the actual hardware architecture than big words that are "hot" right now and actually mean different things to different people (aka semantics). So anyone want to post about how a cloud actually works? There are many ways to setup a cloud so lets hear them. How about this. A centralized SAN that stores all the data and then server nodes that are plugged in that provide all the CPU and Memory requirements. Need more CPU/Mem, just add more server nodes. A node fails, the resource usage is spread out over other nodes. Scalable horizontally and vertically. I don't know a whole lot about SANs but I believe one would be split up into many arrays with their power source with data split up over teh arrays so if one had a power failure the data could still be served (like an HD failure in RAID). So completely redundant and scalable - and fast (with SCSIs and SSDs), little I/O overhead. Does anyone do clouds like this? What other ways?

Posted by arisythila, 09-07-2010, 10:25 PM
huh? I know my company prices competitively against VPS providers, and gives high availability. I wouldn't consider that lying or stealing. Or do you have a different agenda? Edit: @Cloud, Very nicely summed up man... very nice Last edited by arisythila; 09-07-2010 at 10:40 PM.

Posted by Cristi4n, 09-08-2010, 04:53 AM
@CloudWeb, indeed you are right. Regardless of what's behind, the end result can be a form of cloud that can scale the way you want it to. Maybe an example would be nice, like Heroku (www.heroku.com). They do use multiple VMs but the end user doesn't care and his app can scale pretty good,at of course, high prices, since it's hosted on EC2. But then, we have RackspaceCloud, so why would I bother to set up a complex "cloud" when I can just add a simple Xen into the picture and compare myself (technically) with them ? I don't see nothing more than a bunch of Xen servers with local storage there and almost all clients as it can be seen do not care as long as you add the word "cloud" into the picture and their app doesn't really need more than a VPS. @NexDog, Adrian C will have a very good answer to all your questions regarding this, he can explain everything and the ways you can set up a cloud SANs too, it's not a big deal after all. I don't think that discussing architectures designs here will lead to anything since as far as I have seen people tend to avoid telling other what they did for various reasons.

Posted by Karl Austin, 09-08-2010, 04:53 AM
AppLogic may scale your application, but unless I've missed some recent news it's only scaling it within the designed limits of the application. From memory if you've not already added those extra web/db appliances in there with the SLA appliance controlling them, then you're going to need to add them in and restart the whole application (a major limitation and why we were never truly happy with it) if you find you need to add yet more web/db/whatever appliances or even scale those individual appliances vertically. Granted, there is nothing out of the box out there right now that does the same - but to be honest it's not that hard to script the provisioning of more VM templates for an application and doing so without any limitation of what has been designed in to the application from the off. For anyone that isn't familiar with AppLogic, it allows you to place an SLA appliance inside an application that will power on/off VMs in a group based on specific conditions i.e. more than 80% used, power on another Web Appliance or DB appliance, but it can only power on up to the number already dropped in to the application, else it needs a restart of the whole application, every VM in it.

Posted by Karl Austin, 09-08-2010, 04:57 AM
I should add that I've nothing against AppLogic or providers using it, we use it still for a number of customers. Quite a few of the newer appliances were actually ones that we'd asked for from the developers.

Posted by dazmanultra, 09-08-2010, 05:57 AM
Whilst some might consider discussion of terms mere "semantics", it is important that people are clear about the way applications can scale, and how they do so; to do otherwise is to continue down the road of misinformation and hype that has bogged down the cloud hosting industry. Too many people have been told that by getting a single VPS on a "cloud" platform that their application is now all of a sudden amazingly scalable...

Posted by Karl Austin, 09-08-2010, 06:21 AM
Yup, which is exactly my point. There's already been so much FUD and buzzword bingo going on, re-defining existing well understood terms serves to make things even more confusing and overall does the whole industry damage.

Posted by Cristi4n, 09-08-2010, 07:03 AM
hmm, probably many have seen this but anyway: http://www.youtube.com/watch?v=UOEFXaWHppE&feature=fvw

Posted by JasonD10, 09-08-2010, 09:06 AM
LOL. That was some funny stuff. He is right it's still made up of the same components, being architecture. I just did a big blog post on that last week actually but cannot post the link per forum rules. But beyond the architecture is that full suite of advanced software and virtualization. To say it again.. To sum it up (and I just made this whole post up), I see cloud to virtualization as a smart phone is to a regular cell phone. It's an extremely complimentary set of tools and advanced technologies packaged on the same foundations to deliver up and above what the foundation alone cannot provide. So in the same respect, he would have been against the smartphone "movement" if you will.. slamming treo's, blackberry's, iphone's, android's, etc. Is it still a phone? Well yeah.. but of the people here (techie's!) how many are NOT using them? The tools, convenience, and various other features they provide are real value to your every day life, ease of operating your business, and a whole lot more. Ignoring the innovative spirit and advancements of the technology will leave you behind. Now I know many will not agree with this statement I'm about to make but that is exactly why I made the choice, push it, and believe Cloud is the way to go. It is innovation, simplicity, efficient, and everything else you want to see with progress in technology and so much of it that it is changing the way you build your infrastructure and deploy your applications.

Posted by TheMostCreative, 09-10-2010, 09:57 AM
Woha i feel clueless after reading this

Posted by sanseo, 09-15-2010, 05:55 AM
I have read all comment and i am confuse at one thing. is cloud hosting improve website uptime as compare typical hosting, or can we say my website have 100% uptime?

Posted by Cristi4n, 09-15-2010, 07:06 AM
you can never say that your website has 100% uptime just because you are on some cloud solution, the same problems like power, network uptime and others are still there. Some cloud solutions may be better implemented than others to reduce possible point of failures but it doesn't make that much of a difference. I have a VPS "in the cloud" with RackspaceCLoud (it's just a simple Xen on local storage) that has been up since the day I bought it, about 1 year and 6 months, but that has nothing to do with the fact that they say it's a cloud solution. People will soon start to get disappointed in "cloud" solutions because they expect too much from it. Last edited by Cristi4n; 09-15-2010 at 07:10 AM.



Was this answer helpful?

Add to Favourites Add to Favourites

Print this Article Print this Article

Also Read
Is Pingdom down? (Views: 637)


Language:

Client Login

Email

Password

Remember Me

Search