General guidelines for troubleshooting
- Contact OpenEBS Community for support.
- Search for similar issues added in this troubleshootiung section.
- Search for any reported issues on StackOverflow under OpenEBS tag
One additional disk is connected to the node, with multiple partitions on the disk. Some of the partitions have a filesystem and is mounted. Blockdevices are not detected by NDM
kubectl get bd -n openebsdoes not show any blockdevices. Ideally the blockdevice resources for the partitions should have been shown.
NAME FSTYPE MOUNTPOINT SIZE sda 1.8T ├─sda1 500G ├─sda2 500G ├─sda3 500G └─sda4 ext4 /kubernetes 363G sdb 55.9G ├─sdb1 vfat /boot/efi 512M └─sdb2 ext4 / 55.4G
Check the output of
lsblk on the node and check the mountpoints of the partitions. By default NDM excludes partitions mounted at
/, /boot and
/etc/hosts (which is same as the partition at which kubernetes / docker filesystem exists) and the parent disks of those partitions. In the above example
/dev/sdb is excluded because of root partitions on that disk.
/dev/sda4 contains the docker filesystem, and hence
/dev/sda is also excluded.
ndm-config-map needs to be edited.
/etc/hostsentry from the os-disk-exclude-filter
- Add the corresponding docker filesystem partition in exclude section of path filter. eg:
- Restart the NDM daemonset pods.
The blockdevices should now be created for the unused partitions.
BlockDeviceClaims may remain in pending state, even if blockdevices are available in Unclaimed and Active state. The main reason for this will be there are no blockdevices that match the criteria specified in the BlockDeviceClaim. Sometimes, even if the criteria matches the blockdevice may be in an Unclaimed state. Unable to claim blockdevices by NDM operator
Troubleshooting: Check if the blockdevice is having any of the following annotations: 1.)
metadata: annotations: internal.openebs.io/partition-uuid: <uuid> internal.openebs.io/uuid-scheme: legacy
metadata: annotations: internal.openebs.io/fsuuid: <uuid> internal.openebs.io/uuid-scheme: legacy
If 1.) is present, it means the blockdevice was previously being used by cstor and it was not properly cleaned up. The cstor pool can be from a previous release or the disk already container some zfs labels. If 2.) is present, it means the blockdevice was previously being used by localPV and the cleanup was not done on the device.
- ssh to the node in which the blockdevice is present
- If the disk has partitions, run wipefs on all the partitions
wipefs -fa /dev/sdb1 wipefs -fa /dev/sdb9
- Run wipefs on the disk
wipefs -fa /dev/sdb
- Restart NDM pod running on the node
- New blockdevices should get created for those disks and it can be claimed and used. The older blockdevices will go into an Unknown/Inactive state.