# Running ES on virtual machines

**URL:** <https://discuss.elastic.co/t/running-es-on-virtual-machines/8437>\
**Category:** Elasticsearch\
**Created:** [July 17, 2012, 6:02pm UTC](https://discuss.elastic.co/t/running-es-on-virtual-machines/8437 "2012-07-17T18:02:15Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ashish\_Nigam](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ashish_nigam/32/2804_2.png) [@Ashish\_Nigam](https://discuss.elastic.co/u/Ashish_Nigam)\
**Post date:** [July 17, 2012, 6:02pm UTC](https://discuss.elastic.co/t/running-es-on-virtual-machines/8437/1 "2012-07-17T18:02:15Z")

</div>

What data points should be considered to make sure that running ES on a VM is similar to running it in a physical server, with respect to its performance?

I know disk I/O is of prime consideration when using VMs. So how is elasticsearch deployed in production using VMs? Any pointers or suggestions will help.

Thanks  
Ashish

---

<div class="post-metadata">

**Author:** ![Radu\_Gheorghe1](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/radu_gheorghe1/32/2688_2.png) [@Radu\_Gheorghe1](https://discuss.elastic.co/u/Radu_Gheorghe1)\
**Post date:** [July 18, 2012, 4:54am UTC](https://discuss.elastic.co/t/running-es-on-virtual-machines/8437/2 "2012-07-18T04:54:37Z")

</div>

Hi Ashish,

I'm running ES on virtual machines. It works, but of course not as well as  
on physical ones. Partly due to I/O, like you said. That translates into  
lower insert rates (where, at least for me, storage is the bottleneck),  
while queries aren't that much worse. I guess it also depends on which  
hardware setup and which technology you run your VMs.

So if you want good insert rates, you better make sure that each VM has  
dedicated storage. Otherwise you might notice that by adding more nodes you  
don't get better insert speed (might be worse), because they will take  
turns in writing to the poor disk.

In my experience, queries don't suffer that much, unless you push it. For  
example, in the tests I did, once query times went over 1 second or so, as  
I continued to add documents, the performance drop was much bigger with VMs  
than it was with physical machines. That probably is also due to poor I/O.

Needless to say, the more memory, the better 😃 And I guess all the  
performance tuning you could do for a physical machine would apply to VMs  
as well.

Good luck!  
Radu

On Tuesday, July 17, 2012 9:02:15 PM UTC+3, Ashish Nigam wrote:

> What data points should be considered to make sure that running ES on a VM  
> is similar to running it in a physical server, with respect to its  
> performance?
> 
> I know disk I/O is of prime consideration when using VMs. So how is  
> elasticsearch deployed in production using VMs? Any pointers or suggestions  
> will help.
> 
> Thanks  
> Ashish

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 3:20am UTC](https://discuss.elastic.co/t/running-es-on-virtual-machines/8437/3 "2017-07-06T03:20:01Z")

</div>


