Thursday Jul 02, 2009

Crossbow is another cool technology on Opensolaris. It gives administrator control over network resources and is an important mechanism in managing service level. Administrator could decide how much bandwidth to allocate to the different containers using different vnics.

At the Singapore OpenSolaris User Group Event today, we had a good discussion on this technology. We also configured flow control on the vnic and tested how the maxbw parameter affect network throughput.

First, a 10MB file is created on my notebook. We coped the 10MB file using scp from one zone to another, using different maxbw setting. The result was:

1. maxbw=5, 24 secs

2. maxbw=2, over 1 minute

3. maxbw=10, 10 secs

The results shows that changing the maxbw parameter does impact the throughput of the vnic.

With this capability, administrator could give more bandwidth to applications that require quick response or are time critical to meet service level requirement.

Friday Jun 19, 2009

Mobility is important. Getting Connected is important. I need to get the Broadband USB Modem to work.

I have a HUAWEI E220 USB Modem, Acer TravelMate 6292 Notebook. My Service Provider is StarHub (Singapore). After some research on the net, I know that the modem needs to work with usbsacm driver.

Finally this is what I did to get it work.

I installed the updated driver from http://chototsumoushinp.dip.jp/solaris/emobile.tar.bz2. I copied the driver "usbsacm" from the "amd64" directory in the archive to  /kernel/drv/amd64 directory.

I updated the driver with the following commands:

# update_drv -a -i "usb12d1,1003" usbsacm
# devfsadm

# ln -s /dev/term/0 /dev/huawei

I also created the 2 files.

/etc/ppp/peers/huawei:

nodetach
huawei
460800
noauth
passive
defaultroute
usepeerdns
noccp
novj
user 'ppp'
show-password
crtscts
connect '/usr/bin/chat -V -t15 -f /etc/ppp/huawei-chat'

/etc/ppp/huawei-chat:

'' 'ATZ'
'OK' 'ATQ0V1E1&D2&C1S0=0'
'OK' 'ATE0V1'
'OK' 'ATS7=60'
'OK' 'ATDT*99#'
CONNECT ''

I then connected the USB Model to the USB port. Rebooted the server with the USB stick connected.

After reboot, I disabled one CPU (as I read somewhere the with 2 CPU cores up, the driver may not work properly)

# psradm -f 1

I then run:

# pppd call huawei

The is the output from the command:

OK
ATQ0V1E1&D2&C1S0=0
OK
ATE0V1
OK

OK

CONNECTSerial connection established.
Using interface sppp0
Connect: sppp0 <--> /dev/huawei
local  IP address ....
remote IP address ....
primary   DNS address ....
secondary DNS address ....

I then manually updated /etc/resolv.conf with the DNS addresses.

That's it. Network is up, and I am writing this blog using this wireless broadband HSDPA connection.

Great !

Friday Jun 05, 2009

AS I have said in my previous blog, I wanted to test if an application continues to run after the migration.

In a test I did with customer, we started a script that wrote a timestamp every second to a file. We started the script and then initiated the LDOM migration. After migration,  we found that the script was still running and the timestamp in the file showed that there was a pause during the migration.

Monday May 04, 2009

As part of a Demo/POC, I need to setup a demo for LDOM warm migration, which is included in the latest LDOM 1.1 release.

The setup includes 2xT6300 blades (node1 and node2), both connected to an external storage.

Services created in control domain of both blades (node1 and node2) include:

primary-vsw0: link to e1000g0

primary-vds0: virtual disk server

I created a LDOM called ldg3 on node1 with its boot disk on the external storage. The boot disk is added as a raw device :

> ldm add-vdsdev /dev/dsk/cxtyd0s2 vol4@primary-vds0
(a corresponding virtual disk server needs to be created on node2 that points to the same raw disk. i.e. ldm add-vdsdev /dev/dsk/citjd0s2 vol4@primary-vds0)

> ldm add-vdisk vdisk0 vol4@primary-vds0 ldg3 (only on node1)

For Network
> ldm add-vnet vnet0 primary-vsw0 ldg3 (only on node1)

After installing the OS into ldg3, The OS is booted up.

To migrate ldg3 from node1 to node2, I used the command:

> ldm migrate ldg3 root@node2 (ldg3 should not exist on node2)

Status of the migration was shown by using the command:

> ldm ls -o status ldg3 (can be executed on either node)

The LDOM was migrated from node1 to node2 without any error. I also managed to migrate ldg3 from node2 to node1.

Cool !

Next, let me start an application before the migration and see how the application behaves during the migration.

Sunday Jan 18, 2009

Many companies test their application in the test environment using servers with lower compute power. This is a good strategy as a lot of the testing time is spent on trouble shooting functional defects. Also, the load generated for functional test does not require a fully configured system.

A system that performs pooly makes the system un-usable. In order to ensure performance objective is met in production environment, it is important that thorough performance test is conducted. Using zone migration, an application can be moved from a lower end system to a higher end system easily. Company could purchase a high end system for load test purpose to be shared across projects. With proper scheduling, this load test system could be used to test different applications at different time.

Solaris 10/08 added the capability to move zones from one system architecture to another (Sun4u to Sun4v and vice versa). This allows developer to test their application on different system architecture to determin the best servers for their application.

Solaris 10 container technology has matured quickly since its release. Using it to optimize compute resources during this challenging time will help companies save cost and jobs.

Wednesday Nov 12, 2008

With the availability of Solaris 10/08, we can now have zfs as the root file system. In order to move the zfs file system from other file system, some form of data migration is required. How could one move data from existing storage, kept on a different file system, to zfs file system without purchasing new storage, and with minimal downtime? Here is a set of steps that could help you achieve that.

