Informix on VM
Posted in 2014
A user asked for best-practice guidance on running Informix 11.7 in a virtual machine (raw vs cooked/direct I/O, resident memory, etc.). No formal document was cited. Art Kagel advised against VMs generally, citing poor I/O performance (excluding Solaris partitions/AIX LPARs). Others reported successful production use: RHEL5 64-bit VMs with cooked files plus direct I/O, RESIDENT memory and generous dedicated RAM/CPU, and z/VM with Suse and fast SAN. Fernando Nunes suggested using larger (4KB) dbspace pages and external tables to cut the number of I/O operations. Consensus advice rather than a single fix.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: General Discussion
I was wondering if anyone has ever created or seen a document that describes best practices for running Informix 11.x (specifically 11.7) on a virtual machine. I'm wondering if there are any "must-dos" or "don't-dos" such as raw vs cooked files with direct i/o, resident vs. non-resident, anything like that.
My take: Best practice for running Informix on VM: Don't. Unless the server will be very low throughput or you have TONS of real physical RAM to assign to the VM just don't. IO performance on VMs is awful. Bottom line. Bare iron all the way. This does not include Solaris partitions or AIX LPARs. VMs hosted on Linux are better than under Windows, but that's like saying a fork is better for eating soup than a single chopstick. Art Art S. Kagel, Principal Consultant ASK Database Management Blog: http://informix-myview.blogspot.com/ Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Wed, Jan 29, 2014 at 3:00 PM, BILL GLIDDEN <bglidden1962@gmail.com>wrote: > I was wondering if anyone has ever created or seen a document that > describes > best practices for running Informix 11.x (specifically 11.7) on a virtual > machine. I'm wondering if there are any "must-dos" or "don't-dos" such as > raw > vs cooked files with direct i/o, resident vs. non-resident, anything like > that. > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --001a1133a85cc5721d04f121b220
At least you could hollow out a chopstick and make a straw :) But you made an interesting point about the i/o throughput because we do seem to suffer a little bit in the i/o performance area. But once the data is cached we're good. So the initial read is a little slow. I've seen some articles that indicate that cooked files with direct i/o are better on VMs than raw files, but I'd like to test that before I move in that direction. I'm stuck with the VM, so I'll do what I can. Thanks for the info, Art.
Hi Bill,
We run Informix Servers on VM's here. Looking at one of our busier ones, OAT
tells me we have around 40,000 SQL operations/second.
Not really sure if that's high :)
We have Redhat Linux 5, 64bit, and use cooked files + direct IO, we also have
memory set to resident.
Our VM has 2 virtual CPU's and 8 GB of memory assigned, we have just over 4GB
assigned to the engine.
I suspect the key is to get plenty of memory assigned, dedicated to your VM.
If your host server is not over subscribed on memory or if the VMWare admins
can give you a guaranteed slice of memory I wouldn't expect to see huge issues.
In our case the VM performance was better than the physical tin that we
replaced. Obviously we moved to new hardware so got benefits from that upgrade.
Personally I'd never go back, Having someone else responsible for the hardware
environment is brilliant.
Here's some stats:
onstat -g buf
IBM Informix Dynamic Server Version 11.70.FC2GE -- On-Line -- Up 23:59:45 --4186444 Kbytes
Profile
Buffer pool page size: 2048
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
4058526 113560268 6375586435 99.94 6214256 18182794 37667171 83.50
bufwrits_sinceckpt bufwaits ovbuff flushes
57066 87547 0 297
Fg Writes LRU Writes Avg. LRU Time Chunk Writes
0 0 nan 910308
Fast Cache Stats
gets hits %hits puts
124098824 122856766 99.00 23856492
onstat -g glo
IBM Informix Dynamic Server Version 11.70.FC2GE -- On-Line -- Up 1 days
00:02:28 -- 4186444 Kbytes
MT global info:
sessions threads vps lngspins
49 202 14 458
sched calls thread switches yield 0 yield n yield forever
total: 1161286011 221665139 957137218 11538537 32487923
per sec: 6454 4648 1806 112 78
Virtual processor summary:
class vps usercpu syscpu total
cpu 3 49640.37 1580.00 51220.37
aio 5 6.50 23.20 29.70
lio 1 0.00 0.02 0.02
pio 1 0.00 0.01 0.01
adm 1 0.17 0.21 0.38
soc 1 320.08 658.51 978.59
msc 1 0.27 0.07 0.34
fifo 1 0.00 0.02 0.02
total 14 49967.39 2262.04 52229.43
onstat -g iov
IBM Informix Dynamic Server Version 11.70.FC2GE -- On-Line -- Up 1 days
00:04:40 -- 4186444 Kbytes
AIO I/O vps:class/vp/id s io/s totalops dskread dskwrite dskcopy wakeups io/wup errors
tempops
fifo 9 0 i 0.0 0 0 0 0 1 0.0 0 0
kio -1 0 i 36.7 3181428 1035850 2145578 0 9178715 0.3 0 0
kio -1 1 i 34.2 2960095 1001914 1958181 0 8553495 0.3 0 0
kio -1 2 s 22.2 1926212 782766 1143446 0 5952647 0.3 0 0
msc 8 0 i 0.0 1107 0 0 0 1102 1.0 0 1107
aio 7 0 i 9.3 806551 385619 338437 0 793528 1.0 0 2039
aio 10 1 i 0.4 33386 18360 14711 0 44367 0.8 0 10
aio 11 2 i 0.0 1639 641 911 0 2518 0.7 0 1
aio 12 3 i 0.0 230 27 176 0 622 0.4 0 0
aio 13 4 i 0.0 671 281 377 0 898 0.7 0 0
pio 6 0 i 0.0 0 0 0 0 1 0.0 0 0
lio 5 0 i 0.0 0 0 0 0 1 0.0 0 0
Let me know if you want to know any more about our environment, or if you find
an awesome vmware speed tips :)
We haven't really done much experimenting with different setups.
Btw: being up for only 24 hrs is due to site power outage, not Informix or VM
related...
Cheers,
James Brunskill
Process Information Lead
Fonterra Co-operative Group Limited
james.brunskill@fonterra.com direct +64 7 850 7738 (ext 77808) mobile: +64 21
2400 215
Fonterra Co-operative Group Limited, Te Rapa Dairy Factory, Hamilton, New
Zealand
-----Original Message-----
From: ids-bounces@iiug.org [mailto:ids-bounces@iiug.org] On Behalf Of BILL
GLIDDEN
Sent: Thursday, 30 January 2014 9:28 a.m.
To: ids@iiug.org
Subject: Re: Informix on VM [32389]
At least you could hollow out a chopstick and make a straw :) But you made an
interesting point about the i/o throughput because we do seem to suffer a
little bit in the i/o performance area. But once the data is cached we're
good. So the initial read is a little slow.
I've seen some articles that indicate that cooked files with direct i/o are
better on VMs than raw files, but I'd like to test that before I move in that
direction.
I'm stuck with the VM, so I'll do what I can. Thanks for the info, Art.
*******************************************************************************
Forum Note: Use "Reply" to post a response in the discussion forum.
DISCLAIMER
This email contains information that is confidential and which may be legally
privileged. If you have received this email in error, please notify the sender
immediately and delete the email. This email is intended solely for the use of
the intended recipient and you may not use or disclose this email in any way.
I can add to that. We have a system based on the FEDERAL Electronic Court. We have 4 servers in ZVM each running about 10 - 12 courts /instances. Usage and I/O is negligible and we use cooked files. BUT then again the ZVM provideds 6 IO channels each with 32GB memory running at 10GB SAN connection. On 01/29/2014 05:31 PM, James Brunskill wrote: > Hi Bill, <SNIP> -- Ben Duncan - Business Network Solutions, Inc. 336 Elton Road Jackson MS, 39212 "Never attribute to malice, that which can be adequately explained by stupidity" - Hanlon's Razor
Oh yeah, I forgot to add, these are Suse 11.2/3 based with 8GB ram allocated to each. On 01/29/2014 05:55 PM, Ben Duncan wrote: > I can add to that. > > We have a system based on the FEDERAL Electronic Court. > > We have 4 servers in ZVM each running about 10 - 12 courts /instances. > > Usage and I/O is negligible and we use cooked files. > > BUT then again the ZVM provideds 6 IO channels each with 32GB memory running > at 10GB SAN connection. > > On 01/29/2014 05:31 PM, James Brunskill wrote: >> Hi Bill, > <SNIP> > -- Ben Duncan - Business Network Solutions, Inc. 336 Elton Road Jackson MS, 39212 "Never attribute to malice, that which can be adequately explained by stupidity" - Hanlon's Razor
The closest I was to a Linux VM environment with a (future) production
database, the reason why I was called was I/O.
Customer already had a storage supplier's report saying the system could
not handle so many I/O *operations*. Suggestion was to get more "disk
heads" into the system.
We did notice a simple "load from file insert into table" would cause
issues in the hardware environment.
At the time I've found some relatively vague "best practices for I/O under
VMware"...
The situation was better (much) once we created 4KB dbspaces. At the time I
tried to explain the customer that dbload should be very I/O light due to
it's "native inefficiency".
And I suggested a test using external tables... To my surprise (at the
time), it went much faster (as it was to be expected) but the I/O load was
hardly noticeable in the system.
After some investigation, it did a LOT less I/O operations, but a lot more
data in each (big buffers).
So... my advice would be to use 4KB dbspaces for your data... it should
help.
Regards
On Wed, Jan 29, 2014 at 8:22 PM, Art Kagel <art.kagel@gmail.com> wrote:
> My take: Best practice for running Informix on VM: Don't. Unless the
> server will be very low throughput or you have TONS of real physical RAM to
> assign to the VM just don't.
>
> IO performance on VMs is awful. Bottom line. Bare iron all the way.
>
> This does not include Solaris partitions or AIX LPARs. VMs hosted on Linux
> are better than under Windows, but that's like saying a fork is better for
> eating soup than a single chopstick.
>
> Art
>
> Art S. Kagel, Principal Consultant
> ASK Database Management
>
> Blog: http://informix-myview.blogspot.com/
>
> Disclaimer: Please keep in mind that my own opinions are my own opinions
> and do not reflect on the IIUG, nor any other organization with which I am
> associated either explicitly, implicitly, or by inference. Neither do
> those opinions reflect those of other individuals affiliated with any
> entity with which I am affiliated nor those of the entities themselves.
>
> On Wed, Jan 29, 2014 at 3:00 PM, BILL GLIDDEN <bglidden1962@gmail.com
> >wrote:
>
> > I was wondering if anyone has ever created or seen a document that
> > describes
> > best practices for running Informix 11.x (specifically 11.7) on a virtual
> > machine. I'm wondering if there are any "must-dos" or "don't-dos" such as
> > raw
> > vs cooked files with direct i/o, resident vs. non-resident, anything like
> > that.
> >
> >
> >
> >
>
>
*******************************************************************************
> > Forum Note: Use "Reply" to post a response in the discussion forum.
> >
> >
>
> --001a1133a85cc5721d04f121b220
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--
Fernando Nunes
Portugal
http://informix-technology.blogspot.com
My email works... but I don't check it frequently...
--001a11339ae410157404f12552b5