Categorize tickets and incident workflow

December 10th, 2008 by

A long time ago we implemented a ticketing tool to track all the issues, problems, requests from the internal and external users. This help desk solution do not need to be scalable because of the amount of requests expected (the idea is trying to reduce them with a self service concept)

Weekly and monthly we generate reports about the time spent, main problems, etc.

The tickets get everyday to our tool and they are answered using FIFO queue.

As a first approach, tickets were defined as every request to IT department.

However, we identified that sometimes, users request improvements or features on the network infrastructure that needs time to implement.

Every request is different. Some of them are asking for similar things, but everyday we receive different issues to solve. As a consequence, we encourage to categorize each ticket and let them be solved (or at least answered ASAP)

The criteria to categorize the tickets are the time, priority, severity, although the most important is the time we need to spent on them.

Every week we allocate time for the tickets according an average and estimation on the last week time spent on them. If a ticket arrives and will take more time than expected and planned, iteration plan may failed, and we will need to “steal” time from the current iteration goals.

As a result, described below, we were obligated to define a workflow as follows.

Requests workflow



With this workflow we can be sure:

  1. Tickets are going to “live” open not more a few days. They are going to be short tasks needs immediate execution.
  2. Users will be clearly informed about their requests status everyday
  3. We avoid stack items in the ticketing tool for more than 3 days
  4. Tasks that take long time to perform will be added more quickly to backlog skipping the ticketing tool

Run commands in multiple puttys consoles

November 26th, 2008 by

I needed to run a set of commands in different servers to join them to our AD.

To perform this action, instead of execute it one by one, I found this useful tool (PuttyCS) to let me organize my Putty windows and execute the command one time in all of them.

It is simple to use and it not only let you execute commands; it also let you send moves with the arrow keys, enter key, CTRL+D key, etc.



Differences between available space and free space in EXT3 filesystems

October 8th, 2008 by

I have an HD 1TB sharing EXT3 format using Samba running under OpenSUSE 11.

Although it is a lot of capacity for these days, they system warn me that it is full and do not allowed me to write there.

In order, to fix the problem I performed this operations:
  • - Umount drive and remount it
  • - Umount drive and remount it in another folder
  • - Restart samba

But, nothing changed.

This is the drive status showed in the file system monitor:


As I have read there is a percentage of the HD used for root processes. It can be removed if you use special parameter on formating the HD or running the command tune2fs -m 1 /dev/xx.

For more information about it You can google “ext3 overhead”

To fix this I decide to assign only 3% to this setting and let me use more space.


After running the command I got more available space and I am allowed to write files there.

Improving process on IR

August 15th, 2008 by

Every Friday as scrum manual says we execute IR meeting, Iteration Review.

On our IRs, we usually vote for some important facts that let us know about our performance during the week.

The dashboard we complete is like this:


This week I proposed to improve this dashboard adding some fields to measure and report our effort better.

My version includes the table before and add another one to fill for each backlog item. It should be like the following table:


I think this form can take more  than 10 minutes to fill and think, so I asked the team to think what would they complete on their taken and finished tasks fields.

That will let us know metrics about our drops, for later improvement.

Enable VIM Syntax Highlighting

July 25th, 2008 by

Vim (Vi improved) supports color syntax highlighting.

This tool help programmers to read and understand rapidly the code syntax.

In fact, there are researches that demonstrate productivity increase more than 100% !!



To enable it edit the file /etc/vimrc
In section "enable syntax highlighting", uncomment the line:
"syntax on


Joining SUSE to Windows domain

May 21st, 2008 by

