<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>I apologize for the off topic discussion&#8230;&nbsp; If there is a more general list about the dozens of network storage options please point me in the right direction.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>I am testing various network redundancy options and failover options, and throwing out an option for comment that I haven&#8217;t really seen talked about anywhere (here or elsewhere) as a viable configuration.&nbsp; Only mentioning it because I did some tests in the lab and it worked better than I expected given the lack of it being mentioned as an option anywhere.&nbsp; The test consisted of two storage servers (I used NFS, but iSCSI, etc&#8230; should work if someone wants to replicate), and a compute server that housed VM&#8217;s storage on the NFS servers.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Here is the twist&#8230;&nbsp; instead of using drbd, or some other mechanism to provide the redundant storage, I setup a software RAID 1 inside the guest with two different virtual disks on different NFS servers.&nbsp; After all setup and running fine, I killed one of the NFS servers (technically just blocked it with iptables) and the guest would freeze on some I/O for awhile.&nbsp; At that time, cached I/O was fine so it was fine if you stuck to common directories, etc&#8230;, and sessions to non cached data would freeze, but you could open a new session just fine.&nbsp; After a bit (maybe two minutes, but probably configurable somewhere) the software RAID disabled the failed drive and all was well within the vm to any processes.&nbsp; The only noticible problem was the momentary hang of a few processes until the drive was marked as failed.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Made the NFS server available again, and I had to manually re-add the failed device, but it quickly re-synced.&nbsp; The software raid keeps a rough track of the areas of the disk that changed.&nbsp; Then I repeated the process with the other NFS server to verify I could kill either NFS server without significant downtime&#8230;.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Pros:<o:p></o:p></p><p class=MsoNormal>No split brain risk, as the brain is in the VM instead of the storage nodes.<o:p></o:p></p><p class=MsoNormal>Load balanced reads &#8211; very fast I/O when you have multi-processes reading.<o:p></o:p></p><p class=MsoNormal>Can have some VMs use just one server, and some use redundant storage without complex preplanning or LVM changing, etc.<o:p></o:p></p><p class=MsoNormal>(In addition, not exactly a pro as common with most commodity hardware options, however just noting it should be fine to have compute resources and storage resources on same physical box.&nbsp; If you do, you can optionally give local disk read priority in the software raid if desired.)<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>Cons:<o:p></o:p></p><p class=MsoNormal>More work in setup of the guest instead of the upfront extra work in the setup of storage and STONITH.&nbsp; (Not that bad, and that&#8217;s what templates are for).<o:p></o:p></p><p class=MsoNormal>Not sure how difficult booting would be with one of the storage units down.&nbsp; Having disks go away and come back while running seems fine, but there may be extra work to force a guest online with one of the storage devices down.<o:p></o:p></p><p class=MsoNormal>Did not autorecover&#8230;&nbsp; a reboot probably would easy-autorecover but assuming you want 0 downtime...&nbsp; You just have to make sure you are setup to monitor /proc/mdstat or similar to detect a a broken raid so you know it needs attention...<o:p></o:p></p><p class=MsoNormal>Could get complicated for automatic recovery if you want the compute side failover/redundant at the same time, and want things to work smoothly when one of the storage nodes is down at the same time.&nbsp; Shouldn&#8217;t be too bad if you are ok with either a storage node going down, or a compute node going down, but if 2 of the 4 go down at the same time manual intervention may be required if you can&#8217;t get the other storage unit back online.<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><p class=MsoNormal>At this point I am not sure I would recommend/use it over drbd or any of the various cluster filesystems, etc&#8230;&nbsp; just that it did test out well enough that I am at least considering it, given that most of my servers I don&#8217;t need the redundant network storage (maybe 3%) beyond what&#8217;s built into the boxes, as the majority of our servers are active/active with redundant failover loadbalancers in front of them, or active/passive with sync&#8217;d configs, or are simply not critical 24/7/365&#8230;<o:p></o:p></p><p class=MsoNormal><o:p>&nbsp;</o:p></p></div></body></html>