ZFS and Interwoven TeamSite
Thursday Nov 06, 2008
We recently upgraded our core CMS software. Due to various platform dependencies, we were forced to upgrade EVERYTHING in one swoop including:
- Upgrade from TeamSite 6.5 to 6.7.1
- Upgrade from Solaris 9 to Solaris 10
- Migrate to new hardware (Sun SPARC Enterprise M5000 Server)
- Migrate from UFS to ZFS
Given how many things could go wrong with the upgrade, we made it through without too much pain.
One of the main reasons for using ZFS was to simplify our backup process. With our old setup, the process was:
- Freeze the application
- Offline a mirror
- Unfreeze the application
- Backup the offline mirror
- Online the mirror and wait, and wait, and wait, and wait some more for everything to sync up
After 23.8 hours and a completely pegged IO subsystem, that process would [usually] complete and we could start with the next days backup.
Switching to ZFS, this gives us the ability to:
- Freeze the application
- Create a snapshot
- Unfreeze the application
- Backup the snapshot
With the new process, the backup completes in ~5 hours and we do not saturate the IO subsystem with constant disk resyncing.
While we were sure to get significant administrative gains with ZFS, there was no case history of ZFS with TeamSite. On a developers forum, I could not find anyone using ZFS with TeamSite. I guess someone has the be the first?
Overall, we did not have any significant setbacks, but we did run into a conflict with the ARC cache.
(If you are a TeamSite/Solaris customer, take note....)
ZFS is known to be aggressive with memory usage and will utilize unallocated memory. This conflicted with TeamSite which likes to monitor free memory. When the application senses the box is low on memory, TeamSite will shut itself down to prevernt data corruption. After a few incidents of this and a few hours of searching for "zfs" and "memory", I quickly realized this was a simple fix of limiting the ARC cache and rebooting the box. (Some might argue scheduling the reboot was a greater feat than finding a fix.)
Another oddity during the upgrade, which is really filesystem independent was having too much storage. After initializing our new storage system and firing up the app, it threw the following error:
Tue May 6 14:29:50 2008] iwts master DiskFail /store/temp/default statvfs failed on /store/temp/default (Value too large for defined data type)
With 2.9TB of available storage, I believe we ran into a 2^32 error. We have "5,528,735,715" blocks on our filesystem while while 2^32 is "4,294,967,296". With ZFS, the fix was as simple as:
zfs set quota=1.5GB pool/store
(Still waiting for an official answer from the vendor. Holding breath.)
Finally, we have experienced some performance issues when "cloning" the "backing store" filesystem. Upon clone destruction, the application intermittently freezes and zfs commands will hang for a few minutes. This issue seems to be limited to clones as we can create and destroy snapshots without issue. (We don't need to use clones so, we decided to avoid clones for now until we can properly investigate.)
Overall, I have been very happy with ZFS as a storage solution for TeamSite. It simplifies backups and is a very simple to manage solution.










