КатегорииLinksUnix Tutorial
Personal Development Ruslan Valiev Solaris Performance Team Damien Farnham Fintan Ryan Nicky Veitch Niall Mullen Sean McGrath DTrace Bryan Cantrill Brendan Gregg ZFS Tim Foster General Ben Rockwood Learning Solaris 10 Privacy policy |
Tuesday, April 3. 2007Местные новости: ZFS Performance Talk
Tim Foster had sent an email to IOSUG mailing list yesterday, that tomorrow, at 7pm, Roch Bourbonnais will present a tech talk on ZFS Performance.
Here's the announcement:
All the details are on the official IOSUG8 invitation page. Wednesday, March 7. 2007
ZFS administration guide: now in Russian Posted by Gleb Reys
in ZFS at
01:43
Comment (1) Trackbacks (0) ZFS administration guide: now in Russian
At last, I see some real progress with available translations of excellent Solaris docs!
For instance, ZFS administration guide in Russian was posted on the OpenSolaris/G11 (Globalization) Consolidation page just a few days ago. It really is great to see great translations like this completed. Well done, guys! Wednesday, March 15. 2006ZFS: commands emulation
I'm considering getting myself an x86 server with Solaris for home use, and today I've decided to play around with ZFS on my old Sparc-box.
I believe those of you who are just getting started with ZFS will really like the -n command line option for zfs and zpool, which allows you to see what result would a certain command yield, while there is nothing actually done to your disks. So, if you're thinking of creating a new storage pool, you don't have to actually create it just to see how it will look - you can use -n option instead: bash-3.00$ zpool create -n mypool raidz /export/vdev/d1 /export/vdev/d2 /export/vdev/d3 /export/vdev/d4The command will still be validated - its syntax will be checked, plus you'll have the existance of the disks verified as well. So, if you don't have one of the devices in your system, you might see something like this: bash-3.00$ zpool create -n mypool raidz /export/vdev/d1 /export/vdev/d2 /export/vdev/d3 /export/vdev/d4Tuesday, January 24. 2006ZFS: filesystem properties
There is quite a number of ZFS filesystems properties, and I will cover most useful ones today.
I'll begin with refreshing your knowledge a bit. As I've told before, I'm going to create a number of ZFS filesystems on my server for the next few blog entires on ZFS. So, right now I have the following: CODE: bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.40G 31.1G 8.50K /stock stock/oracle 2.32G 693M 2.32G /stock/oracle stock/try 8K 512M 8K /try To get a value of some ZFS property, we normally use a command like this: CODE: bash-3.00# zfs get used stock/try NAME PROPERTY VALUE SOURCE stock/try used 8K - But such output isn't always convenient for us - it's formatted this way to make the data more human readable. But if we're going to use zfs get to obtain some ZFS parameters from our scripts, we really don't need anything fancy. So we're probably better off using a special -H command line option: CODE: bash-3.00# zfs get -H used stock/try stock/try used 8K - One more thing - a useful, yet very obvious feature which allows you specifying few properties names in one command line: CODE: bash-3.00# zfs get -H used,available,mounted stock/try stock/try used 8K - stock/try available 512M - stock/try mounted yes - Okay, now let's move on and look at some useful ZFS filesystems properties. For instance, the mountpoint property name speaks for itself. By default, the filesystem which you change the mountpoint for, will be automatically remounted at a new location: CODE: bash-3.00# zfs set mountpoint=/younameit stock/try bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.40G 31.1G 8.50K /stock stock/oracle 2.32G 693M 2.32G /stock/oracle stock/try 8K 512M 8K /younameit bash-3.00# df -k | grep stock stock 35112960 8 32597477 1% /stock stock/oracle 3145728 2436188 709540 78% /stock/oracle stock/try 524288 8 524280 1% /younameit One more potentially useful option is an on-disk compression. It happens on the fly, and it is planned to eventually have a number of compression methods available to a ZFS administrator, but at the moment you can use only one method - lzjb. Still, results are impressive: CODE: bash-3.00# ls -l /younameit/access_log total 3082 drwxr-xr-x 2 root sys 3 Jan 23 21:59 . drwxr-xr-x 44 root root 1024 Jan 23 21:45 .. dr-xr-xr-x 3 root root 3 Jan 23 22:04 .zfs -rw-r--r-- 1 root root 8904090 Jan 23 21:59 access_log bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.41G 31.1G 8.51M /stock stock/oracle 2.32G 693M 2.32G /stock/oracle stock/try 1.51M 510M 1.51M /younameit No wonder the compression ratio is so good for this filesystem: CODE: bash-3.00# zfs get compressratio stock/try NAME PROPERTY VALUE SOURCE stock/try compressratio 5.63x - Unfortunately, only few types of files can be so wonderfully compressed, and text files (for instance, my Apache2 logs) belong to them too. Executable files, of course, will compress with a much lower ratio. I think that should do for today's entry. Let me tell you right now: I have a whole series of ZFS blog entries planned ahead, and that's the reason I haven't covered some of the simpler ZFS filesystem options yet. I promise to write more in the nearest few days. Wednesday, January 18. 2006ZFS: managing filesystems
Hi!
Unbelievable - this turns out to be the very first entry of mine in 2006! I couldn't postpone new entires anymore, so here's one for you :) It's been quite a while since I've cleared one of internal disks in my Netra t105 to bring it under ZFS control. As a result, I now have a 33Gb zfs-pool to experiment with. Today I had some spare time, so I've decided to share the very basics of managing ZFS filesystems. So this is the pool I have: CODE: bash-3.00# zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT stock 33.8G 2.40G 31.4G 7% ONLINE - And like I said, it has only one drive in it: CODE: bash-3.00# zpool status pool: stock state: ONLINE scrub: scrub stopped with 0 errors on Tue Jan 17 21:00:45 2006 config: NAME STATE READ WRITE CKSUM stock ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 By default, when you create a zfs-pool, all of its disk space is represented as a single filesystem with the same name. This filesystem also gets a mountpoint with the same name and is automatically mounted off /. So, after doing a zpool create (here is my example) you can immediately start working with your newly made filesystem. At the moment I've got only 1 additional filesystem created, I use it for Oracle 10g. So here's how it looks: CODE: bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.40G 31.1G 8.50K /stock stock/oracle 2.32G 693M 2.32G /stock/oracle According to ZFS concepts, all the newly made filesystems may use all the available disk space of the zfs-pool they belong to. So, when I create another filesystem in my stock pool, this filesystem has more than 30Gb available to it: CODE: bash-3.00# zfs create stock/try bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.40G 31.1G 9.5K /stock stock/oracle 2.32G 693M 2.32G /stock/oracle stock/try 8K 31.1G 8K /stock/try To make sure that some of your filesystems don't eat up all the available disk space, you have to limit them. And it's very easily done so: CODE: bash-3.00# zfs set quota=512m stock/try bash-3.00# zfs list NAME USED AVAIL REFER MOUNTPOINT stock 2.40G 31.1G 9.5K /stock stock/oracle 2.32G 693M 2.32G /stock/oracle stock/try 8K 512M 8K /stock/try As you have probably guessed, quota is the parameter name, while set is a keyword to alter parameters values. There is quite a number of ZFS filesystem parameters, and most of them you can modify, but there are also some which are read-only. Here's an example of such a parameter, and you can see what happens if you try modifying them: CODE: bash-3.00# zfs get mounted stock/try NAME PROPERTY VALUE SOURCE stock/try mounted yes - bash-3.00# zfs set mounted=on stock/try cannot set mounted property: read-only property You can find the full list of ZFS filesystem parameters on the man page for zfs, as for me - I'll show you only 1 more parameter today, and a very useful one in my opinion: a mount point. As all the rest things about ZFS, this parameter is very easy to change, and you even have the filesystem automatically remounted for you: CODE: bash-3.00# df -k | grep ^stock stock 35112960 8 32597478 1% /stock stock/oracle 3145728 2436188 709540 78% /stock/oracle stock/try 524288 8 524280 1% /stock/try bash-3.00# zfs set mountpoint=/try stock/try bash-3.00# df -k | grep ^stock stock 35112960 8 32597478 1% /stock stock/oracle 3145728 2436188 709540 78% /stock/oracle stock/try 524288 8 524280 1% /try I left the df output intentionally here, to show that there were no additional manipulations made to the try filesystem - it really is this easy! I guess that's enough for today - so next time I'll tell you about few more useful ZFS filesystem parameters. Good luck with your experiments! |





