{"id":421,"date":"2017-06-22T13:02:47","date_gmt":"2017-06-22T20:02:47","guid":{"rendered":"http:\/\/blog.gptnet.net\/?p=421"},"modified":"2017-06-22T13:05:51","modified_gmt":"2017-06-22T20:05:51","slug":"3par-iscsi-delayed-ack-read-or-write-performance-issues","status":"publish","type":"post","link":"https:\/\/blog.gptnet.net\/?p=421","title":{"rendered":"3PAR iSCSI Delayed ACK read or write performance issues"},"content":{"rendered":"<p>I&#8217;ve noticed a few people running iSCSI 3PARs with Delayed ACK enabled and experiencing latency on their datastores. Here&#8217;s what happens when you disable it (SSD backed datastore):<br \/>\nBefore and after:<br \/>\n<a href=\"http:\/\/blog.gptnet.net\/?attachment_id=423\" rel=\"attachment wp-att-423\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-423\" src=\"https:\/\/blog.gptnet.net\/wp-content\/uploads\/2017\/06\/latency_3par.png\" alt=\"\" width=\"940\" height=\"755\" srcset=\"https:\/\/blog.gptnet.net\/wp-content\/uploads\/2017\/06\/latency_3par-300x241.png 300w, https:\/\/blog.gptnet.net\/wp-content\/uploads\/2017\/06\/latency_3par-768x617.png 768w, https:\/\/blog.gptnet.net\/wp-content\/uploads\/2017\/06\/latency_3par.png 940w\" sizes=\"auto, (max-width: 940px) 100vw, 940px\" \/><\/a><\/p>\n<p>VMware KB about it:<br \/>\n<a href=\"https:\/\/kb.vmware.com\/kb\/1002598\">https:\/\/kb.vmware.com\/kb\/1002598<\/a><\/p>\n<p>I suggest to use Host Profiles to check compliance and make sure it&#8217;s disabled across all your hosts. In case you don&#8217;t use them I&#8217;ve also created Powercli script to disable it on all hosts.<br \/>\n<!--more--><\/p>\n<pre class=\"brush:powershell\">\r\n# Name: delay_ack.ps1\r\n# Author: Naz Snidanko\r\n# Date Created: Jun 21, 2017\r\n# Date Modified:\r\n# Version: 0.1\r\n# Description: checks all hosts for iSCSi adapter and disables delay ack\r\n# Credit: http:\/\/tech.zsoldier.com\/2011\/09\/disable-delayed-acknowledgement-setting.html\r\n#import Powercli module\r\nImport-Module VMware.PowerCLI\r\n$vCenter = Read-Host -Prompt \"Please enter vCenter server name\"\r\nconnect-viserver -server $vCenter\r\nGet-VMHost | Foreach {\r\nwrite-host ( \"Connecting to host: \" + $_.name )\r\n$HostView = $_ | Get-View\r\n$HostStorageSystemID = $HostView.configmanager.StorageSystem\r\n$HostiSCSISoftwareAdapterHBAID = ($HostView.config.storagedevice.HostBusAdapter | where {$_.Model -match \"iSCSI Software\"}).device\r\nif ($HostiSCSISoftwareAdapterHBAID -eq $null)\r\n{\r\nwrite-host (\"No Software iSCSI adapter found on host \" + $_.name + \". No changes were made.\") -BackgroundColor Red\r\n}\r\nelse\r\n{\r\n$options = New-Object VMWare.Vim.HostInternetScsiHbaParamValue[] (1)\r\n$options[0] = New-Object VMware.Vim.HostInternetScsiHbaParamValue\r\n$options[0].key = \"DelayedAck\"\r\n$options[0].value = $false\r\n$HostStorageSystem = Get-View -ID $HostStorageSystemID\r\n$HostStorageSystem.UpdateInternetScsiAdvancedOptions($HostiSCSISoftwareAdapterHBAID, $null, $options)\r\nwrite-host (\"Software iSCSI adapter found on host \" + $_.name + \". Changes were made.\") -BackgroundColor Green\r\n}\r\n}\r\ndisconnect-viserver -server $vCenter -confirm:$false\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve noticed a few people running iSCSI 3PARs with Delayed ACK enabled and experiencing latency on their datastores. Here&#8217;s what happens when you disable it (SSD backed datastore): Before and after: VMware KB about it: https:\/\/kb.vmware.com\/kb\/1002598 I suggest to use &hellip; <a href=\"https:\/\/blog.gptnet.net\/?p=421\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[72,44,84],"tags":[61,109,110],"class_list":["post-421","post","type-post","status-publish","format-standard","hentry","category-3par","category-powershell","category-vmware","tag-3par","tag-delay-ack","tag-powercli"],"_links":{"self":[{"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/posts\/421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=421"}],"version-history":[{"count":6,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/posts\/421\/revisions"}],"predecessor-version":[{"id":429,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=\/wp\/v2\/posts\/421\/revisions\/429"}],"wp:attachment":[{"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.gptnet.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}