Dev Week -- Virtualisation -- Søren Hansen -- Tue, Feb 19

(10:59:32 AM) soren: Please keep the questions rolling in. I haven't prepared much, so any questions are appreciated.
(11:00:10 AM) soren: Here goes..
(11:00:21 AM) soren: Hi, and welcome to the first UDW talk for the day. My name is Soren Hansen, and I'll be your host for this session whose topic is virtualisation.
(11:00:48 AM) soren: Ok, first bit of generalitites about virtualisation..
(11:01:06 AM) soren: Virtualisation is a bit of a broad topic.
(11:01:22 AM) soren: There are various types of virtualisation techniques, each with the own pros and cons.
(11:01:54 AM) soren: Common for them all is that they enable you to split up one physical machine into what seems like many machines.
(11:02:52 AM) soren: KVM, which we have chosen as our preferred free virtualisation technology, does this by providing a complete virtualised machine to a socalled guest operating system.
(11:03:27 AM) soren: In a perfect world, the guest os (the operating system running inside the virtual machine) will not be able to (or at least need to be able to) tell that it's running inside a virtual machine.
(11:03:49 AM) soren: From its perspective, it's running in a regular PC.
(11:04:11 AM) soren: Other approaches are used by other virtualisation solutions..
(11:04:44 AM) soren: Xen for instance replaces the regular linux kernel with a so-called hypervisor.
(11:05:05 AM) soren: On top of that you can run specialised linux kernels.
(11:05:33 AM) soren: There's also so-called containers.
(11:06:11 AM) soren: They usually use the same running kernel, but keeps both filesystem and process space separate from the individual "virtual machines".
(11:06:21 AM) soren: There are a few others, but these are the most interesting ones.
(11:06:50 AM) soren: I'm ready for questions any time.
(11:07:04 AM) mzungu: <yann2> QUESTION (for later, when it's time): can KVM handle irq generated by guests on may cores (compatibility with irqbalance), or do all the irqs have to be done by the first core?
(11:07:54 AM) soren: I'm not entirely sure I understand the question.
(11:08:12 AM) soren: Are we talking virtual or physical cores?
(11:08:41 AM) yann2: can I reply here? :)
(11:08:54 AM) yann2: yeah, physical cores, on the host
(11:08:58 AM) soren: (I BTW prefer more general, high-level questions in this session. I'd like to have a bit of time to research these very technical questions before I just blurt out an answer.)
(11:09:44 AM) mzungu: <newlands_> QUESTION  will KVM use my 3D graphics card? VBox and VMWare do not, yet.
(11:09:59 AM) soren: yann2: I'd really like to get back to you on that. Can we talk afterwards?
(11:10:08 AM) soren: newlands_: No, I'm afraid not.
(11:10:22 AM) yann2: soren > np :)
(11:10:31 AM) mzungu: <yann2> QUESTION (yeah, 've got a lot, for later): KVM is in the kernel, so in main, so in theory supported by canonical - is it going to be supported even on processors with no virtualisation extensions (opterons 2nd generations, for example) with KVM running in QEMU
(11:10:46 AM) soren: yann2: I'm inclined to say it can handle it, but I want to check before I say for sure.
(11:10:54 AM) mzungu: <Shiv> QUESTION: Which is faster? Bare_Metal -> Xen -> Guest_OS   OR   Bare_Metal -> Host_OS -> KVM/VirtualBox -> Guest_OS
(11:11:26 AM) soren: yann2: No, we will not be supporting kvm running on CPU's that don't support it.
(11:11:38 AM) soren: yann2: In fact, it will soon be completely disabled for slightly different reasons.
(11:12:39 AM) soren: Shiv: I'm not sure of the most recent benchmarks, but I believe they're very close to each other for pure computational purposes.
(11:12:42 AM) soren: However...
(11:13:08 AM) soren: Hm...
(11:13:43 AM) soren: I'm inclined to claim that network and disk i/o will perform better if you're running Ubuntu Hardy inside your vm's.
(11:13:46 AM) soren: (in kvm).
(11:13:59 AM) soren: Due to the availability of virtio in our kernel.
(11:14:19 AM) soren: Next question, please.
(11:14:21 AM) mzungu: <edosar> QUESTION: What is the ubuntu position for VMWARE products?
(11:15:05 AM) soren: Ubuntu -- which is a free software project -- has no particular relation to VMWare.
(11:15:56 AM) mzungu: <BadServo> QUESTION:  At this time is Canonical focusing primarily on virtualization for the enterprise?  Becasue of the viable options, KVM/QEMU seems to be the most laking on user-friendly management apps for desktop.
(11:15:57 AM) soren: I'm afraid to say much about the Canonical stance as I'm afraid to say something that is not entirely accurate.
(11:16:32 AM) soren: BadServo: We are indeed focusing primarily on server use cases for our virtualisation efforts.
(11:16:36 AM) soren: However..
(11:17:21 AM) soren: There are graphical utilities to manage virtual machines (virt-manager primarily) that should lower the barrier of entry for regular desktop users as well.
(11:17:36 AM) mzungu: <shujin> QUESTION: Is there some way to convert VMWare virtual machines to KVM?
(11:17:38 AM) soren: BadServo: If virt-manager doesn't fulfill your needs, I'd love to hear about it.
(11:18:23 AM) soren: shujin: Heheh... I happen to know that within the last few hours, such a thing came into existence. It's not in any ubuntu package just yet, but stay tuned :)
(11:18:41 AM) shujin: \o/
(11:18:45 AM) mzungu: <eddyMul> QUESTION: will Ubuntu provide tools to manage virtual machines? ( a la SuSE's)
(11:18:47 AM) jdstrand: \o/
(11:19:03 AM) soren: jdstrand wrote said script :)
(11:19:20 AM) soren: I'm not entirely familiar with what SuSE's providing in that arena? ANyone?
(11:19:47 AM) eddyMul: soren: I think you answered it w/ virt-manager. thanx.
(11:19:57 AM) mzungu: <Shiv> QUESTION: ( observation is that virtual_box is faster. But intuitively Xen should have been faster due to lesser layers in between!)
(11:20:17 AM) soren: That's not really a question, is it?
(11:20:21 AM) soren: If so, I don't know the answer :)
(11:20:26 AM) mzungu: <shujin> QUESTION: Why was the KVM approach chosen over Xen?
(11:20:38 AM) soren: Ah. There's an FAQ if there ever was one :)
(11:20:45 AM) soren: Ok, there are a number of reasons.
(11:21:02 AM) soren: Most of it boils down to supportability.
(11:21:36 AM) soren: The amount of code in the kernel is very small and modular compared to Xen.
(11:21:48 AM) soren: Xen is a significant kernel patch, which kvm lives in a tiny module.
(11:22:12 AM) soren: (it's also significant that the kvm stuff is in the mainline kernel, while Xen isn't).
(11:22:33 AM) mzungu: <yann2> QUESTION: how is time synchronisation handled? Are there going to be "vmtools"  for kvm?
(11:22:48 AM) soren: Also, due to kvm providing a fully virtualised environment the guests are running unmodified as well.
(11:23:19 AM) soren: yann2: I've not had any problems with time synchronisation inside kvm for months.
(11:23:41 AM) soren: yann2: Have you?
(11:24:04 AM) mzungu: <shujin> QUESTION: How is KVM at running non FOSS operating systems?
(11:24:14 AM) soren: Don't know, don't care.
(11:24:15 AM) soren: Next
(11:24:16 AM) soren: :)
(11:24:37 AM) mzungu: <yann2> QUESTION: how many cores can a guest VM handle? Can KVM use properly 4/8/16 cores (like not getting 2 cores killed while others are idle)?
(11:24:55 AM) shujin: fair enough
(11:25:33 AM) soren: 255 is the max, afair.
(11:25:46 AM) mzungu: <eddyMul> QUESTION: while the kvm code in kernel is small, how big is kvm's patchset against qemu?
(11:26:45 AM) soren: eddyMul: Good question.
(11:26:46 AM) soren: Er..
(11:27:12 AM) soren: Well, kvm mostly uses qemu for it's excellent virtual hardwar implementation.
(11:27:50 AM) soren: What kvm does differently is that it passes code execution off to the cpu rather than emulatiing it.
(11:28:07 AM) soren: Which really mostly bypasses qemu.
(11:28:12 AM) soren: Or those bits of it.
(11:28:32 AM) mzungu: <mzungu ;) > QUESTION: What would be a reasonable setup with ubuntu on the bare metal, and vms with jeos - in terms of performance limitations
(11:28:38 AM) soren: THere's a lot of work going on to merge the two code bases, though.
(11:29:35 AM) soren: Well, part of the beauty is that you can start out by putting a lot of vm's on one machine. If they turn out to be too ressource hungry, you can just move them to another machine.
(11:29:43 AM) soren: kvm even supports doing this "live".
(11:29:54 AM) soren: i.e. without shutting the vm down.
(11:30:05 AM) mzungu: wow!
(11:30:07 AM) soren: It's impossible to say anything general and useful about it.
(11:30:25 AM) soren: Just remember that the overhead is very small, so if you've got..
(11:30:26 AM) soren: say..
(11:31:16 AM) soren: a 2.5 GHz machine  with 2 GB ram in it, you can assign 1 GB ram to a guest and a few GB of space, and it will use the ram, but share the CPU with you.
(11:31:52 AM) soren: they will get CPU according to the host scheduler.
(11:32:17 AM) soren: If nothing in particular is running on the host, the guest will get the full 2.5GHz available to it (pretty much).
(11:32:34 AM) mzungu: <newlands_> QUESTION But in my testing Qemu has been by far the slowest virtualization. Is KVM faster?
(11:32:40 AM) soren: So if you have services that rarely run at the same time, you can have a lot of virtual machines on the same host.
(11:32:56 AM) soren: newlands_: Qemu is dead slow. KVM is near-native speed.
(11:33:07 AM) soren: They work in *very* different ways.
(11:33:27 AM) mzungu: <yann2> QUESTION: can KVM guests use complete disk partitions from the host? How fast is the "disk format" of KVM?
(11:33:28 AM) soren: qemu *emulates* everything.
(11:34:01 AM) soren: yann2: KVM can use disk partitions (or logical volumes). No problem there.
(11:34:06 AM) soren: w.r.t. to speed..
(11:34:12 AM) sergevn: soren: Maybe irrelevant question, will there be an frontend for KVM for desktop use?
(11:34:24 AM) soren: Well, by default you use raw images.
(11:34:40 AM) soren: There's no mapping, decompression or anything slowing you down.
(11:35:02 AM) soren: If you're even using partitions or logical volumes rather than files, you should have near native I/O performance.
(11:35:14 AM) soren: sergevn: Yes, virt-manager.
(11:35:22 AM) mzungu: <buks> QUESTION: If i dont have a processor with VT (centrino duo laptop), is vmware server my best option to run XP? that is what I am using now
(11:35:29 AM) soren: sergevn: It's there already.
(11:35:35 AM) bigotto:  QUESTION: KVM: Can you exclusive use a PCI card in the guest? like a dvb-card?
(11:35:42 AM) soren: buxy: You could also use virtualbox.
(11:35:47 AM) soren: Sorry, that was for buks.
(11:35:59 AM) soren: Or qemu with kqemu.
(11:36:16 AM) soren: There are many options. I recommend you try them to see which fits you best.
(11:36:25 AM) nijaba: sergevn: please ask your question in #ubuntu-classroom-chat, prefixing with QUESTION
(11:36:35 AM) soren: bigotto: I don't believe pci passthrough is finished yet. Sorry.
(11:36:51 AM) mzungu: <yann2> QUESTION: are you sure about that live migration bit? :)
(11:37:30 AM) soren: yann2: Truth be told, it might be broken right now and it depends on certain circumstances, but yes.
(11:37:42 AM) soren: yann2: The broken part will be fixed before release.
(11:37:49 AM) mzungu: <BadServo> QUESTION:  I know that streamlining the host OS on other virtualization platforms improves performance.  While Jeos is primarily intended for VMGuest appliances, would it be a suitable environment for hosting KVM?
(11:37:58 AM) soren: yann2: The design of kvm certainly supports it and it used to work (and will work soon again)
(11:38:16 AM) soren: BadServo: Sure.
(11:38:21 AM) soren: BadServo: You can also just use the server edition.
(11:38:32 AM) mzungu: <eddyMul> QUESTION: can KVM "share memory" between guests (e.g. boths guests run JeOS, can they "share memory")?
(11:38:38 AM) soren: BadServo: The differences are very minor when you're not running in vmware.
(11:38:52 AM) soren: eddyMul: Not right now. *maybe* before release.
(11:39:26 AM) mzungu: <BadServo> QUESTION:  Are there any plans that you are currently aware of to fix the dependency issues preventing installation of virt-manager in the official repositories on Gutsy prior to Hardy release?
(11:40:08 AM) soren: BadServo: If I can find the time, I might backport the stuff to gutsy.. I much, much prefer testing results based on hardy, though.
(11:40:13 AM) soren: Which brings me to another thing:
(11:40:23 AM) soren: I could really, really use some testing of all of this.
(11:40:38 AM) soren: Any feedback (good, bad, indifferent) would be much appreciated.
(11:41:01 AM) soren: Feel free to /msg me on IRC, ask me in #ubuntu-virt, anything.
(11:41:08 AM) soren: I'd love to hear from you.
(11:41:27 AM) mzungu: <Ju> QUESTION : xen + bridge-utils let administrators have a 'headache free' experience with the guest vm network, does kvm provide anything similar ?
(11:41:41 AM) soren: Not kvm by itself. libvirt does.
(11:42:04 AM) soren: ..but that distinction should not matter much to you, so the answer is pretty much "yes". :)
(11:42:05 AM) mzungu: <eddyMul> QUESTION: testing stuff for hardy: If I want to help, do you have a documented test plan? (so I don't just go poking around like crazy...)
(11:42:14 AM) Ju: ;-)
(11:42:46 AM) soren: eddyMul: I'd rather not restrict the testing efforts in any way. Anything you feel should work in a vm, try it, and let me know if it works out for you.
(11:43:10 AM) soren: Well.. One thing though:
(11:43:24 AM) soren: I'm honestly not very interested to hear about testing results from Gutsy.
(11:43:46 AM) soren: If you're not comfortable upgrading to hardy just yet, you can run kvm from a live cd!
(11:44:05 AM) soren: (just don't forget that running on a livecd is probably quite a bit slower than your real system)
(11:44:34 AM) eddyMul: soren: it would be great to have a document about "if you want to test kvm support in hardy, here's how to start/boot"
(11:44:53 AM) soren: eddyMul:
(11:45:01 AM) soren: There's a bit of stuff to get you started.
(11:45:31 AM) soren: If there are no questions, I can tell a bit about the software stack we're using..
(11:45:46 AM) mzungu: go ahead...
(11:45:52 AM) soren: On the host, we have kvm-60 in the kernel and likewise in user space.
(11:46:04 AM) soren: This is the most recent kvm release (at least it was a few days ago).
(11:46:10 AM) soren: On top of that, we have libvirt.
(11:46:20 AM) soren: libvirt is both a library and a management daemon.
(11:46:27 AM) soren: libvirt is mostly developed by RedHat.
(11:46:51 AM) soren: The management daemon looks after your kvm processes when you can't be bothered to :)
(11:47:06 AM) soren: You can connect to it, tell it to start up a virtual machine, and then disconnect.
(11:47:28 AM) soren: If you need to access the console, you can connect to it via vnc and you'll see the regular login prompt.
(11:47:42 AM) soren: For a GUI, we're using virt-manager (also from RedHat).
(11:48:05 AM) soren: It provides a snazzy UI where you can see the VM's that are registered on each of your nodes (you can do remote management as well).
(11:48:18 AM) soren: You can see how much memory they're using and all that sort of thing.
(11:48:35 AM) soren: ..start them, stop them, freeze them, copy to another host, thaw them..
(11:48:39 AM) soren: All sorts of cool stuff.
(11:49:22 AM) soren: We also have a little script called ubuntu-vm-builder..
(11:49:47 AM) soren: It can be used to bootstrap a new Ubuntu vm instance in no time at all (well, a few minutes, but it feels like no time at all).
(11:50:19 AM) soren: Not surprisingly, this was developed by Ubuntu people :)
(11:50:59 AM) soren: Aw, no questinos?
(11:51:04 AM) soren: questions, even?
(11:51:39 AM) mzungu: <jcastro> QUESTION: Where is ubuntu-vm-builder, I can't seem to find it in hardy
(11:51:48 AM) soren: jcastro: It landed just a few hours ago.
(11:52:09 AM) soren: jcastro: Hang on.
(11:53:05 AM) soren:
(11:53:10 AM) soren: I'm not making this up :)
(11:53:17 AM) mzungu: <BadServo> QUESTION:  As an authority on Virtualization technologies, what do you think will be the next steps as far as the evolution of VM capabilities. or host interactions.  Since KVM is predominantly emulaiton based, do you feel mroe advanced paravirtualization will be less attractive int eh future?
(11:53:38 AM) soren: kvm is not emulation based, really.
(11:53:39 AM) nijaba: the version that just landed in Universe is broken for KVM at the moment.  Use my branch instead...
(11:53:56 AM) soren: I'll update ubuntu-vm-builder tonight to fix that :)
(11:54:15 AM) nijaba: thanks soren :)
(11:54:21 AM) soren: BadServo: We're employing several paravirtual sorts of things in kvm, too.
(11:54:37 AM) mzungu: <yann2> QUESTION: can KVM do snapshots? multiple snapshots?
(11:55:15 AM) soren: BadServo: The virtio stuff is paravirtualisation. It depends on the host and the guest being aware of each other and their roles and thus make each others life easier and your stuff faster :)
(11:55:21 AM) soren: yann2: Yes, kvm can.
(11:55:49 AM) soren: yann2: virt-manager doesn't help you much in that respect, but kvm and libvirt both have the hooks to do so.
(11:56:13 AM) soren: yann2: It's got a few idiosyncracies, though.
(11:56:32 AM) mzungu: <eddyMul> QUESTION: any possible future cooperation w/ rPath and their VM appliance stuff?
(11:56:35 AM) soren: yann2: (it depends on the disk image format to be able to save snapshots and such.
(11:57:08 AM) soren: eddyMul: Anything's possible :) Currently, there's no cooperation or even interaction (at least with me).
(11:57:58 AM) soren: eddyMul: We really prefer to have just one base OS on top of which people can put their applications if the so please.
(11:58:15 AM) soren: eddyMul: rather than having thousands of specially built OS's.
(11:58:25 AM) soren: That could change though.
(11:58:54 AM) mzungu: <BadServo> QUESTION:  With Ubuntu adopting KVM as the preffered solution, has there been any noticeable increase in interest or development?
(11:59:21 AM) soren: Well, one of the reasons we chose KVM was because it was already a *Very* active project.
(11:59:35 AM) ***nijaba thinks that's the last question
(11:59:37 AM) soren: Qumranet, IBM, and Intel are all involved to various degrees.
(11:59:58 AM) soren: I don't think that has changed in either direction since we decided to use it.
(12:00:06 PM) soren: 1700 UTC!
(12:00:09 PM) dholbach: Thanks a lot soren and nijaba for hosting the session!
(12:00:24 PM) soren: Thanks for stopping by, guys! Keep those test reports coming in!
(12:00:28 PM) nijaba: I did not host anything...
(12:00:29 PM) mzungu: \o/
(12:00:38 PM) soren: mzungu: Thanks!
(12:00:39 PM) nijaba: But thanks :)
(12:00:42 PM) Ju: thank you
(12:00:45 PM) dholbach: For those of you who have more interest in Virtualisation, there's always #ubuntu-virt
(12:00:55 PM) dholbach: help soren to make Virtualisation ROCK for Hardy :)

MeetingLogs/devweek0802/Vitrualize (last edited 2008-08-06 17:00:54 by localhost)