Bug 1857667 - Include pre-flight check for disk block sizes for the disks used for bricks and LV cache to be identical
Summary: Include pre-flight check for disk block sizes for the disks used for bricks a...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Gluster Storage
Classification: Red Hat Storage
Component: gluster-ansible
Version: rhgs-3.5
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
: RHGS 3.5.z Async Update
Assignee: Prajith
QA Contact: SATHEESARAN
URL:
Whiteboard:
Depends On:
Blocks: 1857663
TreeView+ depends on / blocked
 
Reported: 2020-07-16 10:16 UTC by SATHEESARAN
Modified: 2020-11-24 12:38 UTC (History)
7 users (show)

Fixed In Version: gluster-ansible-roles-1.0.5-20.el8rhgs
Doc Type: No Doc Update
Doc Text:
Clone Of: 1857663
Environment:
rhhiv
Last Closed: 2020-11-24 12:37:41 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2020:5220 0 None None None 2020-11-24 12:38:06 UTC

Description SATHEESARAN 2020-07-16 10:16:21 UTC
Description of problem:
-----------------------
The precondition for the disk block size is that the disks used for volumes should be of same block size, for example, all 'vmstore' brick should be 512B, or all 'vmstore' bricks should be with block size 4KM and there is no mix that is allowed.

The statement is true for LV cache as well.(ie.) SSD can be attached to thinpool composed of bricks of same disk block size. Which means SSD of 4KB block size, can't be attached to thinpool consists of 512B disk block sized disks.

These checks should be done well before deployment and proper assertion, with proper error message should be thrown


Version-Release number of selected component (if applicable):
--------------------------------------------------------------
cockpit-ovirt-dashboard

Actual results:
---------------
No error thrown when mix of 4K and 512B disk block sized disks are used for one volume

Expected results:
-----------------
Preflight check added to validate that the gluster volumes do not contain disks of varied disk block sizes and throw proper error messages,in such situations

--- Additional comment from SATHEESARAN on 2020-07-16 10:14:47 UTC ---

Here are few examples for valid and invalid scenarios

Valid situations are:

1. 512B block sized disks used for engine volume
2. 4K block sized disks used for vmstore volume
3. 4K block sized SSD used as LV cache for thinpool composed of 4KB block sized disks
4. 512B block sized SSD used as LV cache for thinpool composed of 512B block sized disks

Invalid scenarios:

1. 'vmstore' volume configuration has bricks created out of 4KB disk block sized disk on host1, host2 and host3 is using 512B brick for arbiter.etc

Comment 1 SATHEESARAN 2020-07-16 10:17:11 UTC
Here are few examples for valid and invalid scenarios

Valid situations are:

1. 512B block sized disks used for engine volume
2. 4K block sized disks used for vmstore volume
3. 4K block sized SSD used as LV cache for thinpool composed of 4KB block sized disks
4. 512B block sized SSD used as LV cache for thinpool composed of 512B block sized disks

Invalid scenarios:

1. 'vmstore' volume configuration has bricks created out of 4KB disk block sized disk on host1, host2 and host3 is using 512B brick for arbiter.etc

Comment 2 Prajith 2020-09-18 14:13:38 UTC
PR:- https://github.com/gluster/gluster-ansible/pull/120

Comment 4 Prajith 2020-10-05 07:46:34 UTC
The packages can be downloaded from here:-

Task Info: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=31747425
Build Info: https://brewweb.engineering.redhat.com/brew/buildinfo?buildID=1340834

Comment 10 SATHEESARAN 2020-11-07 02:00:57 UTC
Tested with gluster-ansible-roles-1.0.5-22.el8rhgs

When creating the volume with its brick on disks of varied block sizes, then error is thrown with proper information

<snip>
        "item": {
            "pvname": "/dev/sdf",
            "vgname": "gluster_vg_sdf"
        },
        "rc": 0,
        "start": "2020-11-07 01:58:33.888422",
        "stderr": "",
        "stderr_lines": [],
        "stdout": "4096",
        "stdout_lines": [
            "4096"
        ]
    },
    "msg": "The logical block size of disk is not 512 bytes"


</snip>

Comment 14 errata-xmlrpc 2020-11-24 12:37:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (gluster-ansible bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:5220


Note You need to log in before you can comment on or make changes to this bug.