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

Linstor-Satellite pod zfs create results in invalid arg. #635

Closed
Smithx10 opened this issue Apr 2, 2024 · 3 comments
Closed

Linstor-Satellite pod zfs create results in invalid arg. #635

Smithx10 opened this issue Apr 2, 2024 · 3 comments

Comments

@Smithx10
Copy link

Smithx10 commented Apr 2, 2024

Looks like the zfs create command being used in the linstor-satellite pods fail with invalid arg. From my testing inside the pod changing the "size" of the volume to something else.

Inside the Pod with zfs 2.0.3-9

root@use1-nvme-01:/# zfs --version
zfs-2.0.3-9+deb11u1
zfs-kmod-2.2.2-1
root@use1-nvme-01:/# zfs create -V 20976040KB data/linstor/pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460_0000
internal error: cannot create 'data/linstor/pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460_0000': Invalid argument
Aborted

From the host with zfs-2.2.2-1

root@use1-nvme-01:/var/log/linstor-satellite# zfs --version
zfs-2.2.2-1
zfs-kmod-2.2.2-1
root@use1-nvme-01:/var/log/linstor-satellite# zfs create -V 20976040KB data/linstor/pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460_0000
root@use1-nvme-01:/var/log/linstor-satellite#
root@use1-nvme-01:/var/log/linstor-satellite# cat ErrorReport-660B38F7-271BC-000017.log
ERROR REPORT 660B38F7-271BC-000017

============================================================

Application:                        LINBIT? LINSTOR
Module:                             Satellite
Version:                            1.26.1
Build ID:                           12746ac9c6e7882807972c3df56e9a89eccad4e5
Build time:                         2024-02-22T05:27:50+00:00
Error time:                         2024-04-01 23:18:16
Node:                               use1-nvme-01
Thread:                             DeviceManager

============================================================

Reported error:
===============

Category:                           LinStorException
Class name:                         StorageException
Class canonical name:               com.linbit.linstor.storage.StorageException
Generated at:                       Method 'checkExitCode', Source file 'ExtCmdUtils.java', Line #69

Error message:                      Failed to create zfsvolume

Error context:
        An error occurred while processing resource 'Node: 'use1-nvme-01', Rsc: 'pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460''
ErrorContext:
  Details:     Command 'zfs create -V 20976040KB data/linstor/pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460_00000' returned with exitcode 134.

Standard out:


Error message:
internal error: cannot create 'data/linstor/pvc-28ba3115-a7ea-44d4-93aa-12473a9e3460_00000': Invalid argument




Call backtrace:

    Method                                   Native Class:Line number
    checkExitCode                            N      com.linbit.extproc.ExtCmdUtils:69
    genericExecutor                          N      com.linbit.linstor.storage.utils.Commands:103
    genericExecutor                          N      com.linbit.linstor.storage.utils.Commands:63
    genericExecutor                          N      com.linbit.linstor.storage.utils.Commands:51
    create                                   N      com.linbit.linstor.layer.storage.zfs.utils.ZfsCommands:92
    createLvImpl                             N      com.linbit.linstor.layer.storage.zfs.ZfsProvider:254
    createLvImpl                             N      com.linbit.linstor.layer.storage.zfs.ZfsProvider:67
    createVolumes                            N      com.linbit.linstor.layer.storage.AbsStorageProvider:620
    process                                  N      com.linbit.linstor.layer.storage.AbsStorageProvider:413
    process                                  N      com.linbit.linstor.layer.storage.StorageLayer:332
    process                                  N      com.linbit.linstor.core.devmgr.DeviceHandlerImpl:898
    processChild                             N      com.linbit.linstor.layer.drbd.DrbdLayer:325
    adjustDrbd                               N      com.linbit.linstor.layer.drbd.DrbdLayer:458
    process                                  N      com.linbit.linstor.layer.drbd.DrbdLayer:251
    process                                  N      com.linbit.linstor.core.devmgr.DeviceHandlerImpl:898
    processResourcesAndSnapshots             N      com.linbit.linstor.core.devmgr.DeviceHandlerImpl:344
    dispatchResources                        N      com.linbit.linstor.core.devmgr.DeviceHandlerImpl:180
    dispatchResources                        N      com.linbit.linstor.core.devmgr.DeviceManagerImpl:328
    phaseDispatchDeviceHandlers              N      com.linbit.linstor.core.devmgr.DeviceManagerImpl:1156
    devMgrLoop                               N      com.linbit.linstor.core.devmgr.DeviceManagerImpl:756
    run                                      N      com.linbit.linstor.core.devmgr.DeviceManagerImpl:650
    run                                      N      java.lang.Thread:829

END OF ERROR REPORT.

@WanzenBug
Copy link
Member

Hi!
We recently updated the base image for the satellite from debian 11 to 12. You might have more luck with that. You can overide the default image versions by adding a section to the piraeus-operator-image-config ConfigMap:

---
...
data:
   ...
   1_override.yaml: |
     base: quay.io/piraeusdatastore
     components:
       linstor-controller:
         image: piraeus-server
         tag: v1.27.0
       linstor-satellite:
         image: piraeus-server
         tag: v1.27.0

If you use something like Helm for deployment, you can provide the overrides as values following the commented out example here: https://github.com/piraeusdatastore/piraeus-operator/blob/v2/charts/piraeus/values.yaml#L101-L108

@Smithx10
Copy link
Author

Smithx10 commented Apr 3, 2024

Bumped the images to the latest version: Still getting invalid arg inside the container.

kubectl exec'd into the container attempting to run the create command

root@use1-nvme-01:/# zfs create -V 20976040KB data/linstor/pmt -vvvvvvv
create data/linstor/pmt
        volsize=21479464960
        refreservation=29313520981
internal error: cannot create 'data/linstor/pmt': Invalid argument
Aborted
root@use1-nvme-01:/# zfs --version
zfs-2.1.11-1
zfs-kmod-2.2.2-1

From the host

root@use1-nvme-01:/var/log/linstor-satellite# zfs --version
zfs-2.2.2-1
zfs-kmod-2.2.2-1

root@use1-nvme-01:/var/log/linstor-satellite# zfs create -V 20976040KB data/linstor/pmt -vvvvvvv
create data/linstor/pmt
        volsize=21479473152
        refreservation=21817901056

@WanzenBug
Copy link
Member

Bumped the zfs tools again: piraeusdatastore/piraeus@025a367

This seems to have resolved the issue.

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

2 participants