After talking with Darren, he and I came up with something that should
satisfy the multiple types of vdev redundancy options:
<target>
<disk>
<disk_name name="c3t0d0" name_type="ctd"/>
<partition action="create" name="1" part_type="191">
<size val="-" start_sector="-"/>
<slice name="0" action="create" force="false" zpool="rpool">
<size val="-" start_sector="-"/>
</slice> <slice name="1" action="create" force="false" zpool="rpool">
<size val="-" start_sector="-"/>
</slice>
<slice name="3" action="create" force="false" zpool="rpool"
vdev="my_mirror">
<size val="-" start_sector="-"/>
</slice>
<slice name="4" action="create" force="false" zpool="rpool"
vdev="my_mirror">
<size val="-" start_sector="-"/>
</slice>
<slice name="5" action="create" force="false" zpool="rpool" vdev="my_spare">
<size val="-" start_sector="-"/>
</slice>
<slice name="6" action="create" force="false" zpool="rpool" vdev="my_spare">
<size val="-" start_sector="-"/>
</slice>
</partition>
</disk>
<disk>
<disk_name name="c3t1d0" name_type="ctd" zpool="tank" />
</disk>
<disk>
<disk_name name="c3t2d0" name_type="ctd"/>
<partition action="create" name="1" part_type="-" zpool="code">
<size val="-" start_sector="-"/>
</partition>
<partition action="create" name="2" part_type="-" zpool="code"
vdev="my_spare2">
<size val="-" start_sector="-"/>
</partition>
</disk>
<logical>
<zpool name="rpool" action="create" is_root="true" />
<vdev name="my_mirror" redundancy="mirror"/>
<vdev name="my_spare" redundancy="spare"/>
</zpool>
<zpool name="tank" action="create" is_root="false" />
<zpool name="code" action="create" is_root="false" />
<vdev name="my_spare2" redundancy="spare" />
</zpool>
<filesystem name="rpool/ROOT/sol155" action="create">
<filesystem name="rpool/ROOT/sol156" action="create">
<filesystem name="tank/slim_source" action="create">
<filesystem name="code/my_gate" action="create">
</logical>
</target>
This allows us to link individual physical things (disk, partition,
slice) to zpools AND assign vdev redundancy.
What do people think about this version?
On 1/14/11 5:10 AM, Darren Kenny wrote:
Hi Drew,
Interesting way of looking at things - but - while this does work, there is a
gap in there, where you can have multiple<vdevs> under the<zpool>:
<zpool>
<vdev redundency="mirror">
<device_ref .. />
<device_ref .. />
</vdev>
<vdev redundency="mirror">
<device_ref .. />
<device_ref .. />
</vdev>
<vdev redundency="spare">
<device_ref .. />
<device_ref .. />
</vdev>
</zpool>
Unfortunately I think this would be too difficult to achieve using your
approach.
-Drew
_______________________________________________
caiman-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/caiman-discuss