Closed (outdated)
Project:
Octopus
Version:
6.x-2.x-dev
Component:
Code
Priority:
Normal
Category:
Feature request
Assigned:
Unassigned
Reporter:
Created:
12 Feb 2012 at 09:16 UTC
Updated:
22 Dec 2021 at 16:39 UTC
Jump to comment: Most recent
Comments
Comment #1
omega8cc commentedAnother vote: http://groups.drupal.org/node/218284#comment-717509
:)
Comment #2
snlnz commentedSee, it is a good idea! :D
hehehe, we're currently running an extra server ($$$) because of this situation. Would be nice to consolidate these sites onto BOA :)
Comment #3
omega8cc commentedThis is clearly postponed, so far.
Comment #4
snlnz commentedMore interest http://groups.drupal.org/node/268678
Comment #5
Anonymous (not verified) commentedYes, I am interested in this, and already doing it, of course.
I have a couple of questions and remarks:
1. I just tried out the deault nginx_static_include.conf with a non drupal site, and couldn't restart nginx due to "invalid number of arguments for location on line 26" I played around with it, but am new to nginx and couldn't get it working. I changed that domains' vhost file to use nginx_simple_include.conf and was able to install an openx latest instance which I am still testing.
I see that the deault nginx_static_include.conf and nginx_simple_include.conf are using localhost at port 9000, while all the other default nginx_xxx_include.conf files are listening on port 9090. Is this done on purpose, or do you expect us to change the port 9000 in those two files to 9090 to use them? I also see that there is a service called php53-fpm which I believe is not running on my server; and a service called php5-fpm which is running, and which takes values from /opt/local/etc/php53.ini and /opt/local/etc/php53-fpm.conf
I believe I am only using PHP=Modern, thus 5.3 for everything on this BOA. So, I assume that I am not using /opt/etc/php-fpm.conf or /opt/etc/php.ini; however, when I look at /etc/php5/fpm/php-fpm.conf, I see that its pid = /var/run/php5-fpm.pid (which is the fpm service that I occasionally restart on this server, SO, I am confused as to whether you are setting up BOA / Octpous to have all non-drupal sites using php 5.2 and listening on port 9000 and keeping drupal sites on port 9090 using php5.3?
On my BOA 2.0.4 there is no service that I can call from the command line called php-fpm, only php53-fpm (which gives no response when I querry it from the command line) and php5-fpm which behaves as expected, I assume running php5.3 ? SO the names of these two confuse me. I also see that in the php53-fpm.conf file it lists pid = /var/run/php53-fpm.pid and an entry syslog.ident = php-fpm.
So, are both php53-fpm and php-fpm both being used and both refer to the service php5-fpm (NOT php53-fpm) that I can reload from the command line?
Thanks for any clarification.
Ed
Comment #6
realityloop commented@EdNet
Updated nginx_static_include.conf & nginx_wp_include.conf available here:
https://drupal.org/node/1416798#comment-7752611
Comment #6.0
realityloop commentednon drupal sites pre upgrade
Comment #7
macmladen commentedI add my vote also to supporting non-Drupal sites under BOA, both for some special reasons (like transitioning phase to Drupal from {other, static}) and for being more like general server and consistent handling of everything under BOA (not requiring under-the-hood changes that may be broken with upgrade).
So I pledge for:
Static/PHP siteunder platforms that will not be a platform actually, just handling nginx and other system thingsnginx_static_include.conf/data/disk/o1/non-platform(oh, my!)
Comment #8
omega8cc commentedThis would go far, *far* beyond the BOA project scope. You can very easily manage any static/PHP/WP/whatever sites manually, using Chive and other configs as examples. Don't miss the fact that Aegir is designed to manage *Drupal* sites, even if there are plans to support "alien" apps, like WordPress or Textpattern. And don't miss the fact that BOA is a stack to easily install and upgrade high performance, but Aegir centric hosting system. We are not going to turn it into any kind of generic, Virtualmin-like stack.
Comment #9
macmladen commentedYes, I know, understand and respect... however, some things sound nice.
It is true we all need something else on our systems, from static site management (for instance, prototypes, launch page) to some tools that make life easier (ActiveCollab, Redmine).
And it is very true that BOA should be minimal, compact and narrowly focused and even I myself would strongly oppose to adding everything in and a kitchen sink.
I did manage (somehow) easily (after few days google-ing) to add static site (struggling to do so on Ruby for Redmine) but I am bit like "afraid" if some upgrade will break things.
And I would like to have my "alien" platfoms listed and somewhat managed in "sites" list.
Actually, I was even wondering on some add on module that would handle static.
Comment #10
snlnz commentedI agree with #9 and think minimal is great! Though, sometimes we need to add some site static app or 3rd party app that integrates with Drupal. One of our client sites runs phpBB3 forum in conjunction with Drupal which I have struggeld to get every aspect of the site to run on BOA though haven't tried for over a year now.
All in all, this just makes sense for many use cases.
While we don't want some virtualmin-like stack, we'd like something light weight, easy to manage and operates in harmony with the rest of BOA for managing the vhost files, backups and perhaps even client access to the sites code which I'm sure is not straight forward with the current BOA config.
Comment #11
omega8cc commentedYou need to understand that it is not possible to create any kind of one-size-fits-all configuration for any third party app you may want to install, hence you will probably need to create custom Nginx include file anyway, as used by Chive, so looking at Chive vhost and its Nginx config include file should provide good enough starting point. You are asking for docs/tutorial or some extra magic while you have ready to use example (Chive) in front of you.
Comment #12
macmladen commented@Omega: true, there is no real one-size-fits-all recipe but I would like to make a case like this:
In order to stay Aegir style, I would propose to make a special platform that is called Non-Aegir and that would support any PHP-HTML based site.
Such a "platform" would support and do everything like regular Aegir custom built platform except one tiny thing: it would not make validate procedure and would also not support other Drupal specific tasks like Clone, Flush all caches, Reset password, Migrate, Rebuild registry, Run cron, Run cron and Verify (as it is not Drupal) but would support Backup, Delete backups, Clone, Delete, Disable and Restore as those can be implemented blindly, just plain archive and extract.
It even seems to me like a not too complicated task, just throwing some exceptions (conditions) on present code would do the trick (maybe, just an observer opinion for consideration, would not like to offend you!)
That way, users would gain that option to run simple things and yet also be able to have those sites on list, creating, deleting them, having users, sftp, ssh access and otherwise securely integrated into Aegir as it will share all benefits of regular Drupal site.
There are only two profiles actually needed, both the same as you already provided in #1416798: nginx does not open index.html on custom vhost the only difference being on whether nginx should use any index in any subfolder (for plain PHP/HTML site) or is some CMS that routes everything to /index.php.
That would make me, and I sincerely hope all the other users of Aegir/BOA.
Comment #13
omega8cc commentedExcept it is not possible in Aegir.
Comment #14
omega8cc commentedPlus, you should probably follow up on some related existing requests in the Aegir queue since it is not really BOA job or issue etc.
Comment #15
marcnz commentedI am newbie to BOA. I have installed in successfully on a VPS with plenty of RAM and CPU power. However, although it looks very handy for Drupal management, it is definitely not "hosting" friendly.
For example these are my needs that I can't find a solution for:
1. How can I set up mail server and mailboxes for the domains created?
2. Even installing with barracuda _EXTRA_LIST Webmin, nothing in Webmin actually works. Getting the Nginx module for webmin can't find the Nginx location by default (and I have no clue how to change it either for Webmin).
3. I added the Bind in the _EXTRA_LIST, but how can I access it and how does it works? I am OK using this with Webmin or Virtualmin, but BOA seems to be a totally different matter.
So for me, BOA can be the Ferrari of the Drupal environment, but definitely not a user friendly "Hosting" platform.
How does omega8cc manages to do real hosting with it?
I think I will revert it back to Virtualmin in which I can easily set up Varnish and Drush as well. MySecureShell is not BOA exclusive as I have set it up on Virtualmin and it is working great limiting users sftp or scp to their own directory for security.
Don't get me wrong, I have been really impressed with the BOA/Aegir platform. I am definitely missing something and the problem is that I can't find any pertinent documentation to help with these issues. Maybe someone can direct me to the right place?
Regarding setting up BOA on a fresh VPS installed, here is my 2 cent tip. I used a Debian 7 VPS:
When freshly installed, there is no way to have BOA installing correctly as there is always a invalid DNS issue!
To fix this, easier is to get a freeDNS account where you can add the hosts entry including the *.mydomain.com. I used the FreeDNS from Namecheap.com. This isn't mentioned anywhere in the google pages I found.
Comment #16
Anonymous (not verified) commentedHi marcnz,
BOA works great if you use it as suggested - just BOA, alone, on a vps or dedicated server. Just have a second smaller vps for your mailserver, ad-server, wordpress sites, etc. That's how most of us do it.
Comment #17
macmladen commentedHi marcnz,
I wrote quite a long answer but it was lost due to form time out so I'll try to remember and write again.
This answer is not only specifically for marcnz but for all others that may stumble somehow here. If there is a better place for this information and if it can be expanded to be better, feel free to suggest.
Hosting friendly
There are some misconceptions on what hosting friendly is. It is something very different depending on your own skill set and tool set and the way you are used to handle things.
And just for the sake of correctness, I'd refrain from giving hard critics but rather question myself if I am getting it right.
For me, personally, hosting friendly means that provider is letting me do the work in command line (a.k.a shell) and that I am not limited to do so with full power needed. On any root system (where you have root access) I feel completely hosting friendly having power to do anything.
At the same time, BOA is handling many things and checking (self healing) with cron every five minutes if everything is as it should be, in predictable and expected state so it can safely maintain itself.
BOA system is very complex and it's quest for consistency may bug someone but it is there for a reason.
To borrow from eastern philosophy, you are supposed to go with the flow, not against so everyone should keep that in mind when coping with BOA. With is the right way (tao) and you can only do that by knowing, which brings us to...
Knowing Aegir and BOA
And then, BOA as both Barracuda and Octopus as projects and Aegir on its own are free non commercial products and are aimed at professionals who understand what it is all about. There is a lot of documentation but be aware: power comes with complexity and really, there is no easy way to present what BOA is and how it may benefit you.
The first place to read is here: http://community.aegirproject.org/handbook
This is where you will understand how Aegir operates, what are presumptions and basic paradigm.
The second place to read is here: https://omega8.cc/library/aegir-basics-index
This series of articles will help you understand both Aegir and BOA and maybe will get you faster into the thing than Aegir Handbook. However, be prepared to read same articles over and over again — you will miss something as it is very densely information packed and one needs to go there from time to time. Year and over I still have to read and when I do, I wonder how did I miss some things?!
The third place to read is here: https://github.com/omega8cc/boa
This is hardest as it is most packed of all, aimed at professionals at very high level with brief information that means a lot to an experienced system administrator.
BOA maintainers (specifically, for Barracuda and Octopus) are Omega8.cc and they base their business on those scripts and they maintain it on github where anyone can grab the script and build their own server which is (so to say) core of their business. So you must understand why they are not answering and why answers are sparse - they have to make a living first and then to contribute back.
So I'll try to contribute back by trying to explain to you as well as to the others some misconceptions that I learned with my one year experience with BOA.
The essence
BOA is the script that builds the server for you from the scratch.
That server is highly optimized to drive you Drupal sites "the Aegir Way" meaning it uses platforms, migrations and multisite paradigms you may read about on http://www.aegirproject.org/
And while Aegir works for you with sites, Barracuda and Octopus scripts are working for you on building and maintaining server and Aegir.
In their essence, Barracuda and Octopus scripts does not influence Aegir operation. They do tweak some minor things for better performance and also do some very special things about nginx configuration together with other server services so you get highly tuned and performant server that runs Aegir
Summary: Most of your questions fall into Aegir operations not Barracuda or Octopus scripts
Mail server
Just like you, I wanted complete solution in one box that would include mail server but I wondered about other things like Ruby that would enable me to run Redmine and maybe some other niceties like
nodejs.And all of that is not good idea although I did argue in some other threads. So I read a lot and consulted with some sysadmin veterans and finally came to the same conclusion answered by Omega8cc guys and others: do not do that.
Seriously.
It is a bad idea for a few reasons:
That is because any sort of attack on your web server or mail server would bring down other one as well and that happens a lot.
As NetFast said, you should better bring up another VPS that would handle mail and sizing should be according to your needs. That means it is completely separated with another IP and own space where it runs.
I was wondering to use Barracuda script for building server for that too but because of some specifics of BOA server configuration it may not be wise idea as it would bring different feature set and tune ups than are needed for mail server.
BOA as Ferrari
BOA is fast and finely tuned and optimized, but I suppose creators would rather stack as Volvo as stability and security are more important for your business and speed is second to that.
That design is imposing many limitations you can or cannot live with. Those that can, go with BOA, those that can't may choose their own way.
Either way, the fact is that BOA is excellent with Drupal sites and it is more of a question if one can accept Aegir way of thinking or not. If Aegir is a way for you, then BOA gives you a good VPS/Dedicated build on steroids for free.
I strongly suggest testing before going with it as nothing can compare to real life testing. A month or two on $10 SSD should be enough to test drive if it is scenario for you.
Questions answered
Comment #18
ar-jan commentedGreat answer, MacMladen!
Re the DNS issue, I've noticed on DigitalOcean that you must remove the 127.0.1.1 entry in /etc/hosts or you will get an invalid DNS error.
Edit: filed an issue here.
Comment #19
macmladen commentedThanks!
I am on Digital Ocean and
/etc/hostscan contain it without problem. Here is my untouched fileComment #20
ar-jan commentedNo, my /etc/hosts contained both a 127.0.0.1 and a 127.0.1.1, and I had to remove the 127.0.1.1 entry.
Maybe it's IPv6 specific?
Comment #21
macmladen commentedThis is not related to this thread, but it doesn't really mean anything in particular (it's just another IP in the 127.0.0.0/8 block which is bound to loopback interface).
The reason it's used as the IP for your hostname is explained in Section 5.1.1 of the Debian Reference Manual https://www.debian.org/doc/manuals/debian-reference/ch05.en.html#_the_ho...
Some software (e.g., GNOME) expects the system hostname to be resolvable to an IP address with a canonical fully qualified domain name. This is really improper because system hostnames and domain names are two very different things; but there you have it. In order to support that software, it is necessary to ensure that the system hostname can be resolved. Most often this is done by putting a line in /etc/hosts containing some IP address and the system hostname. If your system has a permanent IP address then use that; otherwise use the address 127.0.1.1.
Comment #22
avpadernoI am closing this issue, since the module doesn't have releases for supported Drupal versions.