AWS NVMe support in local CSI driver#549
Conversation
|
Please update the README.md found in the chart that explains the values. So users know how to add this |
|
also, can you add something to the user-guide.md or else where explaining how to use these and what the assumptions are from the driver? (for example, these disks aren't removed/added and won't move node to node) |
Added documentation to the chart README explaining the new values and updated the user guide with usage information and driver assumptions. |
@microsoft-github-policy-service agree [company="Microsoft"] |
|
@microsoft-github-policy-service agree company="Microsoft" |
| // the defaults; empty/whitespace entries and case-insensitive duplicates are | ||
| // ignored. | ||
| func NewEphemeralDiskFilter(extraPathPrefixes, extraModels, extraTypes []string) *Filter { | ||
| pathPrefixes := appendUnique(DefaultDiskPathPrefixes, extraPathPrefixes) |
There was a problem hiding this comment.
paths are case-sensitive in linux, so this might not make sense to dedupe based upon case sensitivity
There was a problem hiding this comment.
func (f *PathFilter) Match(device block.Device) bool {
return strings.HasPrefix(device.Path, f.Path)
}this is a case-sensitive check
| # Controls which block devices the driver picks up as LVM physical volumes. | ||
| # A device must match ALL of the criteria below (path prefix AND model AND | ||
| # type). Within each list, a device matches if it satisfies ANY entry. | ||
| # Leave a list empty to disable filtering on that attribute. The defaults |
There was a problem hiding this comment.
Leaving extraModels empty does not disable model filtering — the built-in defaults always apply and can never be removed or overridden (the README correctly says "appended... they never replace them"). This comment will lead operators to expect override/disable semantics that don't exist. Also "found on Azure VMs" is now inaccurate since defaults include Amazon EC2 NVMe Instance Storage . Please reword to reflect append-only behavior and both clouds.
| flag.StringVar(&diskModels, "disk-models", "", | ||
| "Comma-separated list of additional device models to select, appended to the built-in defaults.") | ||
| flag.StringVar(&diskTypes, "disk-types", "", | ||
| "Comma-separated list of additional device types to select (e.g. loop), appended to the built-in defaults.") // Initialize logger flagsconfig. |
There was a problem hiding this comment.
The // Initialize logger flagsconfig. comment (which documents the next block) got merged onto the end of the disk-types flag line
| defaults. If your nodes expose NVMe disks with a model, path prefix, or type | ||
| that is not covered by the defaults, add the extra value(s) so they are included | ||
| alongside the defaults. Empty and case-insensitive duplicate entries are | ||
| ignored.Example: |
There was a problem hiding this comment.
Missing space/newline before "Example:".
Introduces configurable NVMe model filtering through Helm chart values. A predefined set of supported NVMe disk models is provided as the default configuration, while allowing users to extend or override the model list during installation. The configured models are passed to the driver through a CLI argument and used to construct the filter for disk discovery. This approach improves flexibility and enables support for additional NVMe disk models across cloud environments without requiring driver code changes.