I'm still running CentOS 5 with Xen. We recently replaced a virtual host system board with an Intel S1400FP4, so the host went from a 4 core Xeon with 32G RAM to a 6 core Xeon with 48G RAM, max 96G. The drives are SSD. I was recently asked to move an InterBase server from Windows 7 to Windows Server. The database is 30G. I'm speculating that if I put the database on a 35G virtual disk and mirror it to a 35G RAM disk, the speed of database access might improve. I use local LVM for my virtual disks with DRBD on top to mirror the disk to a backup server. If I change grub.conf to increase RAM disk size and increase host RAM, I could create a 35G RAM disk. I'd modify rc.local to add pvcreate /dev/ramdisk vgextend vg /dev/ramdisk lvconvert -m 1 --corelog vg/lv_database /dev/ramdisk Even with lv_database being 35G, it doesn't take long to activate the mirror. I haven't decided where to put the commands to turn off the lvm mirror. lvconvert -m 0 vg/lv_database vgreduce vg /dev/ramdisk pvremove /dev/ramdisk I haven't put this in real world use, yet. On it's face, this might speed up database access. Would we expect it to speed up database access in real world use? Should I document the process so others could know how to do this? I realize new documentation for CentOS 5 virtualization would be considered obsolete before I wrote it but I'm expecting to test CentOS 7 virtualization in the next few months and, when I am comfortable, I'd upgrade my 18 virtual hosts. I would update the documentation, at that time, as well.
On Fri, Jan 22, 2016 at 11:02 AM, Ed Heron <Ed at heron-ent.com> wrote:> I'm still running CentOS 5 with Xen. > > We recently replaced a virtual host system board with an Intel > S1400FP4, so the host went from a 4 core Xeon with 32G RAM to a 6 core > Xeon with 48G RAM, max 96G. The drives are SSD. > > I was recently asked to move an InterBase server from Windows 7 to > Windows Server. The database is 30G. > > I'm speculating that if I put the database on a 35G virtual disk and > mirror it to a 35G RAM disk, the speed of database access might improve. > > I use local LVM for my virtual disks with DRBD on top to mirror the > disk to a backup server. > > If I change grub.conf to increase RAM disk size and increase host RAM, > I could create a 35G RAM disk. > > I'd modify rc.local to add > pvcreate /dev/ramdisk > vgextend vg /dev/ramdisk > lvconvert -m 1 --corelog vg/lv_database /dev/ramdisk > > Even with lv_database being 35G, it doesn't take long to activate the > mirror. > > I haven't decided where to put the commands to turn off the lvm > mirror. > lvconvert -m 0 vg/lv_database > vgreduce vg /dev/ramdisk > pvremove /dev/ramdisk > > I haven't put this in real world use, yet. > > On it's face, this might speed up database access. Would we expect it > to speed up database access in real world use? > > Should I document the process so others could know how to do this? I > realize new documentation for CentOS 5 virtualization would be > considered obsolete before I wrote it but I'm expecting to test CentOS 7 > virtualization in the next few months and, when I am comfortable, I'd > upgrade my 18 virtual hosts. I would update the documentation, at that > time, as well. > >I may not understand enough to understand what you are doing, you want to actively mirror this with LVM or?
On Fri, 2016-01-22 at 14:56 -0600, NightLightHosts Admin wrote:> On Fri, Jan 22, 2016 at 11:02 AM, Ed Heron <Ed at heron-ent.com> wrote: > > I'm still running CentOS 5 with Xen. > > > > We recently replaced a virtual host system board with an Intel > > S1400FP4, so the host went from a 4 core Xeon with 32G RAM to a 6 core > > Xeon with 48G RAM, max 96G. The drives are SSD. > > > > I was recently asked to move an InterBase server from Windows 7 to > > Windows Server. The database is 30G. > > > > I'm speculating that if I put the database on a 35G virtual disk and > > mirror it to a 35G RAM disk, the speed of database access might improve. > > > > I use local LVM for my virtual disks with DRBD on top to mirror the > > disk to a backup server. > > > > If I change grub.conf to increase RAM disk size and increase host RAM, > > I could create a 35G RAM disk. > > > > I'd modify rc.local to add > > pvcreate /dev/ramdisk > > vgextend vg /dev/ramdisk > > lvconvert -m 1 --corelog vg/lv_database /dev/ramdisk > > > > Even with lv_database being 35G, it doesn't take long to activate the > > mirror. > > > > I haven't decided where to put the commands to turn off the lvm > > mirror. > > lvconvert -m 0 vg/lv_database > > vgreduce vg /dev/ramdisk > > pvremove /dev/ramdisk > > > > I haven't put this in real world use, yet. > > > > On it's face, this might speed up database access. Would we expect it > > to speed up database access in real world use? > > > > Should I document the process so others could know how to do this? I > > realize new documentation for CentOS 5 virtualization would be > > considered obsolete before I wrote it but I'm expecting to test CentOS 7 > > virtualization in the next few months and, when I am comfortable, I'd > > upgrade my 18 virtual hosts. I would update the documentation, at that > > time, as well. > >> I may not understand enough to understand what you are doing, you want > to actively mirror this with LVM or?Yes, in a test environment, I am mirroring a Logical Volume with a RAM disk to increase the perceived speed of the disk. I'm expecting to convert a live guest to this type of setup, this weekend. I was asking 2 questions. 1. Should I expect a significant increase in speed in a real world environment? With enough RAM, a good caching system will eventually do a similar function. This is almost like pre-loading a cache. 2. Should I document the process for others? I'm using CentOS 5 now, which is on it's way out, but I would update the documentation to include CentOS 7 when I upgrade my servers.
On 01/22/2016 11:02 AM, Ed Heron wrote:> I'm still running CentOS 5 with Xen. > > We recently replaced a virtual host system board with an Intel > S1400FP4, so the host went from a 4 core Xeon with 32G RAM to a 6 core > Xeon with 48G RAM, max 96G. The drives are SSD. > > I was recently asked to move an InterBase server from Windows 7 to > Windows Server. The database is 30G. > > I'm speculating that if I put the database on a 35G virtual disk and > mirror it to a 35G RAM disk, the speed of database access might improve.If that were running under Linux rather than Windows I'd suggest just giving that extra 35GB to its kernel and letting its normal caching keep everything in RAM. Whether Windows (7 or Server) would be clever enough to do that is another question. Of course you could just let the Linux host do the caching, but that runs the risk of other VMs or host activity displacing some of that cache and affecting the performance of your database VM. -- Bob Nichols "NOSPAM" is really part of my email address. Do NOT delete it.
On Sat, 2016-01-23 at 09:27 -0600, Robert Nichols wrote:> On 01/22/2016 11:02 AM, Ed Heron wrote: > > I'm still running CentOS 5 with Xen. > > > > We recently replaced a virtual host system board with an Intel > > S1400FP4, so the host went from a 4 core Xeon with 32G RAM to a 6 core > > Xeon with 48G RAM, max 96G. The drives are SSD. > > > > I was recently asked to move an InterBase server from Windows 7 to > > Windows Server. The database is 30G. > > > > I'm speculating that if I put the database on a 35G virtual disk and > > mirror it to a 35G RAM disk, the speed of database access might improve. > > If that were running under Linux rather than Windows I'd suggest just > giving that extra 35GB to its kernel and letting its normal caching > keep everything in RAM. Whether Windows (7 or Server) would be clever > enough to do that is another question. Of course you could just let > the Linux host do the caching, but that runs the risk of other VMs > or host activity displacing some of that cache and affecting the > performance of your database VM. >Yes... You've got much of my thought process. The RAM disk mirror pre-loads the database into memory and forces it to stay in RAM.