{"id":12786,"date":"2012-06-13T09:00:00","date_gmt":"2012-06-13T08:00:00","guid":{"rendered":"https:\/\/aidanfinn.com\/?p=12786"},"modified":"2015-10-09T12:18:17","modified_gmt":"2015-10-09T11:18:17","slug":"when-to-use-and-when-not-to-use-a-scale-out-file-server","status":"publish","type":"post","link":"https:\/\/aidanfinn.com\/?p=12786","title":{"rendered":"When To Use And When NOT To Use A Scale-Out File Server"},"content":{"rendered":"<p>The new transparent failover, scalable, and continuously available active-active file server cluster, better known as Scale-Out File Server (SOFS) sounds really cool.\u00a0 Big, cheap disk, that can be bundled into a file server cluster that has higher uptime than everything that came before.\u00a0 It sure sounds like a cool way to provision file shares for end users.<\/p>\n<p>And there\u2019s the problem.\u00a0 As announced at Build in 2011, that is not what the Scale-Out File Server For <em>Applicaion Data<\/em> (to give it it\u2019s full name) is intended for.\u00a0 Let\u2019s figure out why; I always say if you understand how something works then you understand why\/how to use something, and how\/why <em>not<\/em> to use it.<\/p>\n<p>The traditional active\/passive clustered file server uses a shared-nothing disk that takes a few seconds to fail over from host to host. And it is active\/passive.\u00a0 The SOFS is active-active.\u00a0 That means the file share, or the cluster resource, must be accessible on all nodes in the SOFS cluster.\u00a0 We need a disk that is clustered and available on all nodes at the same time.\u00a0 Does that sound familiar?\u00a0 It should if you read this blog: because that\u2019s the same demand Hyper-V has.\u00a0 And in W2008 R2 we got Clustered Shared Volume (CSV), a clustered file system where one of the nodes orchestrates the files, folders, and access.<\/p>\n<p>In CSV the CSV Coordinator, automatically handled by the cluster and made fault tolerant, handles all orchestration.\u00a0 Example of that orchestration are:<\/p>\n<ul>\n<li>Creating files<\/li>\n<li>Checking user permissions<\/li>\n<\/ul>\n<p>To do this, nodes in the cluster go into redirected mode for the duration of that activity for the relevant CSV.\u00a0 In Hyper-V, we notice this during VSS backups in W2008 R2 (no longer present in WS2012 for VSS backup).\u00a0 IO is redirected from the SAS\/iSCSI\/FC connections to the storage, an sent over a cluster network via the CSV coordinator, which then proxies the IO to the SAN.\u00a0 This gives the CSV coordinator exclusive access to the volume to complete the action, e.g. create a new file, check file permissions.<\/p>\n<p>This is a tiny deal for something like Hyper-V.\u00a0 We\u2019re dealing with relatively few files, that are big.\u00a0 Changes include new VHD\/VM deployments, and expansion of dynamic VHDs for VMs running non-coordinator nodes.\u00a0 SQL is getting support to store it\u2019s files on SOFS, and it also has few, big files, just like Hyper-V.\u00a0 So no issue there.<\/p>\n<p>Now think about your end user file shares.\u00a0 Lots and lots of teeny tiny little files, constantly being browsed in Windows Explorer, being opened, modified, and having permissions checks.\u00a0 Lots and lots of metadata activity.\u00a0 If these file shares were on an SOFS then it would probably be in near permanent SMB redirected IO mode (as opposed to block level redirected IO mode which was added in WS2012 for data stream redirection, e.g. caused by storage path failure).<\/p>\n<p>We are told that continuously available file shares on a SOFS are:<\/p>\n<ul>\n<li>Good for file services with few, big files, with little metadata activity<\/li>\n<li>Bad for file services with many, small files, with lots of metadata activity<\/li>\n<\/ul>\n<p>The official statement from Microsoft for the usage of SOFS can be found on <a href=\"http:\/\/technet.microsoft.com\/en-us\/library\/hh831349.aspx\" target=\"_blank\">TechNet<\/a>:<\/p>\n<p><a href=\"https:\/\/aidanfinn.com\/wp-content\/uploads\/2012\/06\/image18.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-top: 0px; border: 0px;\" title=\"image\" src=\"https:\/\/aidanfinn.com\/wp-content\/uploads\/2012\/06\/image_thumb18.png\" alt=\"image\" width=\"504\" height=\"89\" border=\"0\" \/><\/a><\/p>\n<p>In other words, DO NOT use the Scale-Out File Server solution for end user file shares.\u00a0 Do, and you will be burned.<\/p>\n<p>[EDIT]<\/p>\n<p>It&#8217;s been quite a while since I wrote this post, but people still are INCORRECTLY using SOFS as a file server for end users. They end up with problems, such as slow performance and this <a href=\"https:\/\/support.microsoft.com\/en-us\/kb\/3101545\" target=\"_blank\">one<\/a>. If you want to &#8220;use&#8221; a SOFS for file shares, then deploy a VM as a file server, and store that VM on the SOFS. Or deploy non-continuously available (legacy highly available) disks and shares on the SOFS for end users, but I prefer the virtual file server approach because it draws a line between fabric and services.<\/p>\n<div id=\"scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d621a716-a1d1-4c95-b6ae-ab7a3e968e9f\" class=\"wlWriterEditableSmartContent\" style=\"margin: 0px; display: inline; float: none; padding: 0px;\">Technorati Tags: <a href=\"http:\/\/technorati.com\/tags\/Windows+Server+2012\" rel=\"tag\">Windows Server 2012<\/a>,<a href=\"http:\/\/technorati.com\/tags\/Failover+Clustering\" rel=\"tag\">Failover Clustering<\/a>,<a href=\"http:\/\/technorati.com\/tags\/Hyper-V\" rel=\"tag\">Hyper-V<\/a>,<a href=\"http:\/\/technorati.com\/tags\/Virtualisation\" rel=\"tag\">Virtualisation<\/a>,<a href=\"http:\/\/technorati.com\/tags\/SQL\" rel=\"tag\">SQL<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>The new transparent failover, scalable, and continuously available active-active file server cluster, better known as Scale-Out File Server (SOFS) sounds really cool.\u00a0 Big, cheap disk, that can be bundled into a file server cluster that has higher uptime than everything that came before.\u00a0 It sure sounds like a cool way to provision file shares for &hellip; <a href=\"https:\/\/aidanfinn.com\/?p=12786\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;When To Use And When NOT To Use A Scale-Out File Server&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":19251,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[52],"tags":[63,181,192,195,118],"class_list":["post-12786","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-windows-server","tag-failover-clustering","tag-hyper-v","tag-sql","tag-virtualisation","tag-windows-server-2012"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/aidanfinn.com\/wp-content\/uploads\/2015\/10\/IC5788501.gif","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts\/12786","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12786"}],"version-history":[{"count":3,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts\/12786\/revisions"}],"predecessor-version":[{"id":19250,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/posts\/12786\/revisions\/19250"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=\/wp\/v2\/media\/19251"}],"wp:attachment":[{"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aidanfinn.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}