[Gluster-devel] glusterfs version3 and xen images
Kamal Varma
kamal at gluster.com
Fri Dec 11 23:02:37 UTC 2009
Hi Roland,
The algorithms are automatically selected based on file size.
May I ask what algorithm would you like to select/override to? and why (whats your use case)
Thanks,
Kamal
----- "Roland Fischer" <roland.fischer at xidras.com> wrote:
> Hallo,
>
> i have tried the new version 3 of glusterfs with xen.
>
> we have 2 gfsserver and 2 xen server. we use client-side-replication
> with domUs.
>
> i need to know if our configuration is good to use with xen domUs:
>
> server:
> # export-domU-images-server_repl
> # gfs-01-01 /GFS/domU-images
> # gfs-01-02 /GFS/domU-images
>
> volume posix
> type storage/posix
> option directory /GFS/domU-images
> end-volume
>
> volume locks
> type features/locks
> subvolumes posix
> end-volume
>
> volume domU-images
> type performance/io-threads
> option thread-count 16 # default is 16
> subvolumes locks
> end-volume
>
> volume server
> type protocol/server
> option transport-type tcp
> option auth.addr.domU-images.allow 192.168.11.*,127.0.0.1
> option transport.socket.listen-port 6997
> subvolumes domU-images
> end-volume
>
> and client:
> volume gfs-01-01
> type protocol/client
> option transport-type tcp
> option remote-host gfs-01-01
> option transport.socket.nodelay on
> option remote-port 6997
> option remote-subvolume domU-images
> option ping-timeout 7
> end-volume
>
> volume gfs-01-02
> type protocol/client
> option transport-type tcp
> option remote-host gfs-01-02
> option transport.socket.nodelay on
> option remote-port 6997
> option remote-subvolume domU-images
> option ping-timeout 7
> end-volume
>
> volume gfs-replicate
> type cluster/replicate
> subvolumes gfs-01-01 gfs-01-02
> end-volume
>
> volume writebehind
> type performance/write-behind
> option cache-size 16MB
> subvolumes gfs-replicate
> end-volume
>
> volume readahead
> type performance/read-ahead
> option page-count 16 # cache per file = (page-count x page-size)
> subvolumes writebehind
> end-volume
>
> volume iocache
> type performance/io-cache
> option cache-size 1GB
> option cache-timeout 1
> subvolumes readahead
> end-volume
>
>
> i start a domU and simulate an crash on gfs-01-02 (rcnetwork stop;
> sleep
> 150; rcnetwork start). domU runs further without any problems.
>
> Client Log:
> [2009-12-10 16:34:16] E
> [client-protocol.c:415:client_ping_timer_expired] gfs-01-02: Server
> xxx.xxx.xxx.xxx:6997 has not responded in the last 7 seconds,
> disconnecting.
> [2009-12-10 16:34:16] E [saved-frames.c:165:saved_frames_unwind]
> gfs-01-02: forced unwinding frame type(1) op(GETXATTR)
> [2009-12-10 16:34:16] E [saved-frames.c:165:saved_frames_unwind]
> gfs-01-02: forced unwinding frame type(2) op(PING)
> [2009-12-10 16:34:16] N [client-protocol.c:6972:notify] gfs-01-02:
> disconnected
> [2009-12-10 16:34:38] E [socket.c:760:socket_connect_finish]
> gfs-01-02:
> connection to xxx.xxx.xxx.xxx:6997 failed (No route to host)
> [2009-12-10 16:34:38] E [socket.c:760:socket_connect_finish]
> gfs-01-02:
> connection to xxx.xxx.xxx.xxx:6997 failed (No route to host)
>
> network on gfs-01-02 started
>
> Client Log:
> [2009-12-10 16:35:15] N [client-protocol.c:6224:client_setvolume_cbk]
>
> gfs-01-02: Connected to xxx.xxx.xxx.xxx:6997, attached to remote
> volume
> 'domU-images'.
> [2009-12-10 16:35:18] N [client-protocol.c:6224:client_setvolume_cbk]
>
> gfs-01-02: Connected to xxx.xxx.xxx.xxx:6997, attached to remote
> volume
> 'domU-images'.
> [2009-12-10 16:35:20] E
> [afr-self-heal-common.c:1186:sh_missing_entries_create] gfs-replicate:
>
> no missing files - /vm_disks/virt-template. proceeding to metadata
> check
>
> everything looks good - sync is started from gfs-01-01 to gfs-01-02
> but
> the whole image were transfered.
>
> if we do a ls -la in domU while the transfer the prompt in domU
> disappears. After the sync is ready the prompt in domU appears and we
>
> can work further.
>
> my question: is this a normal behavoir? in
> http://ftp.gluster.com/pub/gluster/glusterfs/3.0/LATEST/GlusterFS-3.0.0-Release-Notes.pdf
>
> we have read:
>
> 2.1) Choice of self-heal algorithms
>
> During self-heal of file contents, GlusterFS will now dynamically
> choose
> between two
> algorithms based on file size:
>
> a) "Full" algorithm – this algorithm copies the entire file data in
> order to heal the out-ofsync
> copy. This algorithm is used when a file has to be created from
> scratch on a
> server.
>
> b) "Diff" algorithm – this algorithm compares blocks present on both
> servers and copies
> only those blocks that are different from the correct copy to the
> out-of-sync copy. This
> algorithm is used when files have to be re-built partially.
>
> The “Diff” algorithm is especially beneficial for situations such as
> running VM images,
> where self-heal of a recovering replicated copy of the image will
> occur
> much faster because
> only the changed blocks need to be synchronized.
>
> can we change the self-heal algorithmus in config file?
>
> Thank you very much
>
> Roland Fischer
>
>
>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at nongnu.org
> http://lists.nongnu.org/mailman/listinfo/gluster-devel
More information about the Gluster-devel
mailing list