On Tue, Apr 25, 2017 at 9:18 PM, Jim Kusznir <jim(a)palousetech.com> wrote:
So with arbiter, I actually only have two copies of data...Does
arbiter
have at least checksum or something to detect corruption of a copy? (like
old RAID-4 disk configuration)?
Yes, the arbiter brick stores metadata information about the files to
decide the good copy of data stored on the replicas in case of conflict.
Ok...Related question: Is there a way to set up an offsite gluster
storage server to mirror the contents of my main server? As "fire"
insurance basically? (eventually, I'd like to have an "offsite" DR
cluster, but I don't have the resources or scale yet for that).
What I'd like to do is place a basic storage server somewhere else and
have it sync any gluster data changes on a regular basis, and be usable to
repopulate storage should I loose all of my current cluster (eg, a building
fire or theft).
Yes, the geo-replication feature can help with that. There's a remote data
sync feature introduced for gluster storage domains, that helps with this.
You can set this up such that data from your storage domain is regularly
synced to a remote gluster volume, while ensuring data consistency. The
remote gluster volume does not have to a replica 3.
I find gluster has amazing power from what I hear, but I have a hard time
finding documentation at "the right level" to be useful. I've found some
very basic introductory guide, then some very advanced guides that require
extensive knowledge of gluster already. Something in the middle to explain
some of these questions (like arbitrar and migration strategies,
geo-replication, etc; and how to deploy them) are absent (or at least, i
haven't found them yet). I still feel like I'm using something I don't
understand, and the only avenue I have to learn more is to ask questions
here, as the docs aren't at an accessible level.
Thanks for the feedback. Are you looking at documentation on a use-case
basis?
Thanks!
--Jim
On Mon, Apr 3, 2017 at 10:34 PM, Sahina Bose <sabose(a)redhat.com> wrote:
>
>
> On Sat, Apr 1, 2017 at 10:32 PM, Jim Kusznir <jim(a)palousetech.com> wrote:
>
>> Thank you!
>>
>> Here's the output of gluster volume info:
>> [root@ovirt1 ~]# gluster volume info
>>
>> Volume Name: data
>> Type: Replicate
>> Volume ID: e670c488-ac16-4dd1-8bd3-e43b2e42cc59
>> Status: Started
>> Number of Bricks: 1 x (2 + 1) = 3
>> Transport-type: tcp
>> Bricks:
>> Brick1: ovirt1.nwfiber.com:/gluster/brick2/data
>> Brick2: ovirt2.nwfiber.com:/gluster/brick2/data
>> Brick3: ovirt3.nwfiber.com:/gluster/brick2/data (arbiter)
>> Options Reconfigured:
>> performance.strict-o-direct: on
>> nfs.disable: on
>> user.cifs: off
>> network.ping-timeout: 30
>> cluster.shd-max-threads: 6
>> cluster.shd-wait-qlength: 10000
>> cluster.locking-scheme: granular
>> cluster.data-self-heal-algorithm: full
>> performance.low-prio-threads: 32
>> features.shard-block-size: 512MB
>> features.shard: on
>> storage.owner-gid: 36
>> storage.owner-uid: 36
>> cluster.server-quorum-type: server
>> cluster.quorum-type: auto
>> network.remote-dio: enable
>> cluster.eager-lock: enable
>> performance.stat-prefetch: off
>> performance.io-cache: off
>> performance.read-ahead: off
>> performance.quick-read: off
>> performance.readdir-ahead: on
>> server.allow-insecure: on
>>
>> Volume Name: engine
>> Type: Replicate
>> Volume ID: 87ad86b9-d88b-457e-ba21-5d3173c612de
>> Status: Started
>> Number of Bricks: 1 x (2 + 1) = 3
>> Transport-type: tcp
>> Bricks:
>> Brick1: ovirt1.nwfiber.com:/gluster/brick1/engine
>> Brick2: ovirt2.nwfiber.com:/gluster/brick1/engine
>> Brick3: ovirt3.nwfiber.com:/gluster/brick1/engine (arbiter)
>> Options Reconfigured:
>> performance.readdir-ahead: on
>> performance.quick-read: off
>> performance.read-ahead: off
>> performance.io-cache: off
>> performance.stat-prefetch: off
>> cluster.eager-lock: enable
>> network.remote-dio: off
>> cluster.quorum-type: auto
>> cluster.server-quorum-type: server
>> storage.owner-uid: 36
>> storage.owner-gid: 36
>> features.shard: on
>> features.shard-block-size: 512MB
>> performance.low-prio-threads: 32
>> cluster.data-self-heal-algorithm: full
>> cluster.locking-scheme: granular
>> cluster.shd-wait-qlength: 10000
>> cluster.shd-max-threads: 6
>> network.ping-timeout: 30
>> user.cifs: off
>> nfs.disable: on
>> performance.strict-o-direct: on
>>
>> Volume Name: export
>> Type: Replicate
>> Volume ID: 04ee58c7-2ba1-454f-be99-26ac75a352b4
>> Status: Stopped
>> Number of Bricks: 1 x (2 + 1) = 3
>> Transport-type: tcp
>> Bricks:
>> Brick1: ovirt1.nwfiber.com:/gluster/brick3/export
>> Brick2: ovirt2.nwfiber.com:/gluster/brick3/export
>> Brick3: ovirt3.nwfiber.com:/gluster/brick3/export (arbiter)
>> Options Reconfigured:
>> performance.readdir-ahead: on
>> performance.quick-read: off
>> performance.read-ahead: off
>> performance.io-cache: off
>> performance.stat-prefetch: off
>> cluster.eager-lock: enable
>> network.remote-dio: off
>> cluster.quorum-type: auto
>> cluster.server-quorum-type: server
>> storage.owner-uid: 36
>> storage.owner-gid: 36
>> features.shard: on
>> features.shard-block-size: 512MB
>> performance.low-prio-threads: 32
>> cluster.data-self-heal-algorithm: full
>> cluster.locking-scheme: granular
>> cluster.shd-wait-qlength: 10000
>> cluster.shd-max-threads: 6
>> network.ping-timeout: 30
>> user.cifs: off
>> nfs.disable: on
>> performance.strict-o-direct: on
>>
>> Volume Name: iso
>> Type: Replicate
>> Volume ID: b1ba15f5-0f0f-4411-89d0-595179f02b92
>> Status: Started
>> Number of Bricks: 1 x (2 + 1) = 3
>> Transport-type: tcp
>> Bricks:
>> Brick1: ovirt1.nwfiber.com:/gluster/brick4/iso
>> Brick2: ovirt2.nwfiber.com:/gluster/brick4/iso
>> Brick3: ovirt3.nwfiber.com:/gluster/brick4/iso (arbiter)
>> Options Reconfigured:
>> performance.readdir-ahead: on
>> performance.quick-read: off
>> performance.read-ahead: off
>> performance.io-cache: off
>> performance.stat-prefetch: off
>> cluster.eager-lock: enable
>> network.remote-dio: off
>> cluster.quorum-type: auto
>> cluster.server-quorum-type: server
>> storage.owner-uid: 36
>> storage.owner-gid: 36
>> features.shard: on
>> features.shard-block-size: 512MB
>> performance.low-prio-threads: 32
>> cluster.data-self-heal-algorithm: full
>> cluster.locking-scheme: granular
>> cluster.shd-wait-qlength: 10000
>> cluster.shd-max-threads: 6
>> network.ping-timeout: 30
>> user.cifs: off
>> nfs.disable: on
>> performance.strict-o-direct: on
>>
>>
>> The node marked as (arbiter) on all of the bricks is the node that is
>> not using any of its disk space.
>>
>
> This is by design - the arbiter brick only stores metadata and hence
> saves on storage.
>
>
>>
>> The engine domain is the volume dedicated for storing the hosted
>> engine. Here's some LVM info:
>>
>> --- Logical volume ---
>> LV Path /dev/gluster/engine
>> LV Name engine
>> VG Name gluster
>> LV UUID 4gZ1TF-a1PX-i1Qx-o4Ix-MjEf-0HD8-esm3wg
>> LV Write Access read/write
>> LV Creation host, time
ovirt1.nwfiber.com, 2016-12-31 14:40:00 -0800
>> LV Status available
>> # open 1
>> LV Size 25.00 GiB
>> Current LE 6400
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:2
>>
>> --- Logical volume ---
>> LV Name lvthinpool
>> VG Name gluster
>> LV UUID aaNtso-fN1T-ZAkY-kUF2-dlxf-0ap2-JAwSid
>> LV Write Access read/write
>> LV Creation host, time
ovirt1.nwfiber.com, 2016-12-31 14:40:09 -0800
>> LV Pool metadata lvthinpool_tmeta
>> LV Pool data lvthinpool_tdata
>> LV Status available
>> # open 4
>> LV Size 150.00 GiB
>> Allocated pool data 65.02%
>> Allocated metadata 14.92%
>> Current LE 38400
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:5
>>
>> --- Logical volume ---
>> LV Path /dev/gluster/data
>> LV Name data
>> VG Name gluster
>> LV UUID NBxLOJ-vp48-GM4I-D9ON-4OcB-hZrh-MrDacn
>> LV Write Access read/write
>> LV Creation host, time
ovirt1.nwfiber.com, 2016-12-31 14:40:11 -0800
>> LV Pool name lvthinpool
>> LV Status available
>> # open 1
>> LV Size 100.00 GiB
>> Mapped size 90.28%
>> Current LE 25600
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:7
>>
>> --- Logical volume ---
>> LV Path /dev/gluster/export
>> LV Name export
>> VG Name gluster
>> LV UUID bih4nU-1QfI-tE12-ZLp0-fSR5-dlKt-YHkhx8
>> LV Write Access read/write
>> LV Creation host, time
ovirt1.nwfiber.com, 2016-12-31 14:40:20 -0800
>> LV Pool name lvthinpool
>> LV Status available
>> # open 1
>> LV Size 25.00 GiB
>> Mapped size 0.12%
>> Current LE 6400
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:8
>>
>> --- Logical volume ---
>> LV Path /dev/gluster/iso
>> LV Name iso
>> VG Name gluster
>> LV UUID l8l1JU-ViD3-IFiZ-TucN-tGPE-Toqc-Q3R6uX
>> LV Write Access read/write
>> LV Creation host, time
ovirt1.nwfiber.com, 2016-12-31 14:40:29 -0800
>> LV Pool name lvthinpool
>> LV Status available
>> # open 1
>> LV Size 25.00 GiB
>> Mapped size 28.86%
>> Current LE 6400
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:9
>>
>> --- Logical volume ---
>> LV Path /dev/centos_ovirt/swap
>> LV Name swap
>> VG Name centos_ovirt
>> LV UUID PcVQ11-hQ9U-9KZT-QPuM-HwT6-8o49-2hzNkQ
>> LV Write Access read/write
>> LV Creation host, time localhost, 2016-12-31 13:56:36 -0800
>> LV Status available
>> # open 2
>> LV Size 16.00 GiB
>> Current LE 4096
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:1
>>
>> --- Logical volume ---
>> LV Path /dev/centos_ovirt/root
>> LV Name root
>> VG Name centos_ovirt
>> LV UUID g2h2fn-sF0r-Peos-hAE1-WEo9-WENO-MlO3ly
>> LV Write Access read/write
>> LV Creation host, time localhost, 2016-12-31 13:56:36 -0800
>> LV Status available
>> # open 1
>> LV Size 20.00 GiB
>> Current LE 5120
>> Segments 1
>> Allocation inherit
>> Read ahead sectors auto
>> - currently set to 256
>> Block device 253:0
>>
>> ------------
>>
>> I don't use the export gluster volume, and I've never used
>> lvthinpool-type allocations before, so I'm not sure if there's anything
>> special there.
>>
>> I followed the setup instructions from an ovirt contributed
>> documentation that I can't find now that talked about how to install ovirt
>> with gluster on a 3-node cluster.
>>
>> Thank you for your assistance!
>> --Jim
>>
>> On Thu, Mar 30, 2017 at 1:27 AM, Sahina Bose <sabose(a)redhat.com> wrote:
>>
>>>
>>>
>>> On Thu, Mar 30, 2017 at 1:23 PM, Liron Aravot <laravot(a)redhat.com>
>>> wrote:
>>>
>>>> Hi Jim, please see inline
>>>>
>>>> On Thu, Mar 30, 2017 at 4:08 AM, Jim Kusznir <jim(a)palousetech.com>
>>>> wrote:
>>>>
>>>>> hello:
>>>>>
>>>>> I've been running my ovirt Version 4.0.5.5-1.el7.centos cluster
for a
>>>>> while now, and am now revisiting some aspects of it for ensuring that
I
>>>>> have good reliability.
>>>>>
>>>>> My cluster is a 3 node cluster, with gluster nodes running on each
>>>>> node. After running my cluster a bit, I'm realizing I didn't
do a very
>>>>> optimal job of allocating the space on my disk to the different
gluster
>>>>> mount points. Fortunately, they were created with LVM, so I'm
hoping that
>>>>> I can resize them without much trouble.
>>>>>
>>>>> I have a domain for iso, domain for export, and domain for storage,
>>>>> all thin provisioned; then a domain for the engine, not thin
provisioned.
>>>>> I'd like to expand the storage domain, and possibly shrink the
engine
>>>>> domain and make that space also available to the main storage domain.
Is
>>>>> it as simple as expanding the LVM partition, or are there more steps
>>>>> involved? Do I need to take the node offline?
>>>>>
>>>>
>>>> I didn't understand completely that part - what is the difference
>>>> between the domain for storage and the domain for engine you mentioned?
>>>>
>>>
>>> I think the domain for engine is the one storing Hosted Engine data.
>>> You should be able to expand your underlying LVM partition without
>>> having to take the node offline
>>>
>>>
>>>>
>>>>> second, I've noticed that the first two nodes seem to have a
full
>>>>> copy of the data (the disks are in use), but the 3rd node appears to
not be
>>>>> using any of its storage space...It is participating in the gluster
>>>>> cluster, though.
>>>>>
>>>>
>>> Is the volume created as replica 3? If so, fully copy of the data
>>> should be present on all 3 nodes. Please provide the output of "gluster
>>> volume info"
>>>
>>>
>>>>> Third, currently gluster shares the same network as the VM networks.
>>>>> I'd like to put it on its own network. I'm not sure how to
do this, as
>>>>> when I tried to do it at install time, I never got the cluster to
come
>>>>> online; I had to make them share the same network to make that work.
>>>>>
>>>>
>>> While creating the bricks the network intended for gluster should have
>>> been used to identify the brick in hostname:brick-directory. Changing this
>>> at a later point is a bit more involved. Please check online or on
>>> gluster-users on changing IP address associated with brick.
>>>
>>>
>>>>
>>>> I'm adding Sahina who may shed some light on the gluster question,
I'd
>>>> try on the gluster mailing list as well.
>>>>
>>>>>
>>>>>
>>>>> Ovirt questions:
>>>>> I've noticed that recently, I don't appear to be getting
software
>>>>> updates anymore. I used to get update available notifications on my
nodes
>>>>> every few days; I haven't seen one for a couple weeks now. is
something
>>>>> wrong?
>>>>>
>>>>> I have a windows 10 x64 VM. I get a warning that my VM type does
not
>>>>> match the installed OS. All works fine, but I've
quadrouple-checked that
>>>>> it does match. Is this a known bug?
>>>>>
>>>>
>>>> Arik, any info on that?
>>>>
>>>>>
>>>>> I have a UPS that all three nodes and the networking are on. It is
a
>>>>> USB UPS. How should I best integrate monitoring in? I could put a
>>>>> raspberry pi up and then run NUT or similar on it, but is there a
"better"
>>>>> way with oVirt?
>>>>>
>>>>> Thanks!
>>>>> --Jim
>>>>>
>>>>> _______________________________________________
>>>>> Users mailing list
>>>>> Users(a)ovirt.org
>>>>>
http://lists.ovirt.org/mailman/listinfo/users
>>>>>
>>>>>
>>>>
>>>
>>
>