Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
First of all, I'll explain this question's scenario:
We are starting the development of a project in PHP+MySQL that will become a software-as-a-service.
After starting and planning how we would deploy the project, the first thing that came into our mind was: the project will be hosted on our Debian stable server and will contain all of our clients databases and each client folders for the project (and of course, a separate server for backups) and all projects running "under" the same apache and mysql server. This was our preferred approach.
Another friend suggested us -as a second approach for the deployment- that instead of having all projects and all databases running under the same physical server and under the same apache and mysql, that we could build our own "cloud" using something like openQRM and have each one of the projects deployed in a separate "virtualized" server (one virtual server per client) and this way the resources are better balanced and is easier to recover a virtual server if crashed as the backups are made of the virtual servers images. He said that this is a very new concept that is taking the internet services market more and more.
So, we started to research about the "cloud computing" concept in order to have a better idea of this second suggestion our friend gave to us.
In terms of performance, it seems to me that the "cloud" approach could consume a lot of more resources than the first approach ?? and is a lot harder to maintain and extend ??
I would really appreciate your opinions and recomendations on which option is really worth for what we are going to offer to our clients.
One thing missing from your discussion is your potential clients expectations. Will they be OK with a shared box and at least the theoretical potential of someone else seeing their data or are they going to be expecting a higher level of security and will insist on their own box? In the industry I work in, the idea of sharing a server, either physical or virtual, usually a deal-breaker.
We are planning to have each client's project in a separate virtual host and each one of them will have it's own database username/password and can access only its database (not others databases).
Our clients won't have any access via FTP/SSH/MYSQL/etc, we will provide only an access to use our web software and a sql dump in case they request a database backup.
We are trying to decide between a "multi-hosting" vs "cloud" in terms of performance, extensibility, ease of maintenance, etc.
For instance, between these two configurations which one consume more hardware resources?
1. 10 virtual hosts (in the same physical server) each one of them with a separate php+mysql project?
Or
2. 10 virtual servers each one of them hosting a client's project?
I'm still researching and learning bit by bit this "cloud computing" concept and find out if it's worth it to give it a try for what we are offering to our clients.
Maybe I'm just being thick, but I don't see a ton of distinction between "cloud" (which I view as just a buzzword) and "multi-hosting", as long as you're the one buying the hardware. Really you seem to be talking about installing enough hardware to run the virtual machines and having an appropriate backup strategy, both in terms of hardware and software, so that if something goes wrong, you can handle the situation.
Now if your renting cloud space from one of the big providers, the hardware end of the deal becomes their problem and you would just stand up virtual machines as your business needs. That might be easier in terms of maintenance in that if a system fails, the fallover would be their problem, and they likely have the resources to deal with it quickly. Likewise, backup of the VMs would be their problem. To figure out if this is a good deal or not, you'll need to look not only at the cost of the hardware, but also the costs of the people needed to run the hardware and the overhead like rent/electricity.
So unless I'm really misunderstanding you, it looks to me like you need to figure out if the costs associated with physically owning the hardware are better/worse that the costs of renting hardware from a cloud provider. I think the rest of the equation is pretty much a wash between the two options.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.