<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Benchmarks Archives - OVHcloud Blog</title>
	<atom:link href="https://blog.ovhcloud.com/tag/benchmarks/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.ovhcloud.com/tag/benchmarks/</link>
	<description>Innovation for Freedom</description>
	<lastBuildDate>Mon, 03 Jul 2023 08:10:17 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.ovhcloud.com/wp-content/uploads/2019/07/cropped-cropped-nouveau-logo-ovh-rebranding-32x32.gif</url>
	<title>Benchmarks Archives - OVHcloud Blog</title>
	<link>https://blog.ovhcloud.com/tag/benchmarks/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>What is the real performance of the new High Performance Object Storage?</title>
		<link>https://blog.ovhcloud.com/what-is-the-real-performance-of-the-new-high-performance-object-storage/</link>
		
		<dc:creator><![CDATA[Jean-Daniel Bonnetot]]></dc:creator>
		<pubDate>Mon, 28 Feb 2022 08:31:16 +0000</pubDate>
				<category><![CDATA[OVHcloud Engineering]]></category>
		<category><![CDATA[Benchmarks]]></category>
		<category><![CDATA[HPC]]></category>
		<category><![CDATA[Object Storage]]></category>
		<guid isPermaLink="false">https://blog.ovhcloud.com/?p=22297</guid>

					<description><![CDATA[The need to share data across different workloads is a constant in IT, but the preferred way of sharing this data has evolved during the last few years. Where most developers would have used file systems (NFS, Samba&#8230;) ten years ago, the choice has switched naturally to Object Storage as its features and abstractions were [&#8230;]<img src="//blog.ovhcloud.com/wp-content/plugins/matomo/app/matomo.php?idsite=1&amp;rec=1&amp;url=https%3A%2F%2Fblog.ovhcloud.com%2Fwhat-is-the-real-performance-of-the-new-high-performance-object-storage%2F&amp;action_name=What%20is%20the%20real%20performance%20of%20the%20new%20High%20Performance%20Object%20Storage%3F&amp;urlref=https%3A%2F%2Fblog.ovhcloud.com%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></description>
										<content:encoded><![CDATA[
<p>The need to share data across different workloads is a constant in IT, but the preferred way of sharing this data has evolved during the last few years. Where most developers would have used file systems (NFS, Samba&#8230;) ten years ago,  the choice has switched naturally to Object Storage as its features and abstractions were added.</p>



<p>In parallel with this evolution, more and more uses cases involving publicly sharing data have arisen. The amount of data has exploded, in almost all applications, and IT people don&#8217;t want to manage storage anymore (maintenance, failure, scalling&#8230;).</p>



<div class="wp-block-image"><figure class="aligncenter size-large is-resized"><img fetchpriority="high" decoding="async" src="https://blog.ovhcloud.com/wp-content/uploads/2022/02/IMG_0826-1024x537.jpeg" alt="What is the real performance of the new High Performance Object Storage?" class="wp-image-22531" width="512" height="269" srcset="https://blog.ovhcloud.com/wp-content/uploads/2022/02/IMG_0826-1024x537.jpeg 1024w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/IMG_0826-300x157.jpeg 300w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/IMG_0826-768x403.jpeg 768w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/IMG_0826.jpeg 1200w" sizes="(max-width: 512px) 100vw, 512px" /></figure></div>



<p>As now, all the major languages have their object storage libraries (at least for S3 APIs), and tones of applications integrate by default the connectors to those services. And as many IT people, I switched my reflexes to think Object Storage first, and handle some exceptions where network file systems are a better solution.</p>



<h1 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Whenapplicationsneedstorageperformances...">When applications need storage performances&#8230;</h1>



<p>During many years, performances were not the main focus. The goal was to take advantage of unlimited space and public access to store images, documents, code&#8230;</p>



<p>Nowadays, part of the applications need more speed because the objects are bigger and plentiful. That&#8217;s the case for Big Data use cases and IA scenarios but also for the majority of modern applications.</p>



<ul class="wp-block-list"><li>Those who work on big data analysis know that you can wait hours before getting your result in many cases. Working on data to analyze users behavior, system deviation, cost optimization requires powered compute resources but also high performance storage. Big Data clusters needs to access the date quickly to provide a result in time.</li><li>Training IA models and fine tuning the predictions requires a lot of data analysis also that takes hours and slow down your progress if your storage solution is the bottleneck.</li><li>Serving media that are bigger and bigger (4K video, HD pictures on smartphones, &#8230;) on high speed network (fiber, 5G) challenge the previous solutions.</li></ul>



<p><em>OVHcloud Standard Object Storage</em> hosts petabytes of data across the world on a strong and resilient infrastructure but our classical offer was not design to address those use cases. The performances of our classical object storage where not enough in those situations.</p>



<h1 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-AnewObjectStorageservicefordemandingapplications">A new Object Storage service for demanding applications</h1>



<p>So what is high performances for an object storage service? What are we speaking about?</p>



<p>There are mainly two things to consider when you need speed on your objects. The first one is the API. This is the first component that answers the requests you&#8217;ll send to the cluster, so the simplest API call should react as a flash. That&#8217;s the assurance that all the engine and automation tools on the cluster are optimized and not consuming precious milliseconds. The second one is the bandwidth. You&#8217;ll expect that now your object is identified, it should be delivered to you as soon as possible using the maximum capacity of disks and network.</p>



<p>So we are excited to provide <em>OVHcloud High Performance Object Storage</em> that fit those requirements in the upcoming weeks. The general availability should be the 21rst February at first in Strasbourg, then mid-March in Gravelines.</p>



<h1 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Somenumbers">Some numbers</h1>



<p>We&#8217;ll make some tests and compare that new service with the existing service at OVHcloud and the market leader on Object Storage, AWS S3. We&#8217;ll do those tests from OVHcloud network on a Public Cloud instance B2-120 which have a 10G public interface. This instance is located in Gravelines (north of France). The three tested services are located in central Europe, Strasbourg (France) for OVHcloud ones and Frankfurt (Germany, closed to Strasbourg) for AWS. The distance between the instance and the cluster are almost the same.</p>



<h2 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Time-to-First-Bytetest">Time-to-First-Byte test</h2>



<p>So what is the API efficiency on that new service? Here we want to compare the Time-to-First-Byte which give us an idea how the cluster manage to process the request, identify the object, check the right to access it and return it. So we&#8217;ll send tones of 1 Byte objects and measure the time needed to access it.</p>



<p>To be fare in that test, we need to take in consideration that we&#8217;ll get out to the OVHcloud network to reach the AWS cluster. Here are the ping we got :</p>



<p id="ovhcloud-instance-to-ovhcloud-object-storage"><strong>OVHcloud instance to OVHcloud Object Storage</strong></p>



<pre class="wp-block-code"><code class="">$ ping s3.sbg.perf.cloud.ovh.net
PING s3.sbg.perf.cloud.ovh.net (141.95.161.68) 56(84) bytes of data.
64 bytes from 141.95.161.68 (141.95.161.68): icmp_seq=1 ttl=53 time=10.2 ms</code></pre>



<p><strong>OVHcloud instance to AWS Object Storage</strong></p>



<pre class="wp-block-code"><code class="">$ ping s3.eu-central-1.amazonaws.com
PING s3.eu-central-1.amazonaws.com (52.219.169.77) 56(84) bytes of data.
64 bytes from s3.eu-central-1.amazonaws.com (52.219.169.77): icmp_seq=1 ttl=45 time=11.0 ms</code></pre>



<p>So we have almost the same latency,  let&#8217;s go for the Time-to-First-Byte for each services.</p>



<figure class="wp-block-image alignwide size-large"><img decoding="async" width="1024" height="254" src="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-1024x254.png" alt="" class="wp-image-22299" srcset="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-1024x254.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-300x75.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-768x191.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-1536x382.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-1-2048x509.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>OVHcloud High Perf looks a little bit better, not so far away but there is a small advantage for OVHcloud.</p>



<h2 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Smallandmediumfilestest">Small and medium files test</h2>



<p>Now we&#8217;ll test not only the API but a normal object usage looking on files from 10KB to 10MB which represent plenty of usages, especially when it comes to serve statics on the web. That could represent code, images, sound&#8230;</p>



<figure class="wp-block-image alignwide size-large"><img decoding="async" width="1024" height="465" src="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-1024x465.png" alt="" class="wp-image-22301" srcset="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-1024x465.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-300x136.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-768x349.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-1536x697.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-2-2048x930.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>As you can see, we leaved the field where the latency advantage where on OVHcloud side and we enter in the real performances using the whole chain including writing and reading on disks. Here, OVHcloud High Perf takes clearly the lead on 1MB files with around 55% faster than AWS S3 on download tests.</p>



<h2 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Largefilestest">Large files test</h2>



<p>When we move to 100MB files and more, we enter in a different space where the bandwidth is the main part which impact the global result. Here the data could be of course videos but also specific application files or large datasets.</p>



<figure class="wp-block-image alignwide size-large"><img loading="lazy" decoding="async" width="1024" height="462" src="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-1024x462.png" alt="" class="wp-image-22302" srcset="https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-1024x462.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-300x135.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-768x346.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-1536x692.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2022/02/Picture-3-2048x923.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Here, the upload performances are almost the same for AWS and OVHcloud but we still have a real difference on the download test with around 30% advantage in favor of OVHcloud High Perf.</p>



<h1 class="wp-block-heading" id="BlogBenchHighPerfObjectStorage-Sometakeawayaboutthisnewoffer">Some take away about this new offer</h1>



<p>Regarding the pure performances, OVHcloud High Perf Object Storage is a great challenger for AWS S3. The API is as fast as our competitor. We can notice a real advantage for OVHcloud on medium files (1MB to 100MB) where we go over 50% (1MB) faster than AWS on download and around 40% on upload (1MB).</p>
<img loading="lazy" decoding="async" src="//blog.ovhcloud.com/wp-content/plugins/matomo/app/matomo.php?idsite=1&amp;rec=1&amp;url=https%3A%2F%2Fblog.ovhcloud.com%2Fwhat-is-the-real-performance-of-the-new-high-performance-object-storage%2F&amp;action_name=What%20is%20the%20real%20performance%20of%20the%20new%20High%20Performance%20Object%20Storage%3F&amp;urlref=https%3A%2F%2Fblog.ovhcloud.com%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Industrialising storage benchmarks with Hosted Private Cloud from OVHcloud</title>
		<link>https://blog.ovhcloud.com/industrialising-storage-benchmarks-with-hosted-private-cloud-from-ovhcloud/</link>
		
		<dc:creator><![CDATA[François Lesage]]></dc:creator>
		<pubDate>Tue, 24 Dec 2019 07:00:00 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Benchmarks]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[VMware]]></category>
		<guid isPermaLink="false">https://www.ovh.com/blog/?p=16332</guid>

					<description><![CDATA[Benchmarking is a much debated topic in the computing industry due to the countless methods and approaches. However, this blog will not list all of these approaches but instead provide an insight into the way we benchmark different kinds of storage available under our Hosted Private Cloud solutions.&#160; Before discussing this in more detail we [&#8230;]<img src="//blog.ovhcloud.com/wp-content/plugins/matomo/app/matomo.php?idsite=1&amp;rec=1&amp;url=https%3A%2F%2Fblog.ovhcloud.com%2Findustrialising-storage-benchmarks-with-hosted-private-cloud-from-ovhcloud%2F&amp;action_name=Industrialising%20storage%20benchmarks%20with%20Hosted%20Private%20Cloud%20from%20OVHcloud&amp;urlref=https%3A%2F%2Fblog.ovhcloud.com%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></description>
										<content:encoded><![CDATA[
<p>Benchmarking is a much debated topic in the computing industry due to the countless methods and approaches. However, this blog will not list all of these approaches but instead provide an insight into the way we benchmark different kinds of storage available under our Hosted Private Cloud solutions.&nbsp;</p>



<p>Before discussing this in more detail we should understand why we benchmark in the first place. The number one reason is that we need to assess the impact on our customers&nbsp;before putting anything into production. This could be anything from a new storage platform, a new disk model, a kernel patch, to a firmware update and any number of use cases. </p>



<h2 class="wp-block-heading">Short story</h2>



<p>As we continue to improve our storage infrastructures and introduce new storage technologies we regularly enhance our benchmarking methodologies and tools. With thousands of hardware references and an equal number of configurations, the number of benchmarks we need to achieve is exponential. This is why it is vital to industrialise the process.  </p>



<p>In an effort to increase transparency we chose to conduct our benchmarks from the point of view of the end user. This means that all the orchestration which we describe in this blog post can be done by any of our Hosted Private Cloud customers. </p>



<h2 class="wp-block-heading">Tools &amp; Orchestration</h2>



<p>FIO, vdbench, I/O Meter, (dd&nbsp;!) are just some of the widely-used and proven tools to benchmark storage. They give you an overview of raw performance for a given storage type. But, what if you want to benchmark a whole infrastructure from end-to-end? This could include 1, 10, 100, 1000 VMs or more, with multiple disk/raid settings, multiple disk sizes, multiple block sizes. All with different generic workloads consisting of a certain percentage of reads/writes, sequential or random and run by so many threads.  You would also need to use workloads which match your production workloads. In fact the combinations are endless. </p>



<p>With all this in mind, for our first iteration, we started to use HCIbench to automate our benchmarks.</p>



<h2 class="wp-block-heading">Hyper-converged infrastructure benchmark</h2>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="276" height="282" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/1C143E56-B055-4658-B38A-204845DABF4B.jpeg" alt="HCIBench" class="wp-image-16652"/></figure></div>



<p>HCibench (<a href="https://flings.vmware.com/hcibench" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer">https://flings.vmware.com/hcibench</a>) is a free and open-source benchmark automation tool. It defines itself as a &#8220;Hyper-converged Infrastructure Benchmark&#8221;. It&#8217;s essentially an automation wrapper around the popular and proven open-source benchmark tools: Vdbench and Fio, making it easier to automate testing across an HCI cluster. HCIBench aims to simplify and accelerate customer POC performance testing in a consistent and controlled way. The tool fully automates the end-to-end process of deploying test VMs, coordinating workload runs, aggregating test results, performance analysis and collecting necessary data for troubleshooting purposes.</p>



<p></p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="415" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/1D129223-2B0A-422C-9253-E3509B19AE95-1024x415.jpeg" alt="HCIBench Appliance" class="wp-image-16653" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/12/1D129223-2B0A-422C-9253-E3509B19AE95-1024x415.jpeg 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/1D129223-2B0A-422C-9253-E3509B19AE95-300x121.jpeg 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/1D129223-2B0A-422C-9253-E3509B19AE95-768x311.jpeg 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/1D129223-2B0A-422C-9253-E3509B19AE95.jpeg 1489w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure></div>



<p>HCIbench is as easy to install as deploying an OVA (Open Virtual Appliance) in your VMware infrastructure:</p>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-install-1024x847.png" alt="" class="wp-image-16336" width="512" height="424" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-install-1024x847.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-install-300x248.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-install-768x636.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-install-1536x1271.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-install.png 1716w" sizes="auto, (max-width: 512px) 100vw, 512px" /></figure>



<p>Once HCIbench is set up, just point your browser to&nbsp;<a href="https://ip:8483/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer">https://IP:8483</a>&nbsp;and you&#8217;re ready to start your benchmarks:</p>



<figure class="wp-block-gallery columns-2 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex"><ul class="blocks-gallery-grid"><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/HCIbench-configuration-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="558" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/HCIbench-configuration-1024x558.png" alt="" data-id="16337" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/HCIbench-configuration-scaled.png" data-link="https://www.ovh.com/blog/?attachment_id=16337" class="wp-image-16337" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/HCIbench-configuration-1024x558.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/HCIbench-configuration-300x164.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/HCIbench-configuration-768x419.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/HCIbench-configuration-1536x837.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/HCIbench-configuration-2048x1117.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure></li><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-configuration2-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="285" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-configuration2-1024x285.png" alt="" data-id="16338" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-configuration2-scaled.png" data-link="https://www.ovh.com/blog/?attachment_id=16338" class="wp-image-16338" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-configuration2-1024x285.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-configuration2-300x84.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-configuration2-768x214.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-configuration2-1536x428.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-configuration2-2048x571.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure></li></ul></figure>



<p>Once you have entered your vCenter credentials and some additional information (datacenter, cluster, network, datastore etc..),&nbsp; you&#8217;ll be able to set guest VMs settings:</p>



<ul class="wp-block-list"><li>Number of VMs to deploy</li><li>Number of disks for each VM</li><li>Disk size</li><li>Benchmark tool (FIO or vdbench)</li><li>I/O parameter file (see details below)</li><li>Duration</li><li>And more &#8230;</li></ul>



<p>HCIbench will then take charge of all of the VM deployment/recycling operations and will execute your benchmark. The results are available in various forms, from Grafana interfaces to Excel files or simply flat text files for further external parsing&#8230;</p>



<figure class="wp-block-image size-large"><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-grafana-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="558" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/hcibench-grafana-1024x558.png" alt="" class="wp-image-16341" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-grafana-1024x558.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-grafana-300x163.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-grafana-768x418.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-grafana-1536x837.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/hcibench-grafana-2048x1116.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" id="BenchmarkingOVHCloud'sPrivateCloudstorage-Workloadparameterfiles,modelingI/Os">Workload parameter files, modeling I/Os</h2>



<p>Workload parameter files (using vdbench here) are at the heart of all benchmarks operations. They describe the I/O model you want to run against a given storage endpoint. Percentage of read/write , random/sequential, block size, threads and many other options are available.</p>



<p>We chose 3 different approaches to evaluate our storage platforms: generic workloads, application workloads and production workloads. </p>



<h3 class="wp-block-heading">&#8220;Generic&#8221; workloads</h3>



<p>By &#8220;generic&#8221; workloads we mean all workloads that look like &#8220;ONLY RANDOM READS&#8221; or &#8220;ONLY SEQUENTIAL WRITES&#8221;. They allow us to check how a storage type reacts on linear cases and how it performs with &#8220;extreme&#8221; cases.</p>



<figure class="wp-block-image size-medium"><img loading="lazy" decoding="async" width="221" height="300" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/workloads-generic-221x300.png" alt="" class="wp-image-16344" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/workloads-generic-221x300.png 221w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/workloads-generic.png 518w" sizes="auto, (max-width: 221px) 100vw, 221px" /></figure>



<p><strong>Sample of a &#8220;generic&#8221; vdbench workload parameter file</strong></p>



<pre class="wp-block-code"><code class="">root@photon-HCIBench [ /opt/automation/vdbench-param-files ]# cat 
GENERIC-ONLY-READS-RANDOM-16K-vdb-1vmdk-80ws-16k-100rdpct-100randompct-4threads
*SD:    Storage Definition
*WD:    Workload Definition
*RD:    Run Definitionsd=sd1,
        lun=/dev/sda,openflags=o_direct,
        hitarea=0,range=(0,80),
        threads=4,
        wd=wd1,
        sd=sd1,
        rd=run1,
        xfersize=16k,
        rdpct=100,
        seekpct=100,
        iorate=max,
        elapsed=120,
        interval=1</code></pre>



<p></p>



<h3 class="wp-block-heading">&#8220;Application&#8221; workloads</h3>



<p>By &#8220;application&#8221; workloads we mean workloads that match common production use cases like &#8220;DATABASE WORKLOAD&#8221; , &#8220;VDI WORKLOAD&#8221; ,&nbsp; &#8220;BACKUP WORKLOAD&#8221; etc.. With these benchmarks we can emulate a typical workload and verify the areas where a given storage type excels. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="551" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/application-workload-1024x551.png" alt="" class="wp-image-16393" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/12/application-workload-1024x551.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/application-workload-300x161.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/application-workload-768x413.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/application-workload-1536x827.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/application-workload.png 1568w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Sample of an &#8220;Application&#8221; vdbench workload parameter file</strong></p>



<pre class="wp-block-code"><code class="">root@photon-HCIBench [ /opt/automation/vdbench-param-files ]# cat 
OLTP-SQL-Oracle-Exchange-vdb-1vmdk-80ws-16k-100random-70rdpct-4threads
*SD:    Storage Definition
*WD:    Workload Definition
*RD:    Run Definitionsd=sd1,
        lun=/dev/sda,
        openflags=o_direct,
        hitarea=0,range=(0,80),
        threads=4wd=wd1,
        sd=(sd1),
        xfersize=16k,
        rdpct=70,
        seekpct=100,
        rd=run1,
        wd=wd1,
        iorate=max,
        elapsed=120,
        interval=1</code></pre>



<p></p>



<h3 class="wp-block-heading">&#8220;Production&#8221; workloads.</h3>



<p>Finally, another approach we are working on is the ability to &#8220;record&#8221; a production workload and &#8220;replay&#8221; it on an other storage endpoint to evaluate how the target storage performs with your production workload&nbsp;<strong><em>without</em>&nbsp;the need to run your real production on it. </strong>The trick here is to use a mix of 3 tools blktrace , btrecord and btreplay to track and trace low level I/O calls and be able to replay those traces on another storage platform.&nbsp;<br><br>In a future blog post we&#8217;ll share this feature with you, stay tuned!</p>



<div style="height:73px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading"><strong>Industrialisation of HCIbench runs with Rundeck scheduler</strong></h2>



<div style="height:29px" aria-hidden="true" class="wp-block-spacer"></div>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="402" height="102" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/B9E7A832-168F-4BDF-B9D2-4DC336901966.jpeg" alt="Rundeck" class="wp-image-16654" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/12/B9E7A832-168F-4BDF-B9D2-4DC336901966.jpeg 402w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/B9E7A832-168F-4BDF-B9D2-4DC336901966-300x76.jpeg 300w" sizes="auto, (max-width: 402px) 100vw, 402px" /></figure></div>



<p>As we&#8217;ve seen, in few clicks we&#8217;re able to define and launch a benchmark scenario under a specific workload. Deployment and recycling of probing VMs are fully automated. What if, next, we want to iterate through multiple scenarios? As part of a whole validation of a new storage platform for example? At this point we started to use Rundeck (<a href="http://www.rundeck.com" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer">http://www.rundeck.com)</a>, a free and open-source runbook automation&nbsp;scheduler, in front of HCIbench. The idea is to be able to create complete benchmark scenario collections.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="519" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/74FB5ACC-8818-4D29-9575-35E33B160D76-1024x519.jpeg" alt="Industrialisation of HCIbench runs with Rundeck scheduler" class="wp-image-16655" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/12/74FB5ACC-8818-4D29-9575-35E33B160D76-1024x519.jpeg 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/74FB5ACC-8818-4D29-9575-35E33B160D76-300x152.jpeg 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/74FB5ACC-8818-4D29-9575-35E33B160D76-768x389.jpeg 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/74FB5ACC-8818-4D29-9575-35E33B160D76.jpeg 1518w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>The first step was to understand how HCIbench works under the hood so we could control it via the Rundeck scheduler. HCIbench is designed to be used via a web interface but all the mechanics behind it are done via clean and separate scripts like start/stop/kill. All the benchmark settings are stored in a clean flat configuration file which was easy to convert as a template&#8230;</p>



<h4 class="wp-block-heading">Templating HCIbench configuration file</h4>



<pre class="wp-block-code"><code class="">root@photon-HCIBench [ /opt/automation/conf ]# cat template.yaml
vc: '&lt;VCENTER_HOSTIP>'
vc_username: '&lt;USERNAME>'
vc_password: '&lt;PASSWORD>'
datacenter_name: '&lt;DATACENTER>'
cluster_name: '&lt;CLUSTER>'
number_vm: '&lt;NUMBERVM>'
testing_duration: '&lt;DURATION>'
datastore_name:- '&lt;DATASTORE>'
output_path: '&lt;OUTPUT_PATH>'
...</code></pre>



<h4 class="wp-block-heading">Bench &#8220;root job&#8221;</h4>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="373" height="129" src="https://www.ovh.com/blog/wp-content/uploads/2019/12/636A92B8-DA0C-4AD2-BBC7-9B481EC7156E.jpeg" alt="" class="wp-image-16656" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/12/636A92B8-DA0C-4AD2-BBC7-9B481EC7156E.jpeg 373w, https://blog.ovhcloud.com/wp-content/uploads/2019/12/636A92B8-DA0C-4AD2-BBC7-9B481EC7156E-300x104.jpeg 300w" sizes="auto, (max-width: 373px) 100vw, 373px" /></figure></div>



<p>A rundeck job consists of a sequence of steps which will execute on a defined list of nodes. In our context nodes are VMs running HCIbench.</p>



<p>What we call the bench &#8220;root job&#8221; is a rundeck job which is the main bench entry point. Its generic role is to be called by other jobs and to  launch one specific bench.&nbsp;</p>



<p>Options (parameters) of this job are all the items from the HCIbench configuration template (see above).</p>



<figure class="wp-block-gallery columns-2 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex"><ul class="blocks-gallery-grid"><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck1-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="516" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck1-1024x516.png" alt="" data-id="16357" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck1-scaled.png" data-link="https://www.ovh.com/blog/?attachment_id=16357" class="wp-image-16357" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck1-1024x516.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck1-300x151.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck1-768x387.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck1-1536x774.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck1-2048x1031.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure></li><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck2.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="388" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck2-1024x388.png" alt="" data-id="16358" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck2.png" data-link="https://www.ovh.com/blog/?attachment_id=16358" class="wp-image-16358" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck2-1024x388.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck2-300x114.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck2-768x291.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck2-1536x582.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck2-2048x776.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure></li></ul></figure>



<p></p>



<p>The workflow for this job is as follows:</p>



<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8211; Parse job options<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8211; SSH connect to HCIbench VM<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8211; Populate configuration template with corresponding job options<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#8211; Launch HCIbench&nbsp;</p>



<div class="wp-block-image"><figure class="aligncenter size-full is-resized"><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck3.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck3.png" alt="" class="wp-image-16360" width="562" height="273" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3.png 2248w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3-300x145.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3-1024x497.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3-768x372.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3-1536x745.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck3-2048x993.png 2048w" sizes="auto, (max-width: 562px) 100vw, 562px" /></a></figure></div>



<p></p>



<h4 class="wp-block-heading">Bench jobs</h4>



<p>Secondly we have &#8220;bench jobs&#8221;. Through rundeck API we created jobs for each workload to be able to launch benches individually or by group, as required. Each of those &#8220;bench jobs&#8221; call the &#8220;root job&#8221; explained above with corresponding bench parameters.</p>



<div class="wp-block-image"><figure class="aligncenter size-full is-resized"><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck4.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck4.png" alt="" class="wp-image-16361" width="361" height="165" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck4.png 1442w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck4-300x137.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck4-1024x469.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck4-768x352.png 768w" sizes="auto, (max-width: 361px) 100vw, 361px" /></a><figcaption><br></figcaption></figure></div>



<h4 class="wp-block-heading">&#8220;Super&#8221; jobs</h4>



<p>Finally we have &#8220;Super jobs&#8221;. These are collections of jobs, their workflows are series of bench jobs calls. We use the cascading options mechanism to pass options through jobs. In the example below we bench a vSAN cluster through a complete panel of I/O models.</p>



<figure class="wp-block-image size-large"><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck5.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="383" height="1024" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck5-383x1024.png" alt="" class="wp-image-16366" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck5-383x1024.png 383w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck5-112x300.png 112w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck5-574x1536.png 574w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck5.png 702w" sizes="auto, (max-width: 383px) 100vw, 383px" /></a></figure>



<p>Another interesting feature of using Rundeck as an HCIbench scheduler is the ability to keep all logs from HCIbench&#8217;s VMs and the timing of each benchmark at the same place. Therefore, it&#8217;s easy to browse and search around all our benchmarks or to target a specific behaviour shown by graphics.</p>



<figure class="wp-block-image size-full is-resized"><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck6-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/rundeck6-scaled.png" alt="" class="wp-image-16369" width="640" height="347" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-scaled.png 2560w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-300x163.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-1024x555.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-768x416.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-1536x832.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/rundeck6-2048x1109.png 2048w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></figure>



<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading"><strong>Results &amp; use cases</strong></h2>



<h3 class="wp-block-heading">vSAN</h3>



<p>Integrating vSAN into our Hosted Private Cloud product was a typical benchmark project where we needed not only to check how the whole platform performed in every area but also to refine the design of the platform itself. On one side we evaluated hardware designs with multiple disk references and on the other side we improved the software design by evaluating various vSAN disk group and cache configurations.</p>



<figure class="wp-block-gallery columns-2 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex"><ul class="blocks-gallery-grid"><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN1.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="564" height="534" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN1.png" alt="" data-id="16368" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN1.png" data-link="https://www.ovh.com/blog/?attachment_id=16368" class="wp-image-16368" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN1.png 564w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN1-300x284.png 300w" sizes="auto, (max-width: 564px) 100vw, 564px" /></a></figure></li><li class="blocks-gallery-item"><figure><a href="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN2-scaled.png" data-wpel-link="exclude"><img loading="lazy" decoding="async" width="1024" height="558" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN2-1024x558.png" alt="" data-id="16367" data-full-url="https://www.ovh.com/blog/wp-content/uploads/2019/11/vSAN2-scaled.png" data-link="https://www.ovh.com/blog/?attachment_id=16367" class="wp-image-16367" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN2-1024x558.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN2-300x163.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN2-768x418.png 768w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN2-1536x837.png 1536w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/vSAN2-2048x1115.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></a></figure></li></ul></figure>



<p></p>



<h3 class="wp-block-heading">New kernel impact on storage arrays</h3>



<p>Another interesting use case is when we&#8217;re evaluating impacts of a new kernel on our OmniOS (<a href="http://www.omniosce.org%29/" data-wpel-link="external" target="_blank" rel="nofollow external noopener noreferrer">http://www.omniosce.org)</a>&nbsp;based storage arrays. OmniOS is a free open-source Operating System based on OpenSolaris which integrates some great technologies such as ZFS, DTrace, Crossbow, SMF, Bhyve, KVM and Linux zone support. This case shows not only slightly better performances but also a great improvement in I/Os handling.</p>



<p>Indeed, among a lot of different benchmarks, new kernel (r151022), shows far more stable and linear I/Os. This bench also confirms few ZFS/NFS fixes that were included in this kernel which fix latency issues during ZFS send/receive snapshot.</p>



<p></p>



<div class="wp-block-image"><figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" src="https://www.ovh.com/blog/wp-content/uploads/2019/11/omnios.png" alt="" class="wp-image-16370" width="633" height="401" srcset="https://blog.ovhcloud.com/wp-content/uploads/2019/11/omnios.png 1266w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/omnios-300x190.png 300w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/omnios-1024x649.png 1024w, https://blog.ovhcloud.com/wp-content/uploads/2019/11/omnios-768x487.png 768w" sizes="auto, (max-width: 633px) 100vw, 633px" /></figure></div>



<div style="height:46px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Industrialising our benchmarks enabled us to monitor the performance of our storage. First of all, because we created them with our users in mind, we&#8217;re aligned with what our customers would get. In addition, benchmarks give us an insight into&nbsp;troubleshooting storage issues that are very specific and/or only visible from VMs. We plan to extend this so we can check how the compute side performs (CPU/RAM/&#8230;). Finally, we&#8217;re now focusing on the record/replay workload feature allowing our users to predict how their production workload will perform&nbsp;on &#8220;XYZ&#8221; platforms without having to actually run their production environment on it. We will detail this in a future blog post, stay tuned!<br></p>
<img loading="lazy" decoding="async" src="//blog.ovhcloud.com/wp-content/plugins/matomo/app/matomo.php?idsite=1&amp;rec=1&amp;url=https%3A%2F%2Fblog.ovhcloud.com%2Findustrialising-storage-benchmarks-with-hosted-private-cloud-from-ovhcloud%2F&amp;action_name=Industrialising%20storage%20benchmarks%20with%20Hosted%20Private%20Cloud%20from%20OVHcloud&amp;urlref=https%3A%2F%2Fblog.ovhcloud.com%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
