BOA Wiki

Events happening in the community are now at Drupal community events on www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

Drupal.org docs

please don't update these docs anymore and move all available documentation to drupal.org: http://drupal.org/node/1741624

The BOA project has moved to Github!

The project with its build, documentation and issues are on github now

https://github.com/omega8cc/boa

Much of the information here is outdated although there are some valuable information but be careful when doing anything under the hood.

On January, 25th 2015. the current BOA is 2.3.8

What is BOA?

BOA is an acronym of the high performance Barracuda Octopus Aegir LEMP stack. Essentially it is a collection of bash scripts created by Omega8.cc which have made available to the drupal community for users to run on your own VPS. Omega8.cc also offers a paid hosting service for a managed solution.

Here are some links that help explain how it all fits together

What is Barracuda?

For a clear description of what Barracuda is and does, please see the project page on d.o. http://drupal.org/project/barracuda

Barracuda is essentially framework that everything sits on. It manages the firewalls, software updates and programs required to manage the server.

You can run a barracuda update and it will ensure all the correct software is installed and up-to-date, without touching the hosted sites or their software.

What is Octopus?

For a clear description of what Octopus is and does, please see the project page on d.o. http://drupal.org/project/octopus

Octopus creates a clear distinction between the server level and the hosting level. All the hosting is done in the octopus layer. While you can do without this layer, it is not recommended.

Further, if you have several different people hosting from the same server, each can have their own octopus login and completely separate set of source code (platforms).

Octopus also has several other efficiencies that save disk space and add special modules.

Getting Started

Start with a completely vanilla Debian or Ubuntu server (or VPS). Do not install anything special - the automated BOA scripts will do this for you.

If you are using AWS for hosting, use the LTS from cloud.ubuntu.org/ami

Login via SSH and run

wget -q -U iCab http://files.aegir.cc/BOA.sh.txt
bash BOA.sh.txt

to get the barracuda and octopus install/update scripts.

Then to install everything in one hit

boa in-stable public server.mydomain.org my@email o1

The o1 is the octopus user name. You can change this to what ever you want.

Importing your existing Sites

See Import your sites to Aegir in 8 easy steps

Cron

"Aegir system manages scheduled cron for all your sites, and runs it by default every hour." Source: http://omega8.cc/running-scheduled-sites-cron-in-aegir-118

Database

Q: Where is phpmyadmin?
A: BOA doesn't use phpmyadmin, it uses Chive (see: http://www.chive-project.com). Refer to your installation email as to where you can find the URL to access chive. If you don't know how to log in, try looking in your settings.php for log in credentials.

Getting help

There are a number of places you can look to find help should you get stuck using BOA.

1. Read the documentation

Check your email after installation, you should have received an email which will explain usage of the system and give you instructions.

Also make sure you read the INSTALL.txt, CHANGELOG.txt and UPGRADE.txt if you are doing an upgrade.

A must read: http://omega8.cc/library/good-to-know.

2. Search the issues queues

Always do this first before lodging a new issue.

3. Community Help

Older posts (reference only, do not post in here)

4. Lodge an Issue

If you need to lodge and issue in the Barracuda or Octopus Issues list be sure to follow the submission guidelines when you post.

5. Paid Support

Billed hourly basic support is available from Omega8.cc. see: http://omega8.cc/faq

6. Presentations on Barracuda, Octopus and AEgir

The following is a list of presentations made relating to the BOA.

*Facce your fears: Drush and Aegir -- by Iztok Smolič -- Added July2011

Troubleshooting / FAQ

IP Blocked

If you've accidentally become locked out of your server due to too many failed log-in attempts, following the steps below to regain access.

  1. Use another IP to connect to the server.
  2. Login to your server.
  3. As privileged user (root) run csf -a BLOCKED_IP

How to disable Cache

See: http://drupal.org/node/1255660

Drush usage

Some expected commands aren't available.

1.) drush gm is an alias for drush generate-makefile, see http://drupalcode.org/project/barracuda.git/commit/356caaa
2.)drush dbup is an alias for drush updatedb
3.) drush mup is an alias for drush upc

adding node.js

Just follow the install instructions at:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager
http://drupalcode.org/project/nodejs.git/blob/refs/heads/7.x-1.x:/README...

lshell

Client ssh accounts make use of lshell. Lshell lets you restrict a user's environment to limited sets of commands, choose to enable/disable any command over SSH.

You can see a list of allowed / forbidden commands here. Or just view /etc/lshell.conf

If you want to allow a command in ssh for octupus' users or change any lshell configuration, you have to edit this file: /var/xdrago/conf/lshell.conf
Because /etc/lshell.conf file it's recreated ever X minutes by a xdrago cron, copying this file /var/xdrago/conf/lshell.conf

If you want unrestricted ssh access you can switch to your system account: su -s /bin/bash - o1

CSF / lfd email alerts

Every sftp / ssh login is registered and mails are send to root. CSF (ConfigServer Security & Firewall) documentation can be found here. To disable mail loggin for an IP address add the ip to:

/etc/csf/csf.ignore

Even when you don't add your own IP to csf.ignore you should add it to csf.allow. You need restart lfd afterwards:

/etc/init.d/lfd restart

You got no Octopus welcome mail?

You feel ashamed of asking omega8cc for sending you the details of your install?

