{"id":488,"date":"2018-08-30T22:55:23","date_gmt":"2018-08-30T19:55:23","guid":{"rendered":"https:\/\/blog.arcak.net\/?p=448"},"modified":"2018-09-03T09:18:04","modified_gmt":"2018-09-03T06:18:04","slug":"vmware-vsan-storage-policy-based-management-spbm","status":"publish","type":"post","link":"https:\/\/blog.arcak.net\/index.php\/2018\/08\/30\/vmware-vsan-storage-policy-based-management-spbm\/","title":{"rendered":"VMware vSan Storage Policy Based Management (SPBM)"},"content":{"rendered":"<p style=\"text-align: justify;\">I&#8217;ll try to elaborate on the <strong>Storage Policy Based Management (SPBM)<\/strong>\u00a0what\u00a0I&#8217;ve\u00a0briefly describe in my <a href=\"https:\/\/blog.arcak.net\/index.php\/2018\/08\/29\/vmware-vsan\/\"><strong>previous article<\/strong><\/a>.\u00a0\u00a0Protection types specified in<strong>\u00a0SPBM <\/strong>are <strong>Datastore Default<\/strong>, <strong>per-VM<\/strong> and <strong>per-vmdk.<\/strong><\/p>\n<p style=\"text-align: justify;\">You can review Storage Policy Rules in\u00a0<strong><a href=\"https:\/\/docs.vmware.com\/en\/VMware-vSphere\/6.7\/vsan-67-administration-guide.pdf\">vendor resources<\/a><\/strong> for further details.<\/p>\n<p style=\"text-align: justify;\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-462 aligncenter\" src=\"https:\/\/blog.arcak.net\/wp-content\/uploads\/2018\/08\/vsan-policy-300x171.png\" alt=\"\" width=\"300\" height=\"171\" srcset=\"https:\/\/blog.arcak.net\/wp-content\/uploads\/2018\/08\/vsan-policy-300x171.png 300w, https:\/\/blog.arcak.net\/wp-content\/uploads\/2018\/08\/vsan-policy.png 624w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p style=\"text-align: justify;\"><!--more--><\/p>\n<p style=\"text-align: justify;\"><strong><span style=\"font-size: 14pt;\">Primary level of failures to tolerate (PFTT): <\/span><\/strong><span style=\"font-size: 14pt;\">De<\/span><span style=\"font-size: 12pt;\">fines the number of server and device failures that a virtual machine object can tolerate. If fault tolerance for\u00a0<strong>n<\/strong> is required, each data is written to the n + 1 location, including the <strong>RAID5<\/strong> and<strong>\u00a0RAID6<\/strong>\u00a0parity data. If the storage policy is not selected when creating a virtual server, the default policy is chosen by default. If Fault Domain structure is present, it needs up to <strong>2n + 1<\/strong> capacity. i.e for two Fault Domains<strong>\u00a02 (2) + 1 = 5<\/strong> unit capacity is required. <\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt;\"><strong>In the Stretched Cluster (SC)<\/strong> structure, this value identifies the virtual server objects that can be tolerated. <strong>PFTT<\/strong> and <strong>SFTT<\/strong> are used simultaneously to ensure data protection between both locations. In\u00a0<strong>SC<\/strong> structure<strong>,<\/strong> the <strong>PFTT<\/strong> maximum value is 1.<br \/>\n<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Secondary level of failures to tolerate (SFTT): <\/strong><span style=\"font-size: 12pt;\">In\u00a0<strong>Stretched Cluster<\/strong> structure, this rule determines the number of servers that can be tolerated in the second location after reaching the number of <strong>PFTT<\/strong> in a place (<strong>after the location becomes unavailable<\/strong>). For example, if <strong>PFTT = 1 an<\/strong>d <strong>SFTT<\/strong> <strong>= 2<\/strong> and access to the first location are stopped, the cluster can tolerate up to <strong>2<\/strong> servers loss at the second location.<\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Data Locality: <\/strong><span style=\"font-size: 12pt;\">It operates\u00a0<\/span><span style=\"font-size: 12pt;\">In<\/span><strong>\u00a0<span style=\"font-size: 12pt;\">Stretched Cluster<\/span><\/strong><span style=\"font-size: 12pt;\">\u00a0<strong>Structure<\/strong> when <strong>PFTT = 0 <\/strong>is set. <strong>None, Preferred<\/strong>, or <strong>Secondary <\/strong>options are available. It&#8217;s a solution to reach the high performance with low delay thus virtual machines can be restricted to site where they need to operate. The default value is <strong>None<\/strong>.<\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Failure Tolerance Method: <\/strong>D<span style=\"font-size: 12pt;\">etermines whether the data replication method will be either for performance or capacity-oriented.\u00a0<strong>RAID1 <\/strong>is performance-oriented and needs more capacity, and if <strong>4<\/strong> or <strong>more servers <\/strong>are selected as<strong>\u00a0RAID5\/6 (Erasure Codin<\/strong>g)<strong> and PFTT<\/strong> <strong>= 1<\/strong>, then the capacity is achieved with\u00a0<strong>RAID5<\/strong>. If<strong> 6 <\/strong>or<strong> more server<\/strong>s are selected <strong>as RAID5\/6 (Erasure Coding) <\/strong>and <strong>PFTT = 2,<\/strong>\u00a0capacity-oriented<strong> RAID6 <\/strong>with resistant for loss of one more object\u00a0 is obtained.<\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 12pt;\">When<strong> SFTT <\/strong>is configured in <strong>Stretched Cluster (SC)<\/strong> structure, this value will affect\u00a0only the number of servers that can be tolerated, not the raid structure.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Number of disk stripes per object: <\/strong><span style=\"font-size: 12pt;\">Determines how many devices each virtual machine object will be written as. The default is <strong>1<\/strong>, larger values give better performance but use more system resources. <\/span><strong><span style=\"font-size: 12pt;\">Changing the default value is not recommended.<\/span>\u00a0<\/strong><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Flash Read Cache reservati<\/strong><span style=\"font-size: 12pt;\"><strong><span style=\"font-size: 14pt;\">on:<\/span><\/strong> By default, <strong>cache reservation<\/strong> is fairly shared between all objects and the value\u00a0 does not need to be changed. Can be used for specific problem-solving purposes. The default value is <strong>0%<\/strong> and the maximum value is <strong>100%.<\/strong><\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Force Provisioning: <\/strong><span style=\"font-size: 12pt;\">W<\/span><span style=\"font-size: 12pt;\">hen this rule is active, the new virtual machine can be created even if<strong>\u00a0PFTT, Number of disk <\/strong>stripes per object and <strong>Flash read cache reservation<\/strong> policies requirements are not met. In a healthy vSan environment, this rule should not be activated and should only be used for new installation in cases of disaster-like urgencies.<\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Object Space Reservation: <\/strong><span style=\"font-size: 12pt;\">Sp<\/span><span style=\"font-size: 12pt;\">ecifies the area in which Virtual server disk (<strong>VMDK<\/strong>) objects occupy. Default value is <strong>0% (thin) <\/strong>and the maximum value is <strong>100% (thick)<\/strong><\/span><\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-size: 14pt;\"><strong>Disable Object checks<\/strong><span style=\"font-size: 12pt;\"><strong>um<\/strong>: By default, this value is defined as <strong>No<\/strong>. <b>vSan<\/b>\u00a0has mechanisms that control end-to-end data integrity and automatically repair when corruption occurs.\u00a0If this value is defined as <strong>Yes<\/strong>, data integrity cannot be validated.<\/span><\/span><\/p>\n<p><span style=\"font-size: 14pt;\"><strong>IOPS limit for object: <\/strong><span style=\"font-size: 12pt;\">defined on an object <strong>(e.g. VMDK)<\/strong> determines the IOPS limit. When calculating <strong>IOPS<\/strong>, read and write operations are taken into place as equivalent, but <strong>cache hit rate<\/strong> and <strong>sequentiality<\/strong> are not considered . If a disk&#8217;s IOPS limit is exceeded then<strong>\u00a0<\/strong>I\/O operations are limited. If<strong>\u00a0IOPS limit for object<\/strong> <strong>= 0 <\/strong>then the limits are not mandatory. vSan allows the object to double the IOPS limit value when the first second of the operation or after a period of inactivity<\/span><\/span><\/p>\n<p>* As a Bonus, you can access\u00a0SPBM Cheat Sheet <a href=\"https:\/\/blog.arcak.net\/index.php\/en\/2018\/08\/31\/vsan-spbm-cheat-sheet-2\/\"><strong>here<\/strong><\/a>, which includes the policies you need most in <strong>Stretched Cluster<\/strong> structure.<\/p>\n<p style=\"text-align: justify;\">\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ll try to elaborate on the Storage Policy Based Management (SPBM)\u00a0what\u00a0I&#8217;ve\u00a0briefly describe in my previous article.\u00a0\u00a0Protection types specified in\u00a0SPBM are Datastore Default, per-VM and per-vmdk. You can review Storage Policy Rules in\u00a0vendor resources for further details.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[193,165,167],"tags":[],"class_list":["post-488","post","type-post","status-publish","format-standard","hentry","category-hyperconverged-infrastructure","category-virtualization","category-vmware"],"_links":{"self":[{"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/posts\/488"}],"collection":[{"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/comments?post=488"}],"version-history":[{"count":7,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/posts\/488\/revisions"}],"predecessor-version":[{"id":544,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/posts\/488\/revisions\/544"}],"wp:attachment":[{"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/media?parent=488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/categories?post=488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.arcak.net\/index.php\/wp-json\/wp\/v2\/tags?post=488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}