Ok thank-you for explaining everything - that makes sense.

Currently the brick file systems are pretty evenly distributed so I
probably won't run the fix-layout right now.

Would this state have any impact on geo-replication? I'm trying to
geo-replicate this volume, but am getting a weird error: "Changelog
register failed error=[Errno 21] Is a directory"

I assume this is related to something else, but I wasn't sure.

Thanks,
 -Matthew

--
Matthew Benstead
System Administrator
Pacific Climate Impacts Consortium <https://pacificclimate.org/>
University of Victoria, UH1
PO Box 1800, STN CSC
Victoria, BC, V8W 2Y2
Phone: +1-250-721-8432
Email: matth...@uvic.ca

On 7/26/19 12:02 AM, Nithya Balachandran wrote:
>
>
> On Fri, 26 Jul 2019 at 01:56, Matthew Benstead <matth...@uvic.ca
> <mailto:matth...@uvic.ca>> wrote:
>
>     Hi Nithya,
>
>     Hmm... I don't remember if I did, but based on what I'm seeing it
>     sounds like I probably didn't run rebalance or fix-layout.
>
>     It looks like folders that haven't had any new files created have
>     a dht of 0, while other folders have non-zero values.
>
>     [root@gluster07 ~]# getfattr --absolute-names -m . -d -e hex
>     /mnt/raid6-storage/storage/ | grep dht
>     [root@gluster07 ~]# getfattr --absolute-names -m . -d -e hex
>     /mnt/raid6-storage/storage/home | grep dht
>     trusted.glusterfs.dht=0x00000000000000000000000000000000
>     [root@gluster07 ~]# getfattr --absolute-names -m . -d -e hex
>     /mnt/raid6-storage/storage/home/matthewb | grep dht
>     trusted.glusterfs.dht=0x00000001000000004924921a6db6dbc7
>
>     If I just run the fix-layout command will it re-create all of the
>     dht values or just the missing ones?
>
>
> A fix-layout will recalculate the layouts entirely so files all the
> values will change. No files will be moved.
> A rebalance will recalculate the layouts like the fix-layout but will
> also move files to their new locations based on the new layout ranges.
> This could take a lot of time depending on the number of
> files/directories on the volume. If you do this, I would recommend
> that you turn off lookup-optimize until the rebalance is over.
>  
>
>     Since the brick is already fairly size balanced could I get away
>     with running fix-layout but not rebalance? Or would the new dht
>     layout mean slower accesses since the files may be expected on
>     different bricks?
>
>  
> The first access for a file will be slower. The next one will be
> faster as the location will be cached in the client's in-memory
> structures.
> You may not need to run either a fix-layout or a rebalance if new file
> creations will be in directories created after the add-brick. Gluster
> will automatically include all 7 bricks for those directories.
>
> Regards,
> Nithya
>
>
>     Thanks,
>      -Matthew
>
>     --
>     Matthew Benstead
>     System Administrator
>     Pacific Climate Impacts Consortium <https://pacificclimate.org/>
>     University of Victoria, UH1
>     PO Box 1800, STN CSC
>     Victoria, BC, V8W 2Y2
>     Phone: +1-250-721-8432
>     Email: matth...@uvic.ca <mailto:matth...@uvic.ca>
>
>     On 7/24/19 9:30 PM, Nithya Balachandran wrote:
>>
>>
>>     On Wed, 24 Jul 2019 at 22:12, Matthew Benstead <matth...@uvic.ca
>>     <mailto:matth...@uvic.ca>> wrote:
>>
>>         So looking more closely at the trusted.glusterfs.dht
>>         attributes from the bricks it looks like they cover the
>>         entire range... and there is no range left for gluster07.
>>
>>         The first 6 bricks range from 0x00000000 to 0xffffffff -
>>         so... is there a way to re-calculate what the dht values
>>         should be? Each of the bricks should have a gap
>>
>>         Gluster05 00000000 -> 2aaaaaa9
>>         Gluster06 2aaaaaaa -> 55555553
>>         Gluster01 55555554 -> 7ffffffd
>>         Gluster02 7ffffffe -> aaaaaaa7
>>         Gluster03 aaaaaaa8 -> d5555551
>>         Gluster04 d5555552 -> ffffffff
>>         Gluster07 None
>>
>>         If we split the range into 7 servers that would be a gap of
>>         about 0x24924924 for each server.
>>
>>         Now in terms of the gluster07 brick, about 2 years ago the
>>         RAID array the brick was stored on became corrupted. I ran
>>         the remove-brick force command, then provisioned a new
>>         server, ran the add-brick command and then restored the
>>         missing files from backup by copying them back to the main
>>         gluster mount (not the brick).
>>
>>
>>     Did you run a rebalance after performing the add-brick? Without a
>>     rebalance/fix-layout , the layout for existing directories on the
>>     volume will not  be updated to use the new brick as well.
>>
>>     That the layout does not include the new brick in the root dir is
>>     in itself is not a problem. Do you create a lot of files directly
>>     in the root of the volume? If yes, you might want to run a
>>     rebalance. Otherwise, if you mostly create files in newly added
>>     directories, you can probably ignore this. You can check the
>>     layout for directories on the volume and see if they incorporate
>>     the brick7.
>>
>>     I would expect a lookup on the root to have set an xattr on the
>>     brick with an empty layout range . The fact that the xattr does
>>     not exist at all on the brick is what I am looking into.
>>
>>
>>         It looks like prior to that event this was the layout - which
>>         would make sense given the equal size of the 7 bricks:
>>
>>         gluster02.pcic.uvic.ca <http://gluster02.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x000000010000000048bfff206d1ffe5f
>>
>>         gluster05.pcic.uvic.ca <http://gluster05.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x0000000100000000b5dffce0da3ffc1f
>>
>>         gluster04.pcic.uvic.ca <http://gluster04.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x0000000100000000917ffda0b5dffcdf
>>
>>         gluster03.pcic.uvic.ca <http://gluster03.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x00000001000000006d1ffe60917ffd9f
>>
>>         gluster01.pcic.uvic.ca <http://gluster01.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x0000000100000000245fffe048bfff1f
>>
>>         gluster07.pcic.uvic.ca <http://gluster07.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x000000010000000000000000245fffdf
>>
>>         gluster06.pcic.uvic.ca <http://gluster06.pcic.uvic.ca> |
>>         SUCCESS | rc=0 >>
>>         # file: /mnt/raid6-storage/storage
>>         trusted.glusterfs.dht=0x0000000100000000da3ffc20ffffffff
>>
>>         Which yields the following:
>>
>>         00000000 -> 245fffdf    Gluster07
>>         245fffe0 -> 48bfff1f    Gluster01
>>         48bfff20 -> 6d1ffe5f    Gluster02
>>         6d1ffe60 -> 917ffd9f    Gluster03
>>         917ffda0 -> b5dffcdf    Gluster04
>>         b5dffce0 -> da3ffc1f    Gluster05
>>         da3ffc20 -> ffffffff    Gluster06
>>
>>         Is there some way to get back to this?
>>
>>         Thanks,
>>          -Matthew
>>
>>         --
>>         Matthew Benstead
>>         System Administrator
>>         Pacific Climate Impacts Consortium <https://pacificclimate.org/>
>>         University of Victoria, UH1
>>         PO Box 1800, STN CSC
>>         Victoria, BC, V8W 2Y2
>>         Phone: +1-250-721-8432
>>         Email: matth...@uvic.ca <mailto:matth...@uvic.ca>
>>
>>         On 7/18/19 7:20 AM, Matthew Benstead wrote:
>>>         Hi Nithya,
>>>
>>>         No - it was added about a year and a half ago. I have tried
>>>         re-mounting the volume on the server, but it didn't add the
>>>         attr:
>>>
>>>         [root@gluster07 ~]# umount /storage/
>>>         [root@gluster07 ~]# cat /etc/fstab | grep "/storage"
>>>         10.0.231.56:/storage /storage glusterfs
>>>         defaults,log-level=WARNING,backupvolfile-server=10.0.231.51 0 0
>>>         [root@gluster07 ~]# mount /storage/
>>>         [root@gluster07 ~]# df -h /storage/
>>>         Filesystem            Size  Used Avail Use% Mounted on
>>>         10.0.231.56:/storage  255T  194T   62T  77% /storage
>>>         [root@gluster07 ~]# getfattr --absolute-names -m . -d -e hex
>>>         /mnt/raid6-storage/storage/
>>>         # file: /mnt/raid6-storage/storage/
>>>         
>>> security.selinux=0x756e636f6e66696e65645f753a6f626a6563745f723a756e6c6162656c65645f743a733000
>>>         trusted.gfid=0x00000000000000000000000000000001
>>>         
>>> trusted.glusterfs.6f95525a-94d7-4174-bac4-e1a18fe010a2.xtime=0x5d307baa00023ec0
>>>         trusted.glusterfs.quota.dirty=0x3000
>>>         
>>> trusted.glusterfs.quota.size.2=0x00001b71d5279e000000000000763e32000000000005cd53
>>>         trusted.glusterfs.volume-id=0x6f95525a94d74174bac4e1a18fe010a2
>>>
>>>         Thanks,
>>>          -Matthew
>>>
>>>         On 7/17/19 10:04 PM, Nithya Balachandran wrote:
>>>>         Hi Matthew,
>>>>
>>>>         Was this node/brick added to the volume recently? If yes,
>>>>         try mounting the volume on a fresh mount point - that
>>>>         should create the xattr on this as well.
>>>>
>>>>         Regards,
>>>>         Nithya
>>>>
>>>>         On Wed, 17 Jul 2019 at 21:01, Matthew Benstead
>>>>         <matth...@uvic.ca <mailto:matth...@uvic.ca>> wrote:
>>>>
>>>>             Hello,
>>>>
>>>>             I've just noticed one brick in my 7 node distribute
>>>>             volume is missing
>>>>             the trusted.glusterfs.dht xattr...? How can I fix this?
>>>>
>>>>             I'm running glusterfs-5.3-2.el7.x86_64 on CentOS 7.
>>>>
>>>>             All of the other nodes are fine, but gluster07 from the
>>>>             list below does
>>>>             not have the attribute.
>>>>
>>>>             $ ansible -i hosts gluster-servers[0:6] ... -m shell -a
>>>>             "getfattr -m .
>>>>             --absolute-names -n trusted.glusterfs.dht -e hex
>>>>             /mnt/raid6-storage/storage"
>>>>             ...
>>>>             gluster05 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x0000000100000000000000002aaaaaa9
>>>>
>>>>             gluster03 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x0000000100000000aaaaaaa8d5555551
>>>>
>>>>             gluster04 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x0000000100000000d5555552ffffffff
>>>>
>>>>             gluster06 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x00000001000000002aaaaaaa55555553
>>>>
>>>>             gluster02 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x00000001000000007ffffffeaaaaaaa7
>>>>
>>>>             gluster07 | FAILED | rc=1 >>
>>>>             /mnt/raid6-storage/storage: trusted.glusterfs.dht: No such
>>>>             attributenon-zero return code
>>>>
>>>>             gluster01 | SUCCESS | rc=0 >>
>>>>             # file: /mnt/raid6-storage/storage
>>>>             trusted.glusterfs.dht=0x0000000100000000555555547ffffffd
>>>>
>>>>             Here are all of the attr's from the brick:
>>>>
>>>>             [root@gluster07 ~]# getfattr --absolute-names -m . -d
>>>>             -e hex
>>>>             /mnt/raid6-storage/storage/
>>>>             # file: /mnt/raid6-storage/storage/
>>>>             
>>>> security.selinux=0x756e636f6e66696e65645f753a6f626a6563745f723a756e6c6162656c65645f743a733000
>>>>             trusted.gfid=0x00000000000000000000000000000001
>>>>             
>>>> trusted.glusterfs.6f95525a-94d7-4174-bac4-e1a18fe010a2.xtime=0x5d2dee800001fdf9
>>>>             trusted.glusterfs.quota.dirty=0x3000
>>>>             
>>>> trusted.glusterfs.quota.size.2=0x00001b69498a1400000000000076332e000000000005cd03
>>>>             trusted.glusterfs.volume-id=0x6f95525a94d74174bac4e1a18fe010a2
>>>>
>>>>
>>>>             And here is the volume information:
>>>>
>>>>             [root@gluster07 ~]# gluster volume info storage
>>>>
>>>>             Volume Name: storage
>>>>             Type: Distribute
>>>>             Volume ID: 6f95525a-94d7-4174-bac4-e1a18fe010a2
>>>>             Status: Started
>>>>             Snapshot Count: 0
>>>>             Number of Bricks: 7
>>>>             Transport-type: tcp
>>>>             Bricks:
>>>>             Brick1: 10.0.231.50:/mnt/raid6-storage/storage
>>>>             Brick2: 10.0.231.51:/mnt/raid6-storage/storage
>>>>             Brick3: 10.0.231.52:/mnt/raid6-storage/storage
>>>>             Brick4: 10.0.231.53:/mnt/raid6-storage/storage
>>>>             Brick5: 10.0.231.54:/mnt/raid6-storage/storage
>>>>             Brick6: 10.0.231.55:/mnt/raid6-storage/storage
>>>>             Brick7: 10.0.231.56:/mnt/raid6-storage/storage
>>>>             Options Reconfigured:
>>>>             changelog.changelog: on
>>>>             features.quota-deem-statfs: on
>>>>             features.read-only: off
>>>>             features.inode-quota: on
>>>>             features.quota: on
>>>>             performance.readdir-ahead: on
>>>>             nfs.disable: on
>>>>             geo-replication.indexing: on
>>>>             geo-replication.ignore-pid-check: on
>>>>             transport.address-family: inet
>>>>
>>>>             Thanks,
>>>>              -Matthew
>>>>             _______________________________________________
>>>>             Gluster-users mailing list
>>>>             Gluster-users@gluster.org
>>>>             <mailto:Gluster-users@gluster.org>
>>>>             https://lists.gluster.org/mailman/listinfo/gluster-users
>>>>
>>>
>>
>

_______________________________________________
Gluster-users mailing list
Gluster-users@gluster.org
https://lists.gluster.org/mailman/listinfo/gluster-users

Reply via email to