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

GlusterFS support breaks at upgrade to 2.12 (switches back to sharedfile from itself) #1086

Closed
Ganeti-Issues-Migrator opened this issue Jun 24, 2017 · 5 comments

Comments

@Ganeti-Issues-Migrator
Copy link

Ganeti-Issues-Migrator commented Jun 24, 2017

Originally reported of Google Code with ID 1030.

What software version are you running?
2.12 from PPA pkg-ganeti-devel

<b>What distribution are you using?</b>
Ubuntu 14.04

<b>What steps will reproduce the problem?</b>
1. Get a running 2.11 cluster with VMs on GlusterFS storage
2. Upgrade: install 2.12 from PPA (alongside 2.11); run gnt-cluster upgrade --to 2.12
3. All actions involving storage will fail with (uuid changing ofc):
Path 'ganeti/5aea1aa3-8e86-46a3-b03b-fc843fb9ae17.0' uses a forbidden prefix

<b>What is the expected output? What do you see instead?</b>
Should work like before (but on new ganeti), without crash.

<b>Please provide any additional information below.</b>
In fact the dev_type parameter for the disks cannot stay on "gluster" and switches back to "sharedfile" every time, silently.

I use this to "fix" the config file:
sed -i 's/"dev_type":"sharedfile"/"dev_type":"gluster"/g' /var/lib/ganeti/config.data
but after restarting everything or even just doing a redist-conf, "sharedfile" is back.

I suspect that some validation code has no idea about gluster and feels clever to "fix" to sharedfile. At least, downgrading to 2.11 and after the sed step it works like before and disk type (as shown by gnt-instance for example) is indeed "gluster".

I hope this is a trivial bug as only few code here was changed between the two versions (at least in filestorage.py, gluster.py, bdev.py). Looking for a 2.12.1 with fix :)


Originally added on 2015-02-19 13:15:57 +0000 UTC.

@Ganeti-Issues-Migrator
Copy link
Author

-- Empty comment --

Originally added on 2015-04-08 13:53:00 +0000 UTC.

Added Labels: SmallTask Type-Defect Priority-Medium Component-storage
Added to Milestone: Release2.12

@Ganeti-Issues-Migrator
Copy link
Author

I am trying to fix this issue. Mark started.

Originally added on 2015-04-17 04:27:33 +0000 UTC.

@Ganeti-Issues-Migrator
Copy link
Author

-- Empty comment --

Originally added on 2015-05-13 14:32:13 +0000 UTC.

Changed State: Started

@Ganeti-Issues-Migrator
Copy link
Author

Fixed with:

commit 4431be3e2e6507608ffbb2c1d025ea5bdb802fd8
Author: Dimitris Bliablias <bl.dimitris@gmail.com>
Date:   Mon May 18 15:01:52 2015 +0200

    Add a unit test for the Gluster storage type
    
    This patch, extends the 'ganeti.utils.storage_unittest.py' unit test
    with a new test for the Gluster storage type. Also, the current unit
    tests are updated accordingly to correspond to the latest changes.
    
    Signed-off-by: Dimitris Bliablias <bl.dimitris@gmail.com>
    Signed-off-by: Petr Pudlak <pudlak@google.com>
    Reviewed-by: Petr Pudlak <pudlak@google.com>
    
    Cherry-picked from 42fdf9d0d79fb84796ad40ff6eb8c95e3206263e
    
    Signed-off-by: Lisa Velden <velden@google.com>
    Signed-off-by: Klaus Aehlig <aehlig@google.com>
    Reviewed-by: Klaus Aehlig <aehlig@google.com>

commit ff36cacfea1427dfce64883d960cd26ff913099a
Author: Dimitris Bliablias <bl.dimitris@gmail.com>
Date:   Mon May 18 15:01:47 2015 +0200

    Add missing Gluster storage verification checks
    
    This patch, extends the file-based storage type verification checks to
    include the new Gluster storage type. Those modifications include a
    missing check for the gluster storage directory at cluster
    initialization time, and extends the 'gnt-cluster verify' command to
    also verify the gluster file-storage path.
    
    Signed-off-by: Dimitris Bliablias <bl.dimitris@gmail.com>
    Signed-off-by: Petr Pudlak <pudlak@google.com>
    Reviewed-by: Petr Pudlak <pudlak@google.com>
    
    Cherry-picked from 604c8be2596195d94efcd96f286542f74912b2e5
    
    Signed-off-by: Lisa Velden <velden@google.com>
    Signed-off-by: Klaus Aehlig <aehlig@google.com>
    Reviewed-by: Klaus Aehlig <aehlig@google.com>

commit f051798105d15fe3a9f2592976cc80df62b73360
Author: Dimitris Bliablias <bl.dimitris@gmail.com>
Date:   Mon May 18 15:01:43 2015 +0200

    Add Gluster type to the node storage reporting set
    
    This patch, adds the 'gluster' storage type to the set of storage types
    for which full node storage reporting is available. This set is used by
    the 'LUNodeQueryStorage' logical unit for getting information on storage
    units on node(s).
    
    Signed-off-by: Dimitris Bliablias <bl.dimitris@gmail.com>
    Signed-off-by: Petr Pudlak <pudlak@google.com>
    Reviewed-by: Petr Pudlak <pudlak@google.com>
    
    Cherry-picked from 7ec471851400cd878322712309ef996582df02f1
    
    Signed-off-by: Lisa Velden <velden@google.com>
    Signed-off-by: Klaus Aehlig <aehlig@google.com>
    Reviewed-by: Klaus Aehlig <aehlig@google.com>

commit 4cdce50390942ad14affa4af320935b0d86fae6f
Author: Dimitris Bliablias <bl.dimitris@gmail.com>
Date:   Mon May 18 15:01:36 2015 +0200

    Introduce the Gluster storage type
    
    Currently, the 'gluster' and 'sharedfile' disk templates are both mapped
    to the Shared File storage type. This compromise causes the Gluster block
    devices to be interpreted in the config as 'sharedfile' devices, instead
    of 'gluster', and subsequently to be wrongly handled as Shared File
    disks. This behavior, currently makes the 'gluster' disk template not
    functional.
    
    This patch, fixes this issue by introducing the Gluster storage type,
    which will be exclusively used by the 'gluster' disk template.
    
    Signed-off-by: Dimitris Bliablias <bl.dimitris@gmail.com>
    Signed-off-by: Petr Pudlak <pudlak@google.com>
    Reviewed-by: Petr Pudlak <pudlak@google.com>
    
    Cherry-picked from ba550291df12b129f843581c098b3896023e7d33
    
    Signed-off-by: Lisa Velden <velden@google.com>
    Signed-off-by: Klaus Aehlig <aehlig@google.com>
    Reviewed-by: Klaus Aehlig <aehlig@google.com>

Originally added on 2015-05-19 14:38:12 +0000 UTC.

Changed State: Fixed

@Ganeti-Issues-Migrator
Copy link
Author

Released as part of 2.14.0

Originally added on 2015-06-02 10:38:33 +0000 UTC.

Changed State: Released

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

No branches or pull requests

1 participant