Following the steps in the OpenSUSE official site (

I configured the files for authentication in AD.

I could checked that the logging (query to the AD) was completed successfully.


I was in the last step: Join the machine to the domain using samba.

When I google this error, most of the results talk about a problem with the samba version and windows 2008 compatibility.

They specially refer about  samba 3.0.25b testing to join to a Windows 2008. I have checked the version installed on my VM and it is not the conflict one. It is 3.0.26a!


I have tried to join the same VM to a windows 2003 domain and it works great


But I do need to join my VM to a Windows 2008 domain!

I have installed the newest Samba version (downloaded from and it worked.

Here are the steps I used to perform the authentication (before installing a new version of samba and Kerberos client)


I configure the loging option for AD users in YaSt->Windows Domain Membership and here it are the results for my login attempts:

Using SSH:

Using Gnome:

Problem joining SUSE to windows domain

May 21st, 2008 by

In a new VM, using the system default configuration I have tried to join a SUSE 10 SP1 VM to an AD domain:

It recognizes the AD!

However, when I try to login I got an error:


How to enable a script in startup in SUSE 10

May 21st, 2008 by
  • Create link to the script in /etc/init.d ln –s /srv/scripts/
  • Run chown root.root /etc/init.d/firewall
  • Run chmod 700 /etc/init.d/firewall
  • Run /sbin/chkconfig –level 345 /etc/init.d/firewall
  • To check if it is working, run /etc/init.d/firewall and check if that worked.
  • Then access YaSt/System Services (Run level)

  • On expert mode, enable the service on run level 5 (network configuration, in this case)

  • Reboot and check it!

VMware virtualization

December 13th, 2007 by

Virtualizaton is a great technology to implement in any IT environment!

The VMs can be moved, replaced. For testing purposes are the best choice. You can work with a VM and hang it up. It doesn’t mater, You can replace it with the healthy one, later. Developers are able to work with them as administrator without broken any production server.

Its implementation is not a big deal. The difficult thing is to implement the concept of virtualization on people. They are used to work on real servers that they are able to remove, install, change it hardware configuration and sometimes hit and complain to them. This step is not easy and it takes  time, but I think it should improve the performance of the employees not to care about crash any system and work on as many servers (virtual servers) as they want.

Every day I find articles and news about the advantages of virtualization. I think it is a new way to work and save time.

I will continue posting about this experience.

First Post, network rebuild simulation

December 11th, 2007 by

This is my first post.
After a few weeks getting knowledge about the IT architecture and the company policies, I´am here writing my first post.
My first days in Southworks were great. I got home exhausted and full of new information.
The first tasks I had assigned was to provision myself the accounts, rights, hardware and software to start working.
After that, the next step was pairing on some issues I already had experience like backup policies, desktop troubleshooting and image refreshing on developers PCs.
This week we tried to simulate an scenario:
Supposing we need to re- structure the network and re build some servers and services. That means the magic word for ITs: MIGRATION.

The migration should take place in a network isolated and after testing the we will analyze the differences between the current one and measure its performance.
We have to think everything will be done again, so we should propose the best solution for us today, and how would it be.

The first important task

The first big task for me was install FreeBSD on a new server and configure it to route and work as a firewall for Internet access.
The installation process was friendly and the tools provided to configure it were easy to use (sysinstall).
However,we decided to leave the FreeBSD server and reinstall it with OpenSuSe, beacuse we read about Mono project.

Mono is an opensource project to implement .NET technologies using Linux. As we read, today it is supported only on OpenSuSe distribution.
The OpenSuse installation was like every Linux. I use to work with Fedora and Debian distros and this one is similar.
The problems appeared when I tried to execute the same commands with the same parameters as Debian for example.
They are different. The  paths for the config files too.
Configure the network and the route table have taken me more than I estimated. I could set it up, but as soon as I reboot it back to the default configuration.

OpenSuse includes a tool called Yast. Personally, I don´t like it, but using it was the only way to configure some network issues.
As soon as I could I installed the apt-get manager. Also I found helpful a toll called webmin. This tool is a web interface to manage most administrative and system issues. It is not the best tool because it si not safe. (with one login, you can manage all the services, shutdown and hack the server)
By now I allowed to access it only through the private interface, but as soon as we deploy the server in production state I will uninstall it.
The next step was setup the firewall.

It required performance, security and routing tests. The position of the rules was very important for this kind of configurations.
I implemented the rules as I though they should work and then I read them from the webmin/linux firewall interface.
Now, I need to test the server working as a gateway and start opening and “natting” the requested ports as needed.