The decision was made to utilize Azure as IaaS for a large portion of our AX project. We learned some quick lessons in IO speed using Azure right off the bat. I created this quick post to document some of the tools and steps we used to measure IO speed that helped us identify various IO bottlenecks and re-engineer some of our environment settings.
Microsoft released a tool a while backed called DiskSpd. This tool replaced the old tool SQLIO. It is pretty easy to use but will require some tweaking of parameters to get it to simulate various read/write payloads.
100% Reads 8K Blocks
We started off using 100% Read Payloads using 8KB Blocks since SQL Server is organized in 8KB Pages.
You can review the documentation of DiskSpd for details on the various parameters and options.
The initial results were awful. The MB/s were below 10, AvgLat was above 80ms. We contacted Microsoft with our results and they sent us over some build guides to help us maximize performance. After we applied their settings the speed was better but still terrible compared to our On-Prem storage.
We ended up moving some of our DEV Servers to a Azure Data Center that had premium storage. One key take away from the Azure experience is that if you need high performing IO (for SQL Server and such) you will need to use Premium Storage and get ready to spend some cash.
I wrote a PowerShell script that would execute a DiskSpd test every 20 minutes and then store the results in a Database. We had several DEV servers in the project and i wanted to see how the disk performed over several days. Here is the PowerShell
The powershell script calls a real simple Stored Procedure on the SQL Server I am using to store the stats.
Azure Speed test using DiskSpd
8:27 AM / by thejoestory / with No comments /
Related Posts:
Export CRM Users List Using PowerShell How this came about: I was asked by the Manager of the QA team to send her a list of who had access to the QA environment; after… Read More
Install AX Enterprise Portal on SharePoint 2013 Multi Server FarmHow I Installed Enterprise Portal on a SharePoint 2013 Multi Server Farm Brief overview of SharePoint 2013 farm. 1 Application server on Wind… Read More
CRM Organization Import Could not find stored procedure p_CreateAuditEntryDuring our DEV server builds we came across a bug during an import of CRM Organizations. When we would try to import a refresh of production to DEV we… Read More
CRM Refresh using PowerShellWe just started using CRM and wanted to get rid of the manual process of refreshing CRM from Production to QA\Dev for our developers. Our environmen… Read More
BizTalk System.EnterpriseServices.TransactionProxyExceptionAre you tired of reading article after article on this error telling you to check the firewall settings? Tired of vague statements about checking netw… Read More
0 comments:
Post a Comment