Linux Hypervisor Setup (libvirt/qemu/kvm)

Поділитися
Вставка
  • Опубліковано 2 чер 2024
  • Let's explore how you can setup a hypervisor on any Linux host! We'll dig into the libvirt/qemu/kvm stack with a focus on how these pieces interact with each other.
    blog: octetz.com/docs/2020/2020-05-...
    00:00:00 - Linux Hypervisor
    00:00:40 - Tools
    00:08:55 - Permissions
    00:14:45 - VM Creation
    00:31:10 - Wrap Up
  • Наука та технологія

КОМЕНТАРІ • 159

  • @kirtisingh7178
    @kirtisingh7178 3 роки тому +23

    I think its probably the best video which introduces a complex topic in a practical way and which also sufficiently explains the various nuts and bolts of it.

  • @MistaSmith
    @MistaSmith 3 роки тому +19

    Loving the style of this guide a lot. I love, how it's slowly but specifically explaining all the details and steps. I love the hand-or-mouse-written URL. I love the VIM based overview of where we are on the agenda. I love that you use UI and CLI based approaches together to show all options that are possible. Thanks a lot for this tutorial!

  • @SidGoodOldDays
    @SidGoodOldDays 3 роки тому +1

    Really liked the way you explain things. Please keep on doing what you do and let us know how we can help.

  • @lucascaballero6449
    @lucascaballero6449 2 роки тому +1

    These videos are good. Please make more. Such good stuff. Direct, on point, organized, detailed. Will recommend these.

  • @laucianexones
    @laucianexones 2 роки тому +2

    This is surely one of the best tutorials i've ever seen. You are not only teaching KVM/QEMU etc, but you are also teaching how to explain something in an ordered, structured way.. with diagrams, documentation etc. I think the community should encourage people like you to create more and more content. Thanks 🙏 and Kudos 👍 for the great work

  • @theopenanalytics4547
    @theopenanalytics4547 3 роки тому

    Mind blowing. Simply super Mr. Octetz. Please make more and more stuff. Thanks a lot for this video.

  • @isotropical
    @isotropical 3 роки тому +4

    Brilliant video which helped me figure out an annoying libvirt issue thanks to your discussion on permissions. Keep up the awesome work, look forward to seeing more content from you in the future.

  • @paulgriffin8566
    @paulgriffin8566 3 роки тому +2

    Fantastic video, many thanks for sharing. I now have a clear understanding of KVM and the various components that it requires.

  • @murjoshua
    @murjoshua 2 роки тому

    Good workthrough man, I like the enthusiasm you're explaining with, makes it easy to follow along.

  • @cd-stephen
    @cd-stephen Рік тому

    your presentation is amazing - best explanation on such a busy stack i have ever seen

  • @MrUnix-xf8dq
    @MrUnix-xf8dq 3 роки тому +2

    Please don't stop making content about these kinds of things!
    You are, hands down the best explaining linux video creator I have encountered!

  • @bardus_hobus
    @bardus_hobus 3 роки тому

    You deserve much more views...great quality and great explanation.

  • @techbuildspcs
    @techbuildspcs 2 роки тому

    I enjoyed this video. Thank you. Even though I already set up my kvm I love the explanation. Well done!

  • @cmcdougle
    @cmcdougle 4 роки тому +12

    You easily have the best video or guide in general on this out there! Thank you

  • @user-cf5uf9sw1u
    @user-cf5uf9sw1u 4 роки тому

    Followed the setup while trying to build a minikube environment.
    probably would've lost hours and hours trying to configure everything properly myself.
    Thanks for the awesome work and looking forward for more videos like this!

  • @atharvapatil6892
    @atharvapatil6892 Рік тому

    Explanation is just so good,
    Really appreciate it.

  • @yogeshpandey5168
    @yogeshpandey5168 2 роки тому

    Easy to digest tutorial. I think overall community is getting better and better.

  • @ikura18
    @ikura18 2 роки тому

    Awesome, this is the best tutorial/explanation about libvirt/virsh I've ever seen.

  • @al-du6lb
    @al-du6lb 2 роки тому

    Nice little overview. Thanks man. You did a great job.

  • @UpcycleElectronics
    @UpcycleElectronics 3 роки тому

    Excellent reference quality upload. I hope I get the chance to come back and follow this step by step after finishing my first Gentoo install attempt with Sakaki's EFI tutorial....and probably an attempt at Libreboot on a Leno....
    This helped me understand a few kernel configuration options better due to the application example. That was my main goal.
    I subscribed, and added this to a public playlist for my (& others') reference.
    Ref quality uploads are 21st century documentation. Thanks for taking the time to make this kind of content.
    -Jake

  • @kenkensistoso
    @kenkensistoso 4 роки тому +2

    Just what im looking for. I just subbed!
    Keep it up sir

  • @mikinio303
    @mikinio303 4 роки тому +1

    This is a really amazing video, thank you!

  • @eznugse
    @eznugse 2 роки тому

    Thank you! Very good and clear guide how to get started with kvm. Had issues with my network, but your video helped me fix this.

  • @maticman94
    @maticman94 2 роки тому +1

    This video is a great introduction to KVM. I'm a user of KVM myself and I learned a few things. Good stuff 👍

  • @diszydreams
    @diszydreams 3 роки тому +1

    Really good stuff dude! Keep it up!

  • @emmanuelaboagye4624
    @emmanuelaboagye4624 3 роки тому

    Very Educative Video. Great Work. Thanks for sharing.

  • @lewisrobson9414
    @lewisrobson9414 Рік тому

    thankyou for this video, very helpful to see the high level with the diagrams

  • @noahwang7037
    @noahwang7037 3 роки тому

    This is a really cool tutorial video. Thank you!

  • @dnlgmzddr
    @dnlgmzddr 3 роки тому

    Thanks!! I finally understand it.
    Looking forward to more videos.

  • @ArrowOfTruth01
    @ArrowOfTruth01 2 роки тому

    Really nice tutorial to help get me kick started. Thank you very much sir!

  • @loucinci3922
    @loucinci3922 2 роки тому

    Very helpful. Nice job. Thanks for sharing.

  • @juliotencio5695
    @juliotencio5695 3 роки тому

    great video! this is a topic I am trying to understand and you helped me a lot

  • @eduardmart1237
    @eduardmart1237 4 роки тому +1

    Great stuff! Just impeccable)

  • @bobyrasta100
    @bobyrasta100 3 роки тому

    Thank you young man. great work keep it on

  • @averageChoom
    @averageChoom 3 роки тому

    after 3 weeks from switching to windows and got my first kvm gaming machine with a single gpu transfer KVM is amazing pls more content ive enjoyed the content and got to know more about linux virtualization

  • @jimrussell-us
    @jimrussell-us 2 роки тому

    thanks for sharing your gift for instruction! Best to you!

  • @troytian9041
    @troytian9041 3 роки тому +3

    What a nice video! I really I like you to explain how thing work behind the scene, You definitely will have more and more subscribers. Thank you. 😆

  • @stevendeng2758
    @stevendeng2758 3 роки тому

    Really thanks to this sharing! Subscribed!

  • @lesbi123100
    @lesbi123100 2 роки тому

    thanks . Very good one . all my doubts got cleared

  • @_syedmx86
    @_syedmx86 3 роки тому

    Hey there, thanks for the explanation at the start. It really helped me.
    You have my subscription now. :)

  • @Bigeinla
    @Bigeinla Рік тому

    Excellent video. Thanks

  • @igorandersen
    @igorandersen 3 роки тому

    Thank you! This video was very helpful to me 😎

  • @briainodriscoll
    @briainodriscoll 4 роки тому +1

    Appreciate the quality of your videos; good content, good audio and text clearly visible. Makes a difference! I'm looking into setting up lxd with Open vSwitch on a VPS because nested virtualization is not supported (grep vmx /proc/cpuinfo gives a blank string).

    • @briainodriscoll
      @briainodriscoll 4 роки тому

      I may have spoken too soon. `lscpu | grep Virt` shows ''Virtualization type: full''

    • @briainodriscoll
      @briainodriscoll 4 роки тому

      @@joshrosso I gather that lately it's possible to run VM's in lxd as well as Linux containers (would have preferred kvm/qemu/libvirt/virsh, but kvm atop kvm may not be the smartest) +1 for a video on networking as you kindly mentioned. I've been looking at creating an overlay thomas-leister.de/en/container-overlay-network-openvswitch-linux/ and possibly using lxd as a public network interface thomas-leister.de/en/lxd-use-public-interface/

  • @ThePrateekShrivastava
    @ThePrateekShrivastava Рік тому

    Great quality content. Thank you.

  • @arjunanranjit8148
    @arjunanranjit8148 3 роки тому

    Fantastic video mate!!!

  • @szantipinterrichard7901
    @szantipinterrichard7901 Рік тому

    Yay! thank you very much for making tNice tutorials video! Very helpful!

  • @ThaLiquidEdit
    @ThaLiquidEdit 3 роки тому

    Very well explained man! You have my sub :)

  • @techdatamexico4530
    @techdatamexico4530 26 днів тому

    AMAZING EXPLANATION !!!

  • @emdirtyyo1827
    @emdirtyyo1827 3 роки тому

    i can't thank you enough for this video

  • @ajlozadaro
    @ajlozadaro Рік тому

    Amazing video!

  • @harrydadson7467
    @harrydadson7467 2 роки тому

    Thank you soo much for the video, had to subscribe

  • @dromeosaur1031
    @dromeosaur1031 Рік тому

    Thanks for a great video!

  • @EnsYlmaz51
    @EnsYlmaz51 3 роки тому

    this video is what i needed, thanks

  • @rabinarayanpanigrahi3587
    @rabinarayanpanigrahi3587 7 місяців тому

    Nice video bro. Keep posting.

  • @SutboxSutty
    @SutboxSutty 2 роки тому

    Wow thanks bro all info no explanation fine job

  • @nemonada3501
    @nemonada3501 2 роки тому

    Yes, more vids like this. I'm only just starting to tinker with the virtual machines and I can get Windows running fine but I haven't been able to get a Linux distro running in it yet. I got some more learning to do.

  • @dubbaluga
    @dubbaluga 3 роки тому +7

    Thanks for sharing this tutorial! One little hint: instead of typing `clear` in the terminal, one can also press ctrl+l (l as in letter) to clear the screen. :-)

    • @unbekannter_Nutzer
      @unbekannter_Nutzer 3 роки тому +2

      Which is either annoying. He constantly mistypes his commands, goes for and back, finally descides how the command is written, hits enter, and while I try to get the output, he clears the screen immediately, only to fight against the next command.
      Rule of thumb: Never use `clear`. It's an antipattern. It's a YT-smell.
      Let the viewer descide where to read on the screen, let him look back, two commands back.
      Or do it the right way, and make it part of your PS1-prompt to autoclear every command after 2 seconds.

    • @NinuRenee
      @NinuRenee 2 роки тому +1

      +dubblaluga there's a tiny difference between the two - clear clears the whole scrollback buffer, unlike ctrl+l which only pushes your prompt to the top ie. you can still page up to view the old stuff.

    • @unbekannter_Nutzer
      @unbekannter_Nutzer 2 роки тому

      @@NinuRenee Well, I can't in a video of course.

    • @nemonada3501
      @nemonada3501 2 роки тому +1

      Just a random thought but I think typing "clear" in the terminal on the video makes it obvious for the observer what is happening rather than things just disappearing, but really probably doesn't make that much of a difference for a UA-cam video.

    • @othernicksweretaken
      @othernicksweretaken 2 роки тому +1

      I don't mind a five letter command to clear the screen.
      Especially when you are using a multiplexer like tmux as he is where you might run into conflicting interpretations of ctrl+ keystrokes, although I know that the default master key in tmux is ctrl+b and that you can change any key bindings.
      There is another reason why ctrl+l for clearing the screen doesn't work for me because as a veteran vi/vim user I am so much accustomed to vi keymap and vi editing-mode that I switch on vi mapping to any cli tool that was linked against the libreadline and I configure my .inputrc accordingly or _set -o vi_ in any interactive bash where I am not supposed to customise this.

  • @SeanMacdonald_CodeMonk
    @SeanMacdonald_CodeMonk 3 роки тому

    Fantastic! Always wondered how the different peices fit together and what names like "qemu" stand for

  • @timrobertson8242
    @timrobertson8242 3 роки тому

    Very awesome breakdown of the various moving parts. You mentioned that the advantage of doing a Clone is that it would help fiddle with the Client OS files. In your example, you didn't specify the Guest OS type and I noticed that the IP address remained the same (I assume the MAC address was also the same for your lead NIC). Was there some args that would help out with changing those so that multiple VM Clones can spin up without conflict - or is this part "roll your own" post processing?

  • @execration_texts
    @execration_texts Рік тому

    Absolutely top tier

  • @JynyChen
    @JynyChen 3 роки тому

    super super clear sharing
    thanks

  • @example101
    @example101 3 роки тому

    Nice work!

  • @viertekco
    @viertekco Рік тому

    🎉this is really good bro🎉

  • @danielkrajnik3817
    @danielkrajnik3817 3 роки тому

    NAT port forwarding would be a very interesting topic to cover ;)

  • @brunoribaric9683
    @brunoribaric9683 3 роки тому

    Love your video.

  • @norsk54472
    @norsk54472 2 роки тому

    very helpful, thanks

  • @MrTechUser
    @MrTechUser 3 роки тому

    Wow this was great! Any chance of making a short video on how to do pass-through and multiple monitors?

  • @kojack57
    @kojack57 3 роки тому

    And that ladies and gents is how you present a topic. Thank you. Subed, liked visited an dbmarked site. Looking forward to more quality material. EDIT: Default /var/lib/libvirt/ filesystem location.
    I had to sell my machines and laptop so I am using pretty low resource h/w. How difficult or awkward is it be to store filesystem to a different SSD on the same machine at install or point to the new path after an install. I have a 256Gig drive which I'd really like to use to store both ISOs and machines by default and keep my Manjaro host SSD as free as possible.
    I've had a look around and as usual people make it way more of a thing that it actually needs to be. If you can advise or point in the right direction I will find the ONE person to down vote your video and kick them squarely in the nut sack. No promises though.

  • @jorgegarreton9460
    @jorgegarreton9460 2 роки тому

    superb!

  • @chrisperkins8347
    @chrisperkins8347 3 роки тому

    Only just catching up with your quite excellent channel and explanations about Libirt. One thing that I have been trying to do is correctly setup an alternative Storage pool as my boot partition is an 128GB SSD. Any chance you could do a video all about Storage Pools thanks.

  • @nemonada3501
    @nemonada3501 2 роки тому

    Thank you heaps. This is the kind of thing I was looking for and I'm going to go and check out your tutorials on your page. I'm using a non-systemd distro (Artix) so wondering how different it will be before I play any further, especially with the CLI. Also random question, what terminal emulator do you use?

    • @othernicksweretaken
      @othernicksweretaken 2 роки тому +1

      It looks to me as if he is using tmux.

    • @nemonada3501
      @nemonada3501 2 роки тому +1

      @@othernicksweretaken Awesome, thank you. I'm interested in trying out a few different terminals as I've just been using the default that come with the distros or WM/DEs, so that hasn't taught me a whole lot about the different terminals available, so I might be that one a go for the experience.

  • @eduardmart1237
    @eduardmart1237 4 роки тому +1

    Yep please make a video about different network options.
    Also can libvirt/qemu use RAM and HDD dynamically? I mean similar to how VirtualBox and hyper-v does this stuff.

  • @elgs1980
    @elgs1980 3 роки тому

    Thank you so much!

  • @pavankilaparthi9313
    @pavankilaparthi9313 3 роки тому +1

    Great explanation....👌👌👌....
    And i have small doubt... How can manage multiple kvm host...?
    I mean vcenter can manage multiple hypervisors. As like that... How we can manage our multiple KVM hypervisors....???

  • @_maxt
    @_maxt 3 роки тому

    Just subscribed. Thank you great tutorial. Let me know if you do a network... oh, you did one literally 4 days ago ... awesome :)

  • @ApexFPS
    @ApexFPS 3 роки тому

    Subbed, great video. Can’t wait to check out your others!

  • @vasileiossiaploulis5824
    @vasileiossiaploulis5824 2 роки тому

    Hello thank you very much for the video.I am studying for LFCS and i find it quite usefull!Also when i run virt install command,i face a problem:"ERROR The requested volume capacity will exceed the available pool space when the volume is fully allocated. (8192 M requested capacity > 15 M available) (Use --check disk_size=off or --check all=off to override)" The system that i use is an aws instance 1GB ram and 10Gib disk.

  • @rogerthat8916
    @rogerthat8916 3 роки тому

    Great content ! As a linux newbie I have a question, what is the difference between this stack and Oracle Virtual Box ? Where do they differ ?

    • @vymvn6
      @vymvn6 Рік тому

      Performance is much better and also you have a lot more control over your VMs being able to pass through a whole graphics card for only the VM to use

  • @briainodriscoll
    @briainodriscoll 4 роки тому +2

    the install candidate you were looking for is `docker.io`. docker-ce is depreciated ;)

    • @noirth-security
      @noirth-security 3 роки тому +1

      I think you mean deprecated, unlike a depreciating car value

  • @chuxxsss
    @chuxxsss Рік тому

    Thanks, you explained better than GPT chat. Maybe I need to change to fedora from Zorin, for this emulation of raspbrian.

  • @theopenanalytics4547
    @theopenanalytics4547 3 роки тому

    Wonderful talk. BY the way is there a way to establish connection or share these vms to outside world? Please let me know any resources. Thanks

  • @oah8465
    @oah8465 3 роки тому

    fantastic video, assuming I have a virtual machine with static-IP can I do the clone without the IP address? like to specify the new IP via the command or something like that?

    • @oah8465
      @oah8465 3 роки тому

      @@joshrosso You rock. Gonna check it out. gonna dig deep into your channel over the weekend.

  • @dstudio1011
    @dstudio1011 Рік тому

    I'd like to understand how to setup the network part. Specifically how to gain access to the VM from outside.

  • @briainodriscoll
    @briainodriscoll 4 роки тому

    Was wondering what tool you use to create your color-coded diagrams?

  • @lamka02sk
    @lamka02sk 3 роки тому

    Subscribed, your videos are really well made and overall your presentation is pretty good.
    Do you know by any chance how to make multiple VMs accessible over LAN easily? If I clone multiple VMs, they still have the same IP address, so I can access only one through SSH. I mean, I still can change addresses manually, but I would like it to be automatic. Thanks :)

    • @lamka02sk
      @lamka02sk 3 роки тому

      @@joshrosso Thank you, unfortunately this didn't help, but I found the problem eventually. I am using Ubuntu 20.04 and it uses netplan for network setup. Lease located in /run/systemd/netif/leases is actually automatically generated by netplan everytime it's confirguration is reloaded/server is restarted, so removing this has no effect.
      The problem is that netplan defaults to using machine id as DHCP identifier, but when you clone the VM, machine id stays the same, so router keeps the IP. Changing DHCP identifier (located in /etc/netplan) to MAC address helped. askubuntu.com/questions/987673/how-to-get-netplan-on-17-10-server-to-work-with-a-windows-server-dhcp-server-usi

  • @armynyus9123
    @armynyus9123 3 роки тому

    Best!

  • @williamheckman4597
    @williamheckman4597 3 роки тому

    Great Video ... can you do one on IO passthrough?

  • @DonEdward
    @DonEdward 3 роки тому

    I wasn't aware that the '--disk' option CREATES the qcow2 image. I am also confused as to how to use a kickstart script and iso in the '--location' part.

  • @kickbuttowsk2i
    @kickbuttowsk2i 2 роки тому

    thank you

  • @asinha196
    @asinha196 3 роки тому

    when you created the VMs, who would log in.. I mean to say that I did not see the user defined in the virt-install.sh.. so actually when the VM starts what user and pwd to be given. if you could clarify that would be great help. Thank you.

  • @yourlinuxguy
    @yourlinuxguy Рік тому

    Very Good Video. Pretty close to what I was looking for. What is the difference between Qemu direct install or direct creation of virtual machines and the virt-install method? Which one is better or which one should we use? Generally? For like just a simple example VM creation.

    • @joshrosso
      @joshrosso  Рік тому +1

      Not much! Virt-install largely acts as a wrapper to make things more accessible for the specific domain of vm creation. If you have the patience to learn qemu config/flags, then by all means -- 1 less abstraction!

    • @yourlinuxguy
      @yourlinuxguy Рік тому

      @@joshrosso I have been looking for any article to learn Qemu. I can't even find proper documentations for it. Could you please point me to it? Just started out using Qemu. Thanks.

    • @joshrosso
      @joshrosso  Рік тому

      @@yourlinuxguy The best I know of is www.qemu.org/docs/master. It's dense. Qemu is a very capable and versatile tool.

    • @yourlinuxguy
      @yourlinuxguy Рік тому

      @@joshrosso Okay, Thanks a lot, My main issue is I am using Qemu with Virt-Manager and I am not able to use 3D Acceleration there and that's why I am wandering in the Qemu CLI realm.

  • @jstefano
    @jstefano 3 роки тому

    Thank you very much!!! Excellent tutorial! BTW, can post a link to the web page you are using in this video? Million thanks!!!
    ]

  • @pop1361993
    @pop1361993 3 роки тому

    good thing i got a overview of what these libvirt or qemu or virsh things are. However, theres still lot of things i dont understand since i dont have background knowledge on it?
    Can you tell how to get started on understanding systems? Im a QA however, it seems like I get to work on baremetals and installing KVM/ESXI VMs, twerking files etc which I dont know at all.
    Right now trying to create a VM in KVM host but getting issue with host not accessible after creating VM. From lab, got to know that br0 which is created based on phy interfaces is not available in host since i used it up as --host-device while creating using virsh-install
    i still have things to figure out how to add a USB connection and confirm its added to the VM... how do I get such kind of info? i can start from basics if there is such a guide?

  • @sweetsorrow7215
    @sweetsorrow7215 3 роки тому

    at 25:00 you did not show virsh-install popping up a new window for OS installation using SPICE. probably it was in your other screen but not shown in the main screen window. I wanted to see that.
    Does that mean I can create a VM using virsh-install CLI method remotely using SSH ? or do I have to have some sort of GUI to install VM using cli?

  • @unapologetic7900
    @unapologetic7900 Рік тому

    I have a PC with 6 physical Network interfaces. Is there a way to have Linux as the hypervisor host using1 of those interfaces, and run OpnSense in a VM using another 4 physical devices? Basically, I want to have the VM use physical network interfaces rather than virtual interfaces. What I want to end up with is OpnSense running as my network Firewall/Router, with at least 4 Network interfaces configured as a bridge, and run TrueNAS in a second VM as a NAS with it's own physical network interface.
    I'm doing all this now in separate machines, so I'm trying to combine it all into 1.

  • @eduardmart1237
    @eduardmart1237 4 роки тому

    Do you plan to make a video about polkit? There are literally zero videos about this sometimes essential topic on YouTybe.

  • @IBITZEE
    @IBITZEE 3 роки тому

    Best video i found about this stuff... just subscribed!!!
    ?do you know if can I use .vhdx images with qemu (directly,,, without convert to qcow)
    ?also wondering how I can expose a windows \\.\PhysicalDevice* via qemu-nbd... ??any ideas???

  • @AdrianuX1985
    @AdrianuX1985 3 роки тому

    Is it possible with virtual machine backup without downtime with machines installed on the raw LVM volume, then revert from backup VM?

  • @Oswee
    @Oswee 3 роки тому +2

    When you want to expose VM to the internet, the bridge network is still something which confuses me. :)

    • @adamhurst86
      @adamhurst86 2 роки тому

      The default NAT mode shares the connection that the host is using. Bridged mode create a virtual 'bridged' adapter. So it is sharing the connection from the host but through a virtual device - this gives you the ability to do several things; one of which, is using a VPN within the virtual machine without having to use the VPN on the host.