check: /data/disk/o1/log/setupmail.txt

Moving sites between octopus installs

Since BOA 2.0.3 octopus instances are shipped with
http://drupal.org/project/remote_import
http://drupal.org/project/hosting_remote_import

They aren't enabled by default.

Read the Remote.txt notes in the Barracuda code repo for more guidance.

Create limited shell and FTPS access for developers

You can easily grant limited shell and FTPS access for developers, simply by creating "Clients" in the Aegir control panel and define them as 'owners' of one or more sites. Their access will be limited to only sites they can manage, but only if you will send them their access credentials, which are independent of their Aegir control panel credentials and stored in the ~/users/ directory in your main account. You will find their files with passwords for every "Client" with at least one site attached. For example ~/users/o1.username file means that this Client's username for SSH and FTPS access is 'o1.username' while his password is stored in this file. This means that SSH/FTPS access is not granted automatically, but you can decide who should receive it. How to change any extra user's password? Simply delete his ~/users/o1.username file and wait up to 5 minutes - the system will re-create his account with new password. And how to delete the user completely? Simply delete this user "Client" account in the Aegir control panel and allow the system to delete also his SSH/FTPS access in the next 5 minutes.

Check this for the FTP client configuration:

http://omega8.cc/dev/ftp-tls.txt

Change php / mysql / redis config files and preserve them for being overwritten on update

Edit /root/.barracuda.cnf and add one of the following:

_CUSTOM_CONFIG_PHP_5_2=YES
_CUSTOM_CONFIG_PHP_5_3=YES
_CUSTOM_CONFIG_SQL=YES
_CUSTOM_CONFIG_REDIS=YES
_CUSTOM_CONFIG_CSF=YES

Then run (new) standard upgrade:

wget -q -U iCab http://files.aegir.cc/versions/BOA.sh.txt
bash BOA.sh.txt
barracuda up-stable

Restart php-fpm after changing values:

$ bash /var/xdrago/clear.sh

Add any package like Collectd, chive at a later moment

$ vim .barracuda.cnf

PDS --- fast DNS cache server (pdnsd) (default)
BND --- Bind9 DNS Server
SLR --- MultiCore Apache Solr Tomcat
CHV --- Chive DB Manager (default)
BDD --- SQL Buddy DB Manager
CGP --- Collectd Graph Panel
WMN --- Webmin Control Panel
CSF --- csf/lfd Firewall (default)
FTP --- ??? (default)

add the shortcodes from above to like this _XTRAS_LIST='CSF CGP'

Run update:
barracuda up-stable

Open up a port for some application

add a port to TCP_IN / TCP_OUT

$ vim /etc/csf/csf.conf

restart the firewall service

$ service csf restart

prevent overwriting your changes on upgrade, create the control file

add to /root/.barracuda.cnf _CUSTOM_CONFIG_CSF=YES

get or reset SSH password of some client

look or edit: /home/OCTOPUS.ftp/users/OCTOPUS.CLIENT

Site got disabled due to segmentation fault

1.) check in the platform for php files with 8192bytes or 4096 bytes

find ./* -type f -exec ls -la {} \; | grep 4096
find ./* -type f -exec ls -la {} \; | grep 8192

For reference:
https://bugs.php.net/bug.php?id=48034
http://drupal.org/node/1462984#comment-5790468
http://drupal.org/node/1366084#comment-5877974

2.) in 2.0.3 you can disable the segfault error system by renaming or deleting

/var/xdrago/monitor/check/segfault_alert

For more info check: http://drupalcode.org/project/barracuda.git/blob/HEAD:/aegir/tools/syste...

Comments

Reversing SSL configuration from backend

nitin.sareen.mca's picture

Pls guide on how to Reversing SSL configuration from backend. My Aegir frontend is giving 403. The SSL setup seems to be incorrect. I have full access to the backend. Pls help restore.

omega8.cc no longer hosts BOA scripts

ckosloff's picture

root@li318-147:~# wget -U iCab http://files.aegir.cc/versions/BOA.sh.txt -v
--2013-12-25 20:34:08-- http://files.aegir.cc/versions/BOA.sh.txt
Resolving files.aegir.cc (files.aegir.cc)... 134.19.164.55
Connecting to files.aegir.cc (files.aegir.cc)|134.19.164.55|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-12-25 20:34:08 ERROR 404: Not Found.

http://files.aegir.cc/versions/BOA.ssh.txt shows 404 in browser.
Removing the last part http://files.aegir.cc/versions/ will show UNDER CONSTRUCTION.

Apparently omega8 no longer wants to make these files publicly available.

Project moved to github

macmladen's picture

Project and issue queue are on github now as really, it is not strictly a Drupal project.

https://github.com/omega8cc/boa/

All files are there and if someone wishes to contribute, you do that github way, forking and submitting patches.

Also you raise issues there and they are regularly answered. Before any submission, please check issue queue and read documentation, most of the answers are there.

_______________
Use Mac.

Mladen Đurić
Web Development.

Files are still available

Anonymous's picture

Read this, files are still available:
https://drupal.org/node/2143123

Peace,
Michael Clendening

Files are still available

Anonymous's picture

Read this, files are still available:
https://drupal.org/node/2143123

Peace,
Michael Clendening

How to update BOA

kopeboy's picture

How to update BOA on my Omega8.cc instance?!

BOA

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week