Assuming that you have data on 2 disks (disk1-c0t0d0s0 and disk2-c0t1d0s0, mirrored using Solaris Volume Manager). Each disk is 73GB size. You would like to change it to a zfs file system.

You would need a temp storage, in this case, let's assume you have a disk (disk3-c2t0d0) of 300GB. The steps are:

1. Attach disk3 to the server and make sure that it can be accessed from the OS.

2. Create 2 slices (let's assume they are /dev/dsk/c2t0d0s0 and /dev/dsk/c2t0d0s1). The block size of the 2 slices must match the block size of disk1-c0t0d0s0 and disk2-c0t1d0s0.

3. Create a zfs mirrored pool using the 2 slices. (zpool create DataPool mirror c2t0d0s0 c2t0d0s1)

4. Copy the data from the existing file system to the new zfs pool.

5. Unmount the old disks and mount the zfs file system to the same mount point This may require application downtime.

6. Replace the disk slices in the zfs with the old disks (disk1 and disk2).

zpool replace -f DataPool c2t0d0s0 c0t0d0s0
zpool replace -f DataPool c2t0d0s1 c0t1d0s0

This operation is transparent to the application running on the file system.

7. You now have data on the old disks on zfs file system

8. You can now remove the temp disks.

 The above steps allow you to move to zfs file system with minimal downtime.

Saturday Sep 20, 2008

I am happy that Sun will be represented in 3 Software Freedom Day events in Singapore. The 3 events will be held @ NUS, NTU and SMU respectively. I just spoke at the NTU event and was glad that I could show the students exciting features of OpenSolaris. One student asked me what are the unique features of OpenSolaris as compared to other Unix/Linux. The first 3 features that came to my mine were Container, DTrace and ZFS. These features help increase utilization, performance and reduce complexity.

Participants @ the NTU event were given OpenSolaris LiveCD so they could experience OpenSolaris without installing it. Students were also taught how to install OpenSolaris on a VM created using Sun xVM VirtualBox software.

Saturday Aug 30, 2008

I was jogging this morning (after a one week break) and was thinking about virtual worlds, and the movie Matrix came into mind. Will it come a day when physical world will be so closely linked to virtual world that humans could be influenced/controlled by what happen in the virtual world ?

Open Source technology sunch as Project Wonderland will accelerate the growth of the virtual world not just for gaming but for training and collaboration. Companies have started looking at the economic aspect such as doing financial transactions within the virtual world. I could forsee a proliferation of virtual worlds that would be followed by a consolidation of them.  

How then will a person divide his time between physical world and virtual world ? Will a person be present in both worlds at the same time ? Something for me to think about ...

Thursday Aug 07, 2008

I hate going to the dentist. The feeling of keeping your month open while the dentist was doing drilling, digging is not exactly pleasant.

Hence, I was pleasantly surprised during my recent visit to the dentist to find out that the IT system in dental clinics was well integrated.

The dental clinic I went to has several rooms. I was asked to go to a room at the back of the clinic room for an X-Ray of my teeth. After which, I returned to the operating room to wait for result. After a few minutes, I was expecting somebody to bring in a film of the X-Ray but was surprised to see the doctor startup an application, and after a few clicks, the X-Ray image showed up on the monitor! So the process of digitizing the image, saving the image and associating the image to the patient was all done automatically.

The power of the network manifest in many aspects of our life. Having data stored centrally in the network allow information to be shared easily, backup centrally and protect securely. In fact, it will be better to deploy Sun Ray in all rooms to allow for desktop mobility.

Sunday Jul 20, 2008

As I planned to travel to the US, and my passport belonged to the category

"Passport issued, renewed or extended between Oct 26, 2005 and Oct 25, 2006, which has a digital photograph printed on the data page or a biometric chip containing information from the data page."

I went ahead to apply for a new passport.

Using APPLES, the online system for application, I submitted my digital photograph and was told that the processing time would be 3 working days.

After a few days, I received a notification by post that my passport was ready. I made an appointment online at 10am on Wednesday.

On Wednesday, I arrived at ICA @ 9:55am. I collected a queue number and was at the counter by 9:57am. I was next in the queue. At about 10:03, my queue number appeared on the display and was attended by the friendly staff. I was out of ICA by 10:15am. The last time I collected passport for my kids, it took me more than a hour.

The total time I spent in ICA was less than 20 minutes. Although I used a 1 hr car park coupon, I was not complaining.

That is efficiency !

Wednesday Jul 16, 2008

When I started work as a Computer Integrated Engineer in 1992, I was doing graphical programming using XWidget, handling X events manually and writing callback routines for each mouse events.

Today, at the Singapore Sun Developer day, we saw demos with images fading in and out,  web component that was embedded in the browser being dragged out of the window to appear as a full-fledged application.

We also witnessed how rich UI application could be built using AJAX framework: JMaki, and how easy one could use Java FX to create application that would normally require many more hours of coding. Another interesting demo showed how the Grails framework could be used for rapid development of 3-tier applications.

The ballroom was fully packed with participants, with more standing at the side and watching the live feed from the next room. With developers all over the world wanting to be more efficient, more creative, the world will benefit from the open source community contribution with better software produced in a shorter time.



Monday Jul 14, 2008

The training I had last week was one of the better soft skill training I attended. Mainly because I could apply it in my work. Although one could easily call it documented common sense, it was the realistic examples given and the practical way in which it could be applied that made it relevant and interesting.

To internalize the learning is probably the hardest. Picking two or three areas to focus on over the next few months and making conscious effort to practice will be needed. Putting down in words here will be a good starting point.