Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vdo command on centos stream 9 not found after install #42

Open
HarryZalessky opened this issue Jan 9, 2022 · 11 comments
Open

vdo command on centos stream 9 not found after install #42

HarryZalessky opened this issue Jan 9, 2022 · 11 comments
Assignees

Comments

@HarryZalessky
Copy link

After installing vdo and kmod-kvdo on centos stream 9, trying to run vdo gives error "-bash: vdo: command not found".
vdo and kvdo versions 8.1.0.316, release 1.el9.1.

@RangerVzla
Copy link

Same issues on debian 10 and debian 11.2

@rhawalsh
Copy link
Member

Hello.

Starting in RHEL9 (VDO versions starting with 8.1.x.x), the python based VDO manager code is no longer going to be shipped. Instead, users should be using the LVM-VDO implentation. I was hoping to be able to provide you with a better format response from the RHEL9-beta docs, but I'm having some trouble locating the right place to reference (I will be following up on that)... For now, see the Doc Text field in BZ1949159.

Here is a shortcut for guidance on creating a new LVM-VDO volume (assuming /dev/sdb):

pvcreate /dev/sdb
vgcreate vg_name /dev/sdb
lvcreate --type vdo -l 95%FREE -V 1T -n vdo_name vg_name/vdo_pool_name
  • This would create a 1T LVM-VDO volume named vdo_name in the volume grouped named vg_name. Note that it uses 95%FREE to allow for recovery in the event that you need to expand the volume due to physical space usage.

We have delivered (with LVM) the ability to convert a previously created VDO volume in the 6.2.5 release (BZ1930261). If you have the lvm_import_vdo utility on your system (and VDO version 6.2.5 or higher), then you can convert from a python-based VDO manager managed volume to and LVM managed volume.

@RangerVzla
Copy link

thanks!! i do it and it works...
but now my vdo doesn't deduplicate data
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert VDOCompression VDODeduplication
vdolv vgdo vwi-XXv-X- 8,00g vpool0 enabled enabled
vpool0 vgdo dwi-XX--X- 7,00g enabled enabled

compresion and daduplication are enabled both, everything seems to be ok .
I'm using debian 11.2
what can i do?

@rhawalsh
Copy link
Member

rhawalsh commented Jan 19, 2022

Hi @RangerVzla ,

That's interesting... If you check your dmesg output, do you see an entry that says Setting UDS index target state to online? If so, then I'd request that you take a look at vdostats --verbose | grep dedupe after writing the same file a couple of times and noting whether you see dedupe advice valid continue to increase. If that statistic is increasing, then you're getting some deduplication and perhaps you're not getting the amount of savings you might be expecting.

If you aren't sure what kind of space savings you should be getting, you can take a look at the vdoestimator project to get an estimate on what your data may actually get.

@madmax01
Copy link

i remember in the Past when i used LVM i had troubles with the "Discard",..... deleted blocks not covered...... so i removed any LVM and used the Device directly... not seeing the Point why to use an LVM where it's not necessary.. just an extra Layer of possible Issues and Overhead.

is the Pre-8 VDO still working with non-lvm?

@rhawalsh
Copy link
Member

rhawalsh commented May 6, 2022

i remember in the Past when i used LVM i had troubles with the "Discard",..... deleted blocks not covered...... so i removed any LVM and used the Device directly... not seeing the Point why to use an LVM where it's not necessary.. just an extra Layer of possible Issues and Overhead.

is the Pre-8 VDO still working with non-lvm?

Yes, if you install a 6.x.x.x version of kvdo/vdo, then you will still have the python VDO Manager code available to use.

@kkniggatt
Copy link

Hmmm... it appears I missed the memo about the deprecation of the vdo command, and now I'm sitting at a workstation just upgraded to RHEL9 (fresh installation with system volumes formatted and overwritten, but data volumes retained) with a couple of VDO volumes inaccessible. While the lvm_import_vdo command is shipped with RHEL9, it looks like it requires vdo to work.

/sbin/lvm_import_vdo: line 287: vdo: command not found

Would pulling the el8 version of vdo over to this machine work, or am I stuck trying to boot to an el8 live CD or something?

@lorelei-sakai
Copy link
Member

Using the el8 version of the vdo script is very likely to work. You might run into some python version issues since the default python version for RHEL9 is newer, but it should be fairly easy to work around. I don't think we've actually tried this out, though.

Booting the machine with RHEL8 to do the conversion is the preferred method since we've tested that fairly thoroughly, but I can understand not wanting to go through that hassle if you don't have to.

@kkniggatt
Copy link

I'm currently trying to get an AlmaLinux 8.6 Live Image working to see if that's viable. I first tried Fedora 30 because the vdo README has that as the last Fedora to support vdo 6.2, but it doesn't have a new enough lvm2.

I would suggest putting some message in the el7 and el8 versions of vdo warning of this often and loudly. I'm glad I found this on my workstation before trying on a server. Or, at least include enough of the vdo script in el9 for the conversion to run.

@kkniggatt
Copy link

So, just to update, the AlmaLinux 8.6 Live Image approach did work. It was slightly annoying, as you had to install all of the vdo stuff, but it got the conversion done.

I still would request that at the very least warnings be inserted in the el7 and el8 versions of vdo screaming that vdo is deprecated and volumes need to be converted.

But, as frustrating as this was, the new format is very nice. I'm all about not having to worry about vdoconf.yml! I just wish it wasn't a surprise.

@lorelei-sakai
Copy link
Member

I'm glad to hear that it worked.

We'll certainly take a look at what we can do to make the upgrade requirements clearer and to ease that transition.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants