Saturday, 31 March 2012

My Projects: Backula backup system

This is third post in the "My Projects" series. This time, like my previous post, it is also dedicated to the World Backup Day. Two posts in a day - why not?

Although the project was about the same, there were few significant differences. 1st – 5 years difference (2009), and 2nd – mainly Linux environment.


It was a middle-size company. In a central office they had all things IT departments must have, including backup system (TSM). But I was hired in a remote division in another country, where was no System Administrator before me. There were many things to do, but today we are talking about backups.

What we had:

Three Linux servers, one external storage, limited budget.

Well, in situation with a single storage I have no possibility to protect data from a failure of that particular storage. But I split the discs in storage in two different arrays, and dedicate one of them for backups only.

This time I wanted something Enterprise-level, reliable and scalable. At that time Bacula fitted all my needs. The only problem was to get used to it. When I have opened User's manual and found out that there are 764 pages.... I was encouraged! Why? My previous job was quite boring so I was "hungry" for challenges like that. In a few days I was ready to propose a solution and install it in production.

Solution:

Quite simple, as reliable things should be
  • Bacula as a backup system
  • Standard schedule:
    • Daily incremental backups
    • Weekly differential backups
    • Monthly full backups
  • Workstation were also added if user desire

 Result:

Backup system is not intended to have configuration changes often. Configured once, it requires just to watch on daily notifications and make some periodical data restore.
After a new server added it was enough to create a single file with a list of directories to exclude from backup (/tmp, /media, /sys, etc. exluded by default).

Have a nice World Backup Day!

My Projects: History: backup scripts

This is second post in the "My Projects" series, and this time it dedicated to the World Backup Day.

Again, I will describe a project which I have quite some time ago, so some details could be missed.

It was 2004 and one of the first things I have decided to improve when come to new company was backups. Well, "improve" is not a correct word here, since there was nothing to improve – I had to create it from zero. It was quite surprising that 6-years old company doesn't have any backup system.

What we had:

No backup system. No money for that.

My experience at that time didn't allow me to propose any free backup solution, in the same time I was fascinated by writing different CMD scripts – I already did most of administrative tasks in windows using command line. So, instead of trying something that is ready, I decide to write my own bunch of scripts for backups.

Solution:


After a few days of work I've got something like following:

  • Nightly script scanned all folders listed in a text file.
  • All files with "Archive" attribute set were archived to a compressed file named like I_YYYYMMDD-HHSS.rar. After that the "Archive" attribute was cleared. This allowed me to have Incremental backups.
  • Once a month a Full backup was made.
  • Full backup older that 3 month was removed with all Incremental backups related.
  • Intelligent restore script allowed me to restore any file or folder from any day from last two month.
  • I was able to run the backup script at any moment, not just at night, and that allowed me to make several different backup copies during the day if needed.
To be honest – there is nothing special in this project. I can create something like that in few hours now. But it was quite interesting experience for a young admin that allows me to understand better how CMD scripts works.

Result:

Scripts-based backup system completely fulfilled our needs at that time. The restoring procedure was used many time during several years without a single failure.

Friday, 30 March 2012

My Projects: My very first commercial project - VoIP

This is the first post in the "My Projects" series, and I decided to start with my very first project completed in a commercial organization.

It was the beginning of 2004 and my first (big enough) idea at the new place was to improve the telephony. Since pretty much time has gone, I cannot remember all details, but the main is the idea.

What we had:

Equipment:
  • 1 main office with Panasonic KX-TD500 with about 8 external lines and about 150 extensions.
  • 2 big branches with some other PBXes
  • about 5 small branches with or without dedicated phone lines.

Situation:
We didn't have any kind of IVR implemented, so any call to the office was served by two operators and forwarded manually. The main problem was that internal company calls was made also via PSTN, and our customers claimed quite often that they can't break through the busy lines.

The second problem was that even two operators at the same time cannot serve all flow of the calls, so some percent of inter-company calls was dropped, and of course there was quite important calls also.

The same problem was experienced by our two branches. Number of the phone pick-ups was about 85% from the calls initiated! 1 of 6 of our users or customers got "busy" during the day!

Along with that, all branches were connected to the main office other by SHDSL lines (double in some cases) and almost wasn't utilized (RDP traffic only).

Budget:
As usual: "Please do cheap, good and reliable".

Solution:

First we started with pretty cheap VoIP gateways from Dynamix. We had very good impression of their gateways with FXS port, and even installed them in 3 or 4 branches. But when we get to the next step of our project (integration with the existing telephone network) we have found out that FXO gateways connected to PBXes generates unacceptable echo. Support from Dynamix couldn't help us with that, so we had to resign from their hardware and started to search for another brand.

Next one was Planet. This time we've got VoIP gateways with FXO and FXS to test simultaneously. And this time tests was successful. We began to install our solution step by step, and in two month we have the following configuration:

Equipment:
  • Main office - Planet VoIP PBX (don't remember the model, but something like IPX-2000) with 2 modules 4 ports each connected to Panasonic TDS-500 to extension ports.
  • Big branches - Planet VoIP h323 gateways with 4 FXO ports connected to PBXes to extension ports
  • Small branches - Planet VoIP h323 gateways with 2 FXS with phones connected directly to them.

Gentoo  linux with GnuGK was used as a H323 gatekeeper (SIP wasn't really popular then).

The IVR has been configured on the Planet PBX and was also used for the external incoming call. There was a standard invitation like "Hello, this is company ABC, please enter extension or wait for an operator". But this made our users enormously happy.

Results:
After the Project was completed 100% of all calls initiated reached the target extensions or the operator.

Bills from the public telephony provider lowed by 2 (!) times. All new equipment payed off in several month.

Side effect:
One of operators was raised to the Office Manager, since there was no more need to hold two operators at the same time.

My Projects: prologue

I'm going to begin a series of posts aimed to create some kind of portfolio of projects in which I was involved.

I'm not sure there is a dedicated target of this action, but this will be useful first of all for me.

However, if somebody find some of the posts interesting, I just would be happy about that.

Currently I have 16 drafts, that means 16 project witch I found interesting enough to share. But for sure there will be more, because those 16 was remembered just in 10 minutes.

You can find them all under "My Projects" label.