[OpenIndiana-discuss] slicing a disk for ZIL
Sebastian Gabler
sequoiamobil at gmx.net
Thu Nov 29 15:16:00 UTC 2012
Hi Jim,
thanks for the information.
I managed to set up 4 partitions on the disk with fdisk:
Total disk size is 3116 cylinders
Cylinder size is 12544 (512 byte) blocks
Cylinders
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1 Solaris2 1 779 779 25
2 Solaris2 780 1558 779 25
3 Solaris2 1559 2336 778 25
4 Solaris2 2337 3114 778 25
Now, in /dev/rdsk and /dev/dsk, I see:
# ls -sh /dev/dsk/ | grep c3t31d0p
512 c3t31d0p0
512 c3t31d0p1
512 c3t31d0p2
512 c3t31d0p3
512 c3t31d0p4
So, there are 5 Partitions. I am not sure which or if any count, and I
have not found a way to verify that each of the Partitions is about 4 GB.
partition print says
partition> print
Current partition table (original):
Total disk cylinders available: 777 + 2 (reserved cylinders)
Part Tag Flag Cylinders Size Blocks
0 unassigned wm 0 0 (0/0/0) 0
1 unassigned wm 0 0 (0/0/0) 0
2 backup wu 0 - 776 4.65GB (777/0/0) 9746688
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 unassigned wm 0 0 (0/0/0) 0
7 unassigned wm 0 0 (0/0/0) 0
8 boot wu 0 - 0 6.12MB (1/0/0) 12544
9 unassigned wm 0 0 (0/0/0) 0
I am still confused how to proceed further.
WBR,
Sebastian
Am 29.11.2012 13:47, schrieb openindiana-discuss-request at openindiana.org:
> ------------------------------ Message: 7 Date: Thu, 29 Nov 2012
> 13:47:04 +0100 From: Jim Klimov <jimklimov at cos.ru> To:
> openindiana-discuss at openindiana.org Subject: Re: [OpenIndiana-discuss]
> slicing a disk for ZIL Message-ID: <50B75948.5060505 at cos.ru>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed On
> 2012-11-29 12:43, Sebastian Gabler wrote:
>> >I have bought and installed an Intel SSD 313 20 GB to use as ZIL for one
>> >or many pools. I am running openindiana on a x86 platform, no SPARC. As
>> >4 GB should suffice, I am considering to partition the drive in order to
>> >assign each partition to one pool (ATM pools are 2 on the Server, but I
>> >could expand it in the future)
>> >After some reading, I am still confused about slicing and partitioning.
>> >What do I actually need to do to achieve the wanted effect to have up to
>> >4 partions on that SSD?
> Well, basically you need to partition the SSD:)
>
> There are several options available:
> 1) Use MBR (MSDOS Boot Record) traditional partitions - up to four
> primary partitions, one (or more?) of which can allocate a range
> as a secondary (or extended) partition and store more parts there.
>
> In this case you would address your zfs "log" devices as cXtYdZpN.
> In case of IDE connection (which you don't want) you see cXdZpN.
> Here "N" is the partition number, with "0" being the partition
> table/whole disk itself, so your logs would be N=1,2,3,4 if you
> only use primary partitions (the whole disk should be divided
> between them, then. Extended partitions are addressed at N=5..15.
>
> 2) Use MBR with Solaris slices - define a "Solaris" partition in MBR
> using the whole disk, and define Solaris slices inside. Note that
> slice #2 is reserved as traditional "whole disk" for backup tools.
> It may cause zfs tools to report conflicts (slice overlaps), but
> you can ignore them.
>
> In this case your zfs "log" devices would be cXtYdZsN, with N being
> the slice number (0..7, 2 is reserved but can be reused if required).
>
> AFAIK you can't define more than one Solaris slice set on one HDD,
> though you can use other partitions for other filesystems. Maybe
> you can mix slices and partitions as components for the pool and
> its log/cache devices, but I won't bet on this.
>
> 3) Use a GPT (GUID Partition Table, maybe aka "EFI") partitioning
> table. There you explicitly define many partitions, all primary,
> that can be used by your pools and their components (logs/caches).
>
> I think, Solaris "format" utility detects a GPT table and uses
> (and displays) those partitions in place of slices for traditional
> MBR+slice tables. I.e. with GPT you don't have slices, and usually
> don't need to - you can have many more GPT partitions than slices.
>
> When you dedicate a whole disk to ZFS to use in a non-root pool,
> it essentially makes a GPT table with an 8Mb reserved tail partition
> and the rest is a ZFS partition.
>
> As of now, the GPT-tabled disks can not be used for bootable root
> pools with Solaris-derived OSes (maybe usable with other distros
> and another GRUB in particular).
>
> I think you can not use separate ZIL with root pools - for mostly
> the same reasons only mirrors/single disks are allowed (the single
> device passed from BIOS/bootloader must be sufficient to boot the
> OS image). Maybe you can attach an L2ARC cache to an rpool, though.
>
> Also note that when using a sliced/partitioned disk with ZFS, you
> might need to ensure that disk caching is on for this device. This
> can be scripted as a bootup init-script calling "format", if required.
> I think I or Edward Ned Harvey published variants of such scripts
> in zfs-discuss mailing list this year.
>
> Finally, you can use "(g)parted" and/or "fdisk" utilities to label
> a disk as having a particular table and its contents. For slices or
> partitions accessible to Solaris, and to configure some options like
> cache, you further use "format" utility and follow its text menu.
>
> HTH,
> //Jim Klimov
>
>
>
>
> ------------------------------
>
> _______________________________________________
> OpenIndiana-discuss mailing list
> OpenIndiana-discuss at openindiana.org
> http://openindiana.org/mailman/listinfo/openindiana-discuss
More information about the OpenIndiana-discuss
mailing list