-
Notifications
You must be signed in to change notification settings - Fork 59
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
storage: resize function for xfs FS can not work #119
Comments
That's because Blivet (storage library used by this role) currently doesn't support resizing of XFS filesystem: storaged-project/blivet#859 |
The storage library fixed the issue 10 days ago, could you update the role to pull in the fix please? |
@ashleykleynhans unfortunately no, because the role does not include the storage library, it uses whatever version of the library is found on the managed system. |
So if the updated storage library is installed on the managed system, this is basically a non-issue? Or will the role still not support it? |
I hope that the storage role will pick the updated functionality automatically - @dwlehman is that the case please? |
Yes, it should happen automatically with an updated blivet. |
|
@pcahyna @dwlehman installing the latest blivet doesn't work because of the following:
Can we have an option to not install the blivet package from the repos, and can you rename the blivet.py library to something else that does not conflict with the blivet pip package please? |
I don't see how the name of the blivet.py module could only be a problem when the blivet rpm is absent. I think if it were a problem it would also be a problem when the OS package is installed. I can tell you that the pip package is not usable unless you already have all of the dependencies installed locally. We just discovered this recently and resolving it will not be trivial. There is a blivet-3.3.0 package in Fedora 33 repositories now AFAIK. I don't know if you're in a position to install that, or whether it will work on earlier Fedora releases. |
@dwlehman the rpm installs a python package called blivet3, which does not conflict with the library name of blivet, hence it is a non issue for the rpm. However when installing blivet using pip, the python package is simply called blivet, and not blivet3, which is why it conflicts. Unfortunately I am not using Fedora, I am using CentOS so not in a position to use the package in the Fedora repos. The CentOS 8 package for blivet is only version 3.1.0, which is around 2 years old and does not contain the fix:
|
That rpm is not called blivet3 ; it is called python3-blivet (python3, not blivet3). Am I missing something? In RHEL/CentOS 8 it should be called I will try to get you some idea of when the xfs resize feature will land in CentOS 8. |
Seems the problem only occurs when installing the blivet python library using pip then. It would be great if you could get me info on when it will land in CentOS 8, thanks 👍 |
Seems the latest version of the role can only manage new storage volume groups, logical volumes and disks, and not existing ones? I was able to successfully manage and resize a new logical volume within a new volume group, but was not able to manage existing ones. |
I understand you cannot seem to get it to manage some existing volume group(s). Can you provide your playbook and a link to the /tmp/blivet.log you find (on the managed node) after reproducing the failure? |
Log file attached. Playbook calls lots of different roles and things, but: group_vars:
and:
My role just basically installs the blivet pip module: The above fails with:
and the additional 10GB disk (vdb) is not being allocated to the volume group:
51GB is just the primary disk (/dev/vda) |
Ah, so what is not happening is the |
#166 logged for the new bug, thanks. |
Has anyone figured out how to do online resizing of XFS? I can't make it work. For example on EL9 (Blivet 3.6.0) the module blows up saying that the file system need to be unmounted for an offline resize to work. The code got merged in 2020 in Blivet: storaged-project/blivet#872 |
Everything should be in place, the XFS grow code storaged-project/blivet@8581a9e, along with the fix storaged-project/blivet@bf2d1f4 and the support for managing pool members at 956ff67 so this should work out of the box. |
Ok I figured out, the
|
I believe #356 added support for online resize, but yes, it depends on the functionality in the underlying blivet |
@scaronni so does the storage role online resize work if you have the right version of blivet? |
We're waiting for some internal gating to get us the latest snapshots based on 8.9/9.3 (non CentOS Stream), then I will test again. |
Will be nice to see some movement on this, its been more than 3 years. |
It should work with the latest storage system role and the right version of blivet |
8.9 does not contain the necessary version that is in CentOS Stream, so resizing on RHEL 8.9 or derivatives is still not a thing. |
Sorry looked while the mirror were updating. Both 9.3 and 8.9 contain the necessary blivet packages required for resizing filesystems online. I've tested it both on el8 and el9 and I can confirm that as long as the distributions are 8.9+ or 9.3+ online resize works just fine! I think this ticket can be closed? |
Yes - thank you for confirming. |
Pulled #97 to local test ,found the resize function does not work when the file system type is xfs.
In fact, the size of the lv capacity has not changed when do resize from 10g to 15g,but the result output by the terminal shows passed.
BTW,resize function for ext2/ext3/ext4 works well.
environment: RHEL-8.2
playbook
eg:ext4's actions
"blivet_output": {
"actions": [
{
"action": "resize device",
"device": "/dev/mapper/foo-test1",
"fs_type": null
},
{
"action": "resize format",
"device": "/dev/mapper/foo-test1",
"fs_type": "ext4"
}
],
but xfs's actions shows empty
output log
The text was updated successfully, but these errors were encountered: