Skip to content

Document Management/Wiki

Featured Replies

I've got a project todo at work to help me learn Linux, I've been asked to build a Linux based Wiki & Document Management system that will be used by our team.

Current Requirements

* Free

* Fault Tolerant - No San or shared storage available though

* Some sort of backup method required

Whats available to me

x2 HP DL360 G4's - x2 1.4ghz / 1.5gb ram / x2 72gb disks (mirrored) / x2 internal nics

I'm wanting to use Centos as its the closest to RedHat that I can get, I've been advised to look at Alfresco which I'm going to start looking at tonight.

Does anyone have any other advice/pointers?

Matthew

The main problem I have with CentOS is that it gets very old, very fast. Personally I'd only use it if you were using commercial software which is only certified/supported on RHEL (as it's basically a drop-in replacement). Otherwise if you're wanting to use open-source stuff, I'd stick to Debian or Ubuntu which are usually updated more often, Ubuntu every 6 months with a long-term release every couple of years. This means as the open-source world moves on (which it does) it's easier to install various dependencies that you might need.

Doesn't sound like a big deal, but if you upgraded your wiki software later and found you needed an upgrade to PHP, it gets a bit messy (hand compiled PHP installation, kept separate from your system one, then hand compiled webserver with mod_php or similar, etc) especially for someone who's only "learning" Linux.

As for the backup, something like backupninja would probably do the job fine. Database dump and file backup overnight, and it'd be job done for a wiki. Fault tolerance is a bit more tricky, if you need 100% uptime then I'd look into drbd (like RAID but over a network) to block sync the second disk on each server in a networked RAID1 setup, keep the OS for each on the primary disk (which also allows you to use one for development of the system but using up-to-date live data). And then something like heartbeat or ucarp so that the second server can detect when the main one dies, and then "steal" its IP address in order to start serving up pages.

  • Author

The main problem I have with CentOS is that it gets very old, very fast. Personally I'd only use it if you were using commercial software which is only certified/supported on RHEL (as it's basically a drop-in replacement). Otherwise if you're wanting to use open-source stuff, I'd stick to Debian or Ubuntu which are usually updated more often, Ubuntu every 6 months with a long-term release every couple of years. This means as the open-source world moves on (which it does) it's easier to install various dependencies that you might need.

Doesn't sound like a big deal, but if you upgraded your wiki software later and found you needed an upgrade to PHP, it gets a bit messy (hand compiled PHP installation, kept separate from your system one, then hand compiled webserver with mod_php or similar, etc) especially for someone who's only "learning" Linux.

As for the backup, something like backupninja would probably do the job fine. Database dump and file backup overnight, and it'd be job done for a wiki. Fault tolerance is a bit more tricky, if you need 100% uptime then I'd look into drbd (like RAID but over a network) to block sync the second disk on each server in a networked RAID1 setup, keep the OS for each on the primary disk (which also allows you to use one for development of the system but using up-to-date live data). And then something like heartbeat or ucarp so that the second server can detect when the main one dies, and then "steal" its IP address in order to start serving up pages.

Thanks for the reply.

I would like to keep to Centos as it closely matches RedHat which I am learning and supporting, Once the Wiki is up and running there will be no-need to update either the OS or Wiki software as there will only be about 40 people using it, at the moment we just use a Network Drive to sort our documents which works fine but the Wiki is something for me to work on to help improve my skills.

I've looked into DRDB but due to it requiring its own replication lan I can't use it as I don't have enough spare NIC's in the servers I've been given and even if it could be run accross a public LAN I doubt very much that our customer would allow this on their network. (we are based on customer site)

I shall look into the backup software, I assume this can be done to disk as I don't have a tape device.

I am grateful for the opportunity they have given me but it's frustrating not being able to build a proper cluster etc.

Matthew

DRDB doesn't require a full LAN, nor does heartbeat. It can be as simple as a crossover network cable between the second NIC on each server, if they're hosted together in the same room. This would also keep the traffic totally off customer network equipment and not using up any capacity. Alternatively, can their equipment support VLANs? You could give the servers a single trunked (802.1q) connection with multiple VLANs, one public for people to access the server and one private for replication traffic. That would still use their layer 2 switching capacity though even if nothing is exposed from the replication VLAN to anywhere else.

Backupninja can back up to disk, yeah. I currently use it to back up my remote VPS to a machine in my house every night (it only copies changes so the backups run pretty quickly now after the initial one, and keeps a 30 day window of backups). So it does the following:

a) Dumps all my SQL databases into mysqldump files in whatever directory it uses (/var/backups/sql I think)

B) Connects to home, and makes a copy of /var/backups/sql, /var/www, /home and /etc on the hard disk on my little home server, with only changed files

c) Clears out any files which haven't changed in 30 days

There are more "thorough" backup solutions out there like Bacula, AMANDA/ZMANDA, etc. But they're very "enterprisey" and complicated for what they do, and probably overkill for a fairly small project like this one. Backupninja took me ~10 minutes to get working and does the job for me fine.

  • Author

DRDB doesn't require a full LAN, nor does heartbeat. It can be as simple as a crossover network cable between the second NIC on each server, if they're hosted together in the same room. This would also keep the traffic totally off customer network equipment and not using up any capacity. Alternatively, can their equipment support VLANs? You could give the servers a single trunked (802.1q) connection with multiple VLANs, one public for people to access the server and one private for replication traffic. That would still use their layer 2 switching capacity though even if nothing is exposed from the replication VLAN to anywhere else.

Backupninja can back up to disk, yeah. I currently use it to back up my remote VPS to a machine in my house every night (it only copies changes so the backups run pretty quickly now after the initial one, and keeps a 30 day window of backups). So it does the following:

a) Dumps all my SQL databases into mysqldump files in whatever directory it uses (/var/backups/sql I think)

B) Connects to home, and makes a copy of /var/backups/sql, /var/www, /home and /etc on the hard disk on my little home server, with only changed files

c) Clears out any files which haven't changed in 30 days

There are more "thorough" backup solutions out there like Bacula, AMANDA/ZMANDA, etc. But they're very "enterprisey" and complicated for what they do, and probably overkill for a fairly small project like this one. Backupninja took me ~10 minutes to get working and does the job for me fine.

I only have x2 NIC's in the server and x1 is taken up with the Management Nic for ESX so I only have x1 nic available for the Linux Server, I have asked for a couple of Dual Port NIC's to give me a secondary nic in my linux server but I'm not holding my breath.

That backup solution sounds perfect. Will have a look at that.

Thanks

If you want an archive backup method, then have a look at this lot.

Not free, but if you're looking to store business critical or data you have to hold onto in the future it replaces the need for tape and comes with data integrity guarantees..

www.arkivum.com

In terms of centos 6.0 has come out and seems to be reasonably stable, although it's not keeping up with 6.1, 6.2 etc.

I'd say stick with 5.7 or look at trying to get hold of a discounted developer licence for RH.

DRDB works well and as above doesn't require a dedicated LAN.

Edited by cheezemonkhai

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Important Information

Welcome to BRISKODA. Please note the following important links Terms of Use. We have a comprehensive Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

Account

Navigation

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.