--Apple-Mail=_2B6E5EAC-A5EA-4F24-8549-C3234A9C6DD6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=utf-8
On 19 Apr 2017, at 16:28, Gianluca Cecchi
<gianluca.cecchi(a)gmail.com> =
wrote:
=20
On Wed, Apr 19, 2017 at 3:44 PM, Martin Polednik <mpolednik(a)redhat.com =
<mailto:mpolednik@redhat.com>> wrote:
=20
=20
If you are using recent CentOS (or I guess Fedora), there isn't any
extra setup required. Just create the custom property:
=20
Both my engine and my hosts are CentOS 7.3 + updates
that=E2=80=99s good
=20
=20
On the host where engine is running:
=20
$ engine-config -s "UserDefinedVMProperties=3Dhugepages=3D^.*$"
$ service ovirt-engine restart
=20
and you should see 'hugepages' when editing a VM under custom =
properties.
=20
So no vdsm hook at all to install?
today you still need the hook.
=20
=20
Set the number to (desired memory / 2048) and you're good to go. The
VM will run with it's memory backed by hugepages.
=20
As in sysctl.conf? So that if I want 4Gb of Huge Pages I have to set =
2048?
yes. there might be some=20
=20
=20
If you need
hugepages even inside the VM, do whatever you would do on a physical
host.
=20
mpolednik
=20
=20
yes, the main subject is to have Huge Pages inside the guest, so that =
Oracle
RDBMS at startup detect them and use them
yes, so if you do that via sysctl.conf on real HW just do the same here, =
or modify kernel cmdline.
Note that those are two separate things
the hook is making QEMU process use hugepages memory in the host - that =
improves performance of any VM
then how it looks in guest is no concern to oVirt, it=E2=80=99s =
guest-side hugepages. You can enable/set them regardless the previous =
step, which may be fine if you just want to expose the capability to =
some app - e.g. in testing that the guest-side Oracle can work with =
hugepages in the guest.
But you probably want both Oracle to see hugepages and also actually use =
them - then you need both reserve that on host for qemu process and then =
inside guest reserve that for oracle. I.e. you need to add a =
=E2=80=9Cbuffer=E2=80=9D on host side to accommodate the non-hugepages =
parts of the guest e.g. on 24GB host you can reserve 20GB hugepages for =
VMs to use, and then run a VM with 20GB memory, reserving 16GB hugepages =
inside the guest for oracle to use.
Thanks,
michal
=20
Gianluca=20
--Apple-Mail=_2B6E5EAC-A5EA-4F24-8549-C3234A9C6DD6
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=utf-8
<html><head><meta http-equiv=3D"Content-Type"
content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><br class=3D""><div><blockquote
type=3D"cite" class=3D""><div =
class=3D"">On 19 Apr 2017, at 16:28, Gianluca Cecchi <<a =
href=3D"mailto:gianluca.cecchi@gmail.com" =
class=3D"">gianluca.cecchi(a)gmail.com</a>&gt;
wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div
dir=3D"ltr" =
class=3D""><div class=3D"gmail_extra"><div
class=3D"gmail_quote">On Wed, =
Apr 19, 2017 at 3:44 PM, Martin Polednik <span dir=3D"ltr" =
class=3D""><<a href=3D"mailto:mpolednik@redhat.com"
target=3D"_blank" =
class=3D"">mpolednik(a)redhat.com</a>&gt;</span> wrote:<br
=
class=3D""><blockquote class=3D"gmail_quote"
style=3D"margin:0 0 0 =
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div =
class=3D"HOEnZb"><div class=3D"h5"><blockquote
class=3D"gmail_quote" =
style=3D"margin:0 0 0 .8ex;border-left:1px #ccc =
solid;padding-left:1ex"><br class=3D"">
</blockquote>
<br class=3D""></div></div>
If you are using recent CentOS (or I guess Fedora), there isn't any<br =
class=3D"">
extra setup required. Just create the custom property:<br =
class=3D""></blockquote><div class=3D""><br
class=3D""></div><div =
class=3D"">Both my engine and my hosts are CentOS 7.3 + =
updates</div></div></div></div></div></blockquote><div><br
=
class=3D""></div>that=E2=80=99s good</div><div><br
class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D""><div
dir=3D"ltr" class=3D""><div =
class=3D"gmail_extra"><div class=3D"gmail_quote"><div =
class=3D""> </div><blockquote
class=3D"gmail_quote" style=3D"margin:0=
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class=3D"">
On the host where engine is running:<br class=3D"">
<br class=3D"">
$ engine-config -s "UserDefinedVMProperties=3Dhugep<wbr =
class=3D"">ages=3D^.*$"<br class=3D"">
$ service ovirt-engine restart<br class=3D"">
<br class=3D"">
and you should see 'hugepages' when editing a VM under custom =
properties.<br class=3D""></blockquote><div
class=3D""><br =
class=3D""></div><div class=3D"">So no vdsm hook at all
to =
install?</div></div></div></div></div></blockquote><div><br
=
class=3D""></div>today you still need the
hook.</div><div><br =
class=3D""><blockquote type=3D"cite"
class=3D""><div class=3D""><div =
dir=3D"ltr" class=3D""><div
class=3D"gmail_extra"><div =
class=3D"gmail_quote"><div class=3D""><br
class=3D""></div><div =
class=3D""> </div><blockquote
class=3D"gmail_quote" style=3D"margin:0=
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Set the number to (desired memory / 2048) and you're good to go. The<br =
class=3D"">
VM will run with it's memory backed by hugepages. </blockquote><div =
class=3D""><br class=3D""></div><div
class=3D"">As in sysctl.conf? So =
that if I want 4Gb of Huge Pages I have to set =
2048?</div></div></div></div></div></blockquote><div><br
=
class=3D""></div>yes. there might be
some </div><div><br =
class=3D""><blockquote type=3D"cite"
class=3D""><div class=3D""><div =
dir=3D"ltr" class=3D""><div
class=3D"gmail_extra"><div =
class=3D"gmail_quote"><div class=3D""><br
class=3D""></div><div =
class=3D""> </div><blockquote
class=3D"gmail_quote" style=3D"margin:0=
0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">If you need<br =
class=3D"">
hugepages even inside the VM, do whatever you would do on a physical<br =
class=3D"">
host.<br class=3D"">
<br class=3D"">
mpolednik<div class=3D"HOEnZb"><div class=3D"h5"><br =
class=3D""></div></div></blockquote><div
class=3D""><br =
class=3D""></div><div class=3D"">yes, the main subject
is to have Huge =
Pages inside the guest, so that Oracle RDBMS at startup detect them and =
use
them</div></div></div></div></div></blockquote><div><br
=
class=3D""></div>yes, so if you do that via sysctl.conf on real HW just
=
do the same here, or modify kernel cmdline.</div><div><br =
class=3D""></div><div>Note that those are two separate =
things</div><div>the hook is making QEMU process use hugepages memory in =
the host - that improves performance of any VM</div><div>then how it =
looks in guest is no concern to oVirt, it=E2=80=99s guest-side =
hugepages. You can enable/set them regardless the previous step, which =
may be fine if you just want to expose the capability to some app =
- e.g. in testing that the guest-side Oracle can work with =
hugepages in the guest.</div><div>But you probably want both Oracle to =
see hugepages and also actually use them - then you need both reserve =
that on host for qemu process and then inside guest reserve that for =
oracle. I.e. you need to add a =E2=80=9Cbuffer=E2=80=9D on host side to =
accommodate the non-hugepages parts of the guest e.g. on 24GB host you =
can reserve 20GB hugepages for VMs to use, and then run a VM with 20GB =
memory, reserving 16GB hugepages inside the guest for oracle to =
use.</div><div><br =
class=3D""></div><div>Thanks,</div><div>michal</div><div><br
=
class=3D""><blockquote type=3D"cite"
class=3D""><div class=3D""><div =
dir=3D"ltr" class=3D""><div
class=3D"gmail_extra"><div =
class=3D"gmail_quote"><div class=3D""><br
class=3D""></div><div =
class=3D"">Gianluca </div></div></div></div>
</div></blockquote></div><br
class=3D""></body></html>=
--Apple-Mail=_2B6E5EAC-A5EA-4F24-8549-C3234A9C6DD6--