2016-10-17 09:07:30 |
Christian Schwede |
description |
There is a parameter "SwiftRawDisks" that could be uses to define disks to be used by Swift as storage device.
However, it doesn't work properly: defining SwiftRawDisks adds the given device to the rings, but the device "d1" still exists, and this is just a local directory, stored on the root disk. This was unexpected; IMO the device d1 should not be used if raw disks for Swift are defined, because there is a risk to overfill the root disk and create additional I/O load on the root disk.
The XFS filesystems on the raw disks are neither created and mounted, so you have to manually workaround this.
I used this template:
parameter_defaults:
SwiftRawDisks: {"vdb": {}}
Using the following template everything worked as expected:
parameter_defaults:
controllerExtraConfig:
swift::storage::disks::args: {"vdb": {}}
tripleo::profile::base::swift::ringbuilder::raw_disks: [':%PORT%/vdb'] |
There is a parameter "SwiftRawDisks" that could be used to define disks to be used by Swift as storage device.
However, it doesn't work properly: defining SwiftRawDisks adds the given device to the rings, but the device "d1" still exists, and this is just a local directory, stored on the root disk. This was unexpected; IMO the device d1 should not be used if raw disks for Swift are defined, because there is a risk to overfill the root disk and create additional I/O load on the root disk.
The XFS filesystems on the raw disks are neither created and mounted, so you have to manually workaround this.
I used this template:
parameter_defaults:
SwiftRawDisks: {"vdb": {}}
Using the following template everything worked as expected:
parameter_defaults:
controllerExtraConfig:
swift::storage::disks::args: {"vdb": {}}
tripleo::profile::base::swift::ringbuilder::raw_disks: [':%PORT%/vdb']
However, defining these manually might be error-prone, using the single parameter "SwiftRawDisks" seems to be a better approach. |
|