Tuesday, May 26, 2009
Flock 2.5 - Browser for Social Networking.
Sunday, May 24, 2009
Network Usage from console Max / Cur / Avg.
#!/bin/bash
IFACE=bond0
oldbyt=(0 0);
cnt=1;
ORXB=0
OTXB=0
MAXRXB=0
MAXTXB=0
while : ; do
byte=($(/sbin/ifconfig $IFACE | \
sed -e 's/:/ /g'|awk '$2 ~ /bytes/ {print $3,$8}'));
if [ ${oldbyt[0]} -ne 0 ] && [ ${oldbyt[1]} -ne 0 ]; then
RXB="$(((${byte[0]}-${oldbyt[0]})/1024))"
TXB="$(((${byte[1]}-${oldbyt[1]})/1024))"
ORXB=$(($RXB+$ORXB))
OTXB=$((TXB+$OTXB))
[ $MAXRXB -lt $RXB ] && MAXRXB=$RXB
[ $MAXTXB -lt $TXB ] && MAXTXB=$TXB
echo -e "\fCUR RX : $RXB\tTX : $TXB\nAVG RX : $(($ORXB/$cnt))\tTX : $(($OTXB/$cnt))\nMAX RX : $MAXRXB \tTX : $MAXTXB"
cnt=$(($cnt+1))
fi
oldbyt=(${byte[@]});
sleep 1
done
I know I can do the same thing using some stock utilities like ntop or iftop, but this was a production environment and I don't want to install any thing unless it is absolute necessity.
Friday, May 22, 2009
Mozilla Prism
Using Prism you can directly run you favourite web application from your desktop. As Mozilla folks says "a distraction free browser", free from all the clutter that a browser has.
Currently I am doing some test on my Kubuntu laptop. Will post results as the test progress. You can also get the latest version from this link.
Thursday, May 21, 2009
SAMBA + Tortoise SVN Issue
The issue started appearing after upgrading the tortoise SVN to a new version. Each time the working copy is updated, we got an error saying that "Access denied on Y:/xxx/.svn/tmp/entries".
We definetly knew that it is not an SVN issue, but could be SAMBA.
After some research on Google it turned out to neither SVN nor SAMBA, but a special case where UNIX file ownership prevents changing file permissions, and DOS semantics prevent deletion of a read only file.
Luckly we found the following work around from tortoisesvn.tigris.org
After upgrading to TortoiseSVN 1.5.x or later, you get a lot of "Access denied" errors for most of the Subversion commands if your working copy is stored on a SAMBA share.
Some users reported that the problem went away after they upgraded SAMBA to the latest version. If that does not help or you can't upgrade, allow readonly files to be deleted in the SAMBA config file:
[global]For older versions, try:
delete readonly = yes[global]
create mask = 0644
force create mode = 0600
security mask = 0555
force security mode = 0600
Setting up YUM Repository
March of the terminators: Robot warriors (www.dailymail.co.uk)
But while it's one thing when your laptop freezes up, it's quite another when it is controlling an auto-loading magazine containing 500 high-explosive rounds.
Five-Dimensional Data Storage (www.technologyreview.com)
Tuesday, May 12, 2009
VMware vSphere
VMware vSphere seems to be a very good mash up of the existing technology, which has brought the cloud computing to the enterprise. It can better utilize the existing hardware in the data center and dramatically reduce the IT hardware spending. more on this can be found here
Monday, May 11, 2009
OCFS2 Setup.
Hardware Requirement.
- Shared Storage, accessible over SAN between cluster nodes.
- HBA for Fiber SAN on each node.
- Network Connectivity for hearbeat between servers.
OS Installation.
Regular installation of RHEL 5.x. 64 bit with the following configuration.- SELinux must be disabled.
- Time Zone - Saudi Time. (GMT +3)
- Gnome for Graphics desktop.
- Development libraries
- Internet tools - GUI and text based
- Editors - GUI and text based
- 200 MB for /boot partition
- 5 GB for /var partition
- 5 GB for /tmp partition
- Rest of the space to / partition.
Installation of OCFS2 Kernel Module and Tools
OCFS2 Kernel modules and tools can be downloaded from the Oracle web sites.OCFS2 Kernel Module:
http://oss.oracle.com/projects/ocfs2/files/RedHat/RHEL5/x86_64/1.4.1-1/2.6.18-128.1.1.el5
Note that 2.6.18-128.1.1.el5 should match the current running kernel on the server. A new OCFS2 Kernel package should be downloaded and installed each time the kernel is updated to a new version.
OCFS2 Tools:
http://oss.oracle.com/projects/ocfs2-tools/dist/files/RedHat/RHEL5/x86_64/1.4.1-1/ocfs2-tools-1.4.1-1.el5.x86_64.rpm
OCFS2 Console:
http://oss.oracle.com/projects/ocfs2-tools/dist/files/RedHat/RHEL5/x86_64/1.4.1-1/ocfs2console-1.4.1-1.el5.x86_64.rpm
OCFS2 Tools and Console depends on several other packages which are normally available on a default RedHat Linux installation, except for VTE (A terminal emulator) package.
So in order to satisfy the dependencies of OCFS2 you have to install the vte package using
yum install vte
After completing the VTE installation start the OCFS2 installation using regular RPM installation procedure.
rpm -ivh ocfs2-2.6.18-92.128.1.1.el5-1.4.1-1.el5.x86_64.rpm \
ocfs2console-1.4.1-1.el5.x86_64.rpm \
ocfs2-tools-1.4.1-1.el5.x86_64.rpm
This will copy the necessary files to its corresponding locations.
Following are the important tools and files that are used frequently
/etc/init.d/o2cb
/sbin/mkfs.ext2
/etc/ocfs2/cluster.conf (Need to create this Folder and file manually)
OCFS2 Configuration.
It is assumed that the shared SAN storage is connected to the cluster nodes and is available as /dev/sdb. This document will cover installation of only two node (node1 and node2) ocfs2 cluster.Following are the steps required to configure the cluster nodes.
Create the folder /etc/ocfs2
mkdir /etc/ocfs2
Create the cluster configuration file /etc/ocfs2/cluster.conf and add the following condents.
node:
ip_port = 7777
ip_address = 10.10.163.65
number = 1
name = node1
cluster = ocfs2
node:
ip_port = 7777
ip_address = 10.10.163.66
number = 2
name = node2
cluster = ocfs2
cluster:
node_count = 2
name = ocfs2
Note that the:
- Node name should match the "hostname" of corresponding server.
- Node number should be unique for each member.
- Cluster name for each node should match the "name" field in "cluster:" section.
- "node_count" field in "cluster:" section should match the number of nodes.
O2CB cluster service configuration.
The o2cb cluster service can be configured using:/etc/init.d/o2cb configure (This command will show the following dialogs)
Configuring the O2CB driver.
The following questions will determine whether the driver is loaded onboot.
The current values will be shown in brackets ('[]').
Hitting without typing an answer will keep that current value.
Ctrl-C will abort.
Load O2CB driver on boot (y/n) [n]: y
Cluster stack backing O2CB [o2cb]:
Cluster to start on boot (Enter "none" to clear) [ocfs2]: ocfs2
Specify heartbeat dead threshold (>=7) [31]:
Specify network idle timeout in ms (>=5000) [30000]:
Specify network keepalive delay in ms (>=1000) [2000]:
Specify network reconnect delay in ms (>=2000) [2000]:
Writing O2CB configuration: OK
Loading filesystem "ocfs2_dlmfs": OK
Mounting ocfs2_dlmfs filesystem at /dlm: OK
Starting O2CB cluster ocfs2: OK
Note that the driver should be loaded while booting and the "Cluster to start" should match the cluster name, in our case "ocfs2".
As a best practice it is adviced to reboot the server after successfully completing the above configuration.
Formating and Mounting the shared file system.
Before we can start using the shared filesystem, we have to format the shared device using OCFS2 filesystem. Following command will format the filesystem with ocfs2 and will set some additional features.mkfs.ocfs2 -T mail -L ocfs-mnt --fs-features=backup-super,sparse,unwritten -M cluster /dev/sdb
Where :
-T mail
"mail" option is a ppropriate for file systems which will have many meta data updates. Creates a larger journal.
-L ocfs-mnt
--fs-features=backup-super,sparse,unwritten
backup-super
-M cluster
/dev/sdb
Block device that need to be formated.
We are ready to mount the new filesystem once the format operation is completed successfully.
You may mount the new filesystem using the following command. It is assumed that the mount point (/mnt) exists already.
mount /dev/sdb /mnt
If the mount operation was successfully completed you can add the following entry to /etc/fstab for automatic mounting during the bootup process.
LABEL=ocfs-mnt /mnt ocfs2 rw,_netdev,heartbeat=local 0 0
Test the newly added fstab entry by rebooting the server. The server should mount /dev/sdb automatically to /mnt. You can verify this using " df " command after reboot.