(some reshuffling) |
|||
(9 intermediate revisions by 3 users not shown) | |||
Line 10: | Line 10: | ||
== Current status == | == Current status == | ||
* Targeted release: [[Releases/13 | Fedora 13 ]] | * Targeted release: [[Releases/13 | Fedora 13 ]] | ||
* Last updated: 2010- | * Last updated: 2010-02-16 | ||
* Percentage of completion: | * Percentage of completion: 100% | ||
The new user interface has been included in gnome-disk-utility 2.29. | The new user interface has been included in gnome-disk-utility 2.29. | ||
The LVM and remote access support has | The LVM and remote access support has been in rawhide for a while. | ||
The multipath support has landed in rawhide too. | |||
== Detailed Description == | == Detailed Description == | ||
Line 22: | Line 22: | ||
The palimpsest user interface in Fedora 12 works great for single-user machines and laptops, but it has some scalability issues on systems with many disks and partitions. It also has no notion of enclosures, expanders and similar contraptions that you meet when dealing with external storage. These problems have been addresses with a new user interface in gnome-disk-utility 2.29. The user interface has been improved in several other aspects as well, such as friendlier representation of S.M.A.R.T. information, and a nice way to benchmark disk performance. | The palimpsest user interface in Fedora 12 works great for single-user machines and laptops, but it has some scalability issues on systems with many disks and partitions. It also has no notion of enclosures, expanders and similar contraptions that you meet when dealing with external storage. These problems have been addresses with a new user interface in gnome-disk-utility 2.29. The user interface has been improved in several other aspects as well, such as friendlier representation of S.M.A.R.T. information, and a nice way to benchmark disk performance. | ||
The device-mapper stack was not properly integrated with udev in time for F12. This integration has happened in now, so udisks and palimpsest can support LVM and multipath devices. | The device-mapper stack was not properly integrated with udev in time for F12. This integration has happened in now, so udisks and palimpsest can support LVM and multipath devices. 'multipath' means that a storage device has multiple connections ('paths') to the computer. This can be done to increase performance or to improve fail-safety. Multipath configurations are most common with storage technologies such as iSCSI, fiber channel or SAS. | ||
For LVM, palimpsest shows an icon for each VG in the "Storage Devices" tree-view, just like it already shows one for each MD RAID array. When a VG is selected, palimpsest lets you start/stop it and add/remove or migrate PVs. If the VG is running, | |||
palimpsest shows a graphical representation of all logical volumes and the unused space, and lets you create, delete, format, mount, unmount and rename volumes. | |||
For multipath devices, palimpsest shows both the multipath device as well as the individual 'paths' in its tree-view. When an individual path is selected, it warns you that this path is part of a multipath device. When palimpsest finds devices that appear to be paths to a multipath device (ie identical VPD) with no corresponding multipath device, it warns about possible system misconfiguration. | |||
Finally, while doing this work, David found time to implement a simple remote access facility for udisks, which allows a palimpsest application running on one machine to interact with the udisks daemon on another machine. The remote access is tunnelled over ssh. The service is advertised via avahi, which allows palimpsest to show a nice browsable interface to connect to available udisks services. | Finally, while doing this work, David found time to implement a simple remote access facility for udisks, which allows a palimpsest application running on one machine to interact with the udisks daemon on another machine. The remote access is tunnelled over ssh. The service is advertised via avahi, which allows palimpsest to show a nice browsable interface to connect to available udisks services. | ||
Line 64: | Line 69: | ||
# Verify that you can start/stop volume groups and mount/unmount/stop/format logical volumes | # Verify that you can start/stop volume groups and mount/unmount/stop/format logical volumes | ||
Testing multipath support: | Testing multipath support: | ||
# Prerequisites: | |||
#* A computer with multipath storage devices | |||
#* udisks and gnome-disk-utility packages installed | |||
# Run palimpsest. | |||
# Find your multipath device and its individual paths in the device tree | |||
# Verify that palimpsest tells you that the individual paths belong to a multipath device, and offers you to go there | |||
# Destroy all multipath mappings, using 'multipath -F' in a terminal | |||
# Notice that palimpsest warns you about a possible multipath misconfiguration | |||
# Recreate the mappings, using 'multipath' in a terminal | |||
# Notice that palimpsest picks up the configuration changes without a restart | |||
Testing remote access: | Testing remote access: | ||
Line 83: | Line 98: | ||
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice. --> | <!-- If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice. --> | ||
<gallery> | <gallery perrow="4"> | ||
Image:gdu-multiple-servers.png|Connecting to a server | Image:gdu-multiple-servers.png|Connecting to a server | ||
Image:benchmark2.png|Measuring disk performance | Image:benchmark2.png|Measuring disk performance | ||
Image:lvm2-default-fedora-install.png|A default Fedora installation with LVM | Image:lvm2-default-fedora-install.png|A default Fedora installation with LVM | ||
Image:gdu-alignment-offset-warning.png|Warning about misaligned partitions | |||
Image:multipath-support1.png|A multipath device | |||
Image:multipath-support2.png|An individual path | |||
Image:multipath-support3.png|Misconfiguration warning | |||
</gallery> | </gallery> | ||
Line 108: | Line 127: | ||
See http://git.gnome.org/browse/gnome-disk-utility/tree/src/gdu/gdu-ssh-bridge.c#n41 for a description of the technical details of the remote access protocol. | See http://git.gnome.org/browse/gnome-disk-utility/tree/src/gdu/gdu-ssh-bridge.c#n41 for a description of the technical details of the remote access protocol. | ||
== Known limitations/future work == | |||
For the LVM support: | |||
* There's currently no way to resize a LV | |||
* There's currently no way to reduce a VG / move data off PVs | |||
* We don't show the relationship between LVs and PVs. Ideally we'd show how extents from PVs are mapped to LVs | |||
* We don't convey if a LV is striped or mirrored (or other topology) | |||
* We don't convey if an operation is currently underway (say, pvmove) | |||
* There is no way to actually create a VG (like e.g. "File->Create->RAID Array..." for MD RAID) | |||
* Other advanced LVM features may be missing | |||
== Release Notes == | == Release Notes == | ||
Line 119: | Line 150: | ||
* See [[Talk:Features/UdisksImprovements]] <!-- This adds a link to the "discussion" tab associated with your page. This provides the ability to have ongoing comments or conversation without bogging down the main feature page --> | * See [[Talk:Features/UdisksImprovements]] <!-- This adds a link to the "discussion" tab associated with your page. This provides the ability to have ongoing comments or conversation without bogging down the main feature page --> | ||
[[Category:FeatureAcceptedF13]] | |||
[[Category: | |||
<!-- When your feature page is completed and ready for review --> | <!-- When your feature page is completed and ready for review --> | ||
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler --> | <!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler --> | ||
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete--> | <!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete--> | ||
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process --> | <!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process --> |
Latest revision as of 21:27, 16 February 2010
Udisks Improvements
Summary
Add support for LVM (and various other improvements) to the udisks and gnome-disk-utility stack
Owner
- Name: David Zeuthen
- Email: davidz@redhat.com
Current status
- Targeted release: Fedora 13
- Last updated: 2010-02-16
- Percentage of completion: 100%
The new user interface has been included in gnome-disk-utility 2.29. The LVM and remote access support has been in rawhide for a while. The multipath support has landed in rawhide too.
Detailed Description
The palimpsest user interface in Fedora 12 works great for single-user machines and laptops, but it has some scalability issues on systems with many disks and partitions. It also has no notion of enclosures, expanders and similar contraptions that you meet when dealing with external storage. These problems have been addresses with a new user interface in gnome-disk-utility 2.29. The user interface has been improved in several other aspects as well, such as friendlier representation of S.M.A.R.T. information, and a nice way to benchmark disk performance.
The device-mapper stack was not properly integrated with udev in time for F12. This integration has happened in now, so udisks and palimpsest can support LVM and multipath devices. 'multipath' means that a storage device has multiple connections ('paths') to the computer. This can be done to increase performance or to improve fail-safety. Multipath configurations are most common with storage technologies such as iSCSI, fiber channel or SAS.
For LVM, palimpsest shows an icon for each VG in the "Storage Devices" tree-view, just like it already shows one for each MD RAID array. When a VG is selected, palimpsest lets you start/stop it and add/remove or migrate PVs. If the VG is running, palimpsest shows a graphical representation of all logical volumes and the unused space, and lets you create, delete, format, mount, unmount and rename volumes.
For multipath devices, palimpsest shows both the multipath device as well as the individual 'paths' in its tree-view. When an individual path is selected, it warns you that this path is part of a multipath device. When palimpsest finds devices that appear to be paths to a multipath device (ie identical VPD) with no corresponding multipath device, it warns about possible system misconfiguration.
Finally, while doing this work, David found time to implement a simple remote access facility for udisks, which allows a palimpsest application running on one machine to interact with the udisks daemon on another machine. The remote access is tunnelled over ssh. The service is advertised via avahi, which allows palimpsest to show a nice browsable interface to connect to available udisks services.
Benefit to Fedora
Fedora gains a more uniform disk management solution that is well-integrated in the GNOME desktop. Considering that LVM is still enabled by default in new installations, having well-integrated LVM support in the desktop seems like a big benefit.
Scope
- udev/device-mapper integration needs to happen (it already has)
- new udisks and gnome-disk-utility releases with the added features need to happen
How To Test
Testing LVM support:
- Prerequisites:
- A LVM-based installation
- udisks and gnome-disk-utility packages installed
- Run palimpsest, (in the menus as Applications → System Tools → Disk Utility
- Verify that your volume groups appear in the list
- Select a volume group
- Verify that the graphic representation shows the logical volumes in the selected volume group
- Verify that you can start/stop volume groups and mount/unmount/stop/format logical volumes
Testing multipath support:
- Prerequisites:
- A computer with multipath storage devices
- udisks and gnome-disk-utility packages installed
- Run palimpsest.
- Find your multipath device and its individual paths in the device tree
- Verify that palimpsest tells you that the individual paths belong to a multipath device, and offers you to go there
- Destroy all multipath mappings, using 'multipath -F' in a terminal
- Notice that palimpsest warns you about a possible multipath misconfiguration
- Recreate the mappings, using 'multipath' in a terminal
- Notice that palimpsest picks up the configuration changes without a restart
Testing remote access:
- Prerequisites:
- Two machines on same local network
- avahi browsing working between the two machines (i.e. no firewalls)
- udisks installed on both, palimpsest at least on one (the client)
- ssh access between the two machines
- Make sure both machines are running udisks
- Run palimpsest on the client
- Open the Connect to Server dialog, click on Browse...
- Verify that the other machine (the server) appears in the list of servers
- Select it
- Verify that the disks of the server appear in the list, and that you can inspect their properties
- Making changes (mounting/umounting/formatting, etc) should only work if you connected as root (i.e. entered 'root' as the user name in the Connect to Server dialog)
User Experience
-
Connecting to a server
-
Measuring disk performance
-
A default Fedora installation with LVM
-
Warning about misaligned partitions
-
A multipath device
-
An individual path
-
Misconfiguration warning
More screenshots of the new user interface with explanations can be found here.
Dependencies
None, beyond udev/device-mapper integration, which has already landed.
Contingency Plan
This feature is somewhat incremental. The new user interface has already landed. If LVM support is not ready in time, we can just ship with the new user interface. If LVM and remote access land, but multipath support is delayed beyond feature freeze, we can ship without multipath support.
Documentation
See http://git.gnome.org/browse/gnome-disk-utility/tree/src/gdu/gdu-ssh-bridge.c#n41 for a description of the technical details of the remote access protocol.
Known limitations/future work
For the LVM support:
- There's currently no way to resize a LV
- There's currently no way to reduce a VG / move data off PVs
- We don't show the relationship between LVs and PVs. Ideally we'd show how extents from PVs are mapped to LVs
- We don't convey if a LV is striped or mirrored (or other topology)
- We don't convey if an operation is currently underway (say, pvmove)
- There is no way to actually create a VG (like e.g. "File->Create->RAID Array..." for MD RAID)
- Other advanced LVM features may be missing
Release Notes
The udisks storage daemon supports LVM and multipath devices in Fedora 13. The palimpsest tool provides a graphical user interface to these features. It has also seen several other user interface improvements, and optionally allows remote